DevOps
[Prometheus] 1. Introduction
noahkim_
2025. 5. 31. 21:51
1. Overview
Prometheus란?
- 오픈소스 (CNCF 공식 프로젝트)
- 시스템 모니터링 & 알림 툴킷
- 애플리케이션을 time series로 수집하고 저장함
주요 기능
기능 | 설명 |
다차원 데이터 모델 |
Label로 시계열 데이터 구분 (metrics + key-value)
|
PromQL | 강력하고 유연한 쿼리 언어 (시계열 데이터 분석용) |
자율 동작 |
단일 서버만으로 동작 (분산 스토리지 불필요)
|
Pull 기반 수집 |
HTTP로 타겟에 접근해 메트릭을 수집 (스크래핑)
|
Push 지원 |
짧은 작업(job)의 메트릭도 수집 가능 (Push Gateway 활용)
|
서비스 디스커버리/정적 설정 |
자동화 or 수동 설정 지원
|
시각화 도구 연동 가능 |
Grafana 등과 연동하여 대시보드 생성 및 시각화 지원
|
Metrics란?
- 숫자 기반 지표
- 숫자 데이터를 시간별로 기록해서 성능 분석에 활용함
- ex) 웹서버: 요청 수, 응답 시간 등
- ex) db: 연결 수, 쿼리 수 등
아키텍처

구성 요소 | 역할 설명 |
Prometheus 서버 |
메트릭을 스크래핑(Pull)하여 시계열 데이터를 저장함
|
클라이언트 라이브러리 |
애플리케이션에 직접 코드로 메트릭 삽입 (예: Counter, Gauge 등)
|
Exporter | 외부 시스템의 메트릭 수집기 (HAProxy, Redis, Node 등) |
Push Gateway |
짧게 실행되는 작업(Job)이 메트릭을 Prometheus에 푸시할 수 있도록 중간 수단 제공
|
Alertmanager |
알림 규칙 기반으로 경보(Alert)를 생성하고, 이메일, 슬랙 등으로 전송함
|
기타 도구들 |
데이터 변환, 백업, 통합 등 다양한 지원 도구들 포함
|
출처