Prometheus 아키텍처

Prometheus 아키텍처 An architecture diagram generated by Archify. Jobs / Exporters · /metrics 엔드포인트 · 스크랩 대상 Jobs / Exporters /metrics 엔드포인트 Short-lived Jobs · batch / cron · 스크랩 대상 Short-lived Jobs batch / cron Pushgateway · 푸시 메트릭 중계 · 스크랩 대상 Pushgateway 푸시 메트릭 중계 서비스 디스커버리 · K8s · DNS · File · Consul · Architecture component 서비스 디스커버리 K8s · DNS · File · Consul Retrieval · 메트릭 수집 (pull) · Prometheus Server Retrieval 메트릭 수집 (pull) TSDB · 시계열 DB · Prometheus Server TSDB 시계열 DB HTTP Server · 쿼리 API (PromQL) · Prometheus Server HTTP Server 쿼리 API (PromQL) Alert Rules · 알림 규칙 평가 · Prometheus Server Alert Rules 알림 규칙 평가 시각화 / API · Grafana · API · UI · Architecture component 시각화 / API Grafana · API · UI Alertmanager · 그룹핑 · 라우팅 · Architecture component Alertmanager 그룹핑 · 라우팅 알림 채널 · Email · Slack · PagerDuty · Architecture component 알림 채널 Email · Slack · PagerDuty 대상 발견 scrape push scrape 저장 읽기 규칙 평가 PromQL alerts 라우팅 Prometheus Server 스크랩 대상

수집

  • • 서비스 디스커버리(Kubernetes API, DNS, 파일 등)로 스크랩 대상을 발견한다
  • • HTTP로 대상의 /metrics 엔드포인트에서 메트릭을 스크랩한다 (pull)
  • • Short-lived Job은 Pushgateway에 push하고, Retrieval이 Pushgateway를 스크랩한다

저장과 쿼리

  • • 수집한 메트릭을 로컬 TSDB에 저장한다
  • • HTTP API로 PromQL 쿼리를 처리해 Grafana, API 클라이언트, Prometheus UI에 제공한다

알림

  • • 저장된 데이터에 대해 알림 규칙과 기록 규칙을 평가한다
  • • 발화된 알림을 Alertmanager로 전송하고, Email · Slack · PagerDuty로 라우팅한다