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)를 생성하고, 이메일, 슬랙 등으로 전송함
기타 도구들
데이터 변환, 백업, 통합 등 다양한 지원 도구들 포함

 

 

 

출처