Přeskočit na obsah
_CORE
AI & Agentic Systems Core Informační Systémy Cloud & Platform Engineering Data Platforma & Integrace Security & Compliance QA, Testing & Observability IoT, Automatizace & Robotika Mobile & Digital Banky & Finance Pojišťovnictví Veřejná správa Obrana & Bezpečnost Zdravotnictví Energetika & Utility Telco & Média Průmysl & Výroba Logistika & E-commerce Retail & Loyalty
Reference Technologie Blog Knowledge Base O nás Spolupráce Kariéra
Pojďme to probrat

Prometheus: monitoring pro cloud-native svět

03. 12. 2015 1 min čtení CORE SYSTEMSdevops

Prometheus, monitoring systém vyvinutý v SoundCloudu, přináší pull-based model, flexibilní dotazovací jazyk PromQL a nativní podporu pro dynamické prostředí.

Monitoring pro éru kontejnerů

Tradiční monitoring nástroje (Nagios, Zabbix) předpokládají statickou infrastrukturu — ručně konfigurované hosty s trvalými IP adresami. V kontejnerovém prostředí, kde se instance vytvářejí a ruší dynamicky, tento model nefunguje.

Prometheus byl vyvinutý v SoundCloudu specificky pro dynamické, cloud-native prostředí. Inspirovaný interním Google systémem Borgmon, přináší principy monitoringu na úroveň velkých technologických firem.

Pull model a service discovery

Prometheus aktivně stahuje (scrape) metriky z HTTP endpointů služeb — opak push modelu (StatsD, Graphite).

Výhody pull modelu:

  • Jednodušší — služba jen vystaví /metrics endpoint
  • Detekce výpadků — pokud scrape selže, služba je down
  • Service discovery integrace — Consul, Kubernetes, DNS
# Prometheus konfigurace
scrape_configs:
  - job_name: 'web-app'
    kubernetes_sd_configs:
      - role: pod
    relabel_configs:
      - source_labels: [__meta_kubernetes_pod_label_app]
        regex: web
        action: keep

PromQL — dotazovací jazyk

PromQL je silná stránka Promethea — flexibilní dotazovací jazyk pro metriky:

# Request rate per second za posledních 5 minut
rate(http_requests_total[5m])

# 99. percentil latence
histogram_quantile(0.99, rate(http_request_duration_seconds_bucket[5m]))

# Error rate
rate(http_requests_total{status=~"5.."}[5m]) / rate(http_requests_total[5m])

PromQL umožňuje ad-hoc analýzu, tvorbu dashboardů i definici alertovacích pravidel.

Alerting a Grafana integrace

Prometheus Alertmanager spravuje alerty — deduplikace, grouping, silencing a routing do notifikačních kanálů (email, Slack, PagerDuty).

Pro vizualizaci se Prometheus perfektně doplňuje s Grafanou — nejpopulárnějším open-source dashboarding nástrojem. Kombinace Prometheus + Grafana + Alertmanager tvoří kompletní monitoring stack.

Doporučené metriky k monitoringu: RED (Rate, Errors, Duration) pro služby, USE (Utilization, Saturation, Errors) pro infrastrukturu.

Závěr: standard pro cloud-native monitoring

Prometheus se rychle stává standardem pro monitoring v cloud-native prostředí. Druhý projekt přijatý do CNCF po Kubernetes — to není náhoda. Pro každý nový projekt s kontejnery doporučujeme Prometheus jako primární monitoring řešení.

prometheusmonitoringmetrikyalertingcloud-nativeobservability