Čo je Prometheus?
Prometheus je open-source monitorovací systém a databáza časových radov (time-series database), ktorý vyvinula spoločnosť SoundCloud v roku 2012. Je druhým graduovaným projektom CNCF po Kubernetes.
Definícia Prometheus
Čo je Prometheus
Prometheus je open-source monitorovací a alertovací systém, ktorý vyvinuli inžinieri v SoundCloud v roku 2012. Inšpiroval sa interným monitorovacím systémom Google Borgmon. V roku 2016 sa Prometheus stal druhým projektom prijatým do CNCF (po Kubernetes) a v 2018 bol graduovaný.
Architektúra a funkcie
Prometheus je napísaný v Go a používa model pull-based scrapingu — aktívne sťahuje metriky z aplikácií cez HTTP:
- Time-series database — vlastná databáza optimalizovaná na ukladanie metrík s časovou pečiatkou
- PromQL — výkonný dotazovací jazyk na analýzu metrík
- Exportéry — pluginy pre zber metrík z rôznych systémov (Node Exporter, MySQL Exporter a desiatky ďalších)
- Alertmanager — správa alertov s deduplikáciou, zoskupovaním a smerovaním notifikácií
- Service discovery — automatické objavovanie cieľov v Kubernetes, AWS, Azure a ďalších platformách
Prometheus sa stal de facto štandardom pre monitoring v cloudovo natívnych prostrediach. Formát metrík Prometheus (OpenMetrics) je priemyselným štandardom, ktorý podporujú tisíce aplikácií a služieb.
Praktický príklad
Príklad: Prevádzkujete Kubernetes klaster s 50 podmi a chcete monitorovať výkon.
Prometheus automaticky objaví všetky pody cez Kubernetes service discovery a každých 15 sekúnd stiahne metriky (CPU, pamäť, počet požiadaviek, error rate).
Nastavíte alert: ak error_rate > 5% za posledných 5 minút → pošli notifikáciu do Slacku. V kombinácii s Grafanou máte real-time dashboardy s históriou za posledných 30 dní.
Často kladené otázky
Čo je Prometheus?
Prometheus je open-source monitorovací systém a databáza časových radov. Zbiera metriky z aplikácií a infraštruktúry, umožňuje na ne dotazovanie cez PromQL a posiela alerty pri problémoch.
Ako Prometheus zbiera metriky?
Prometheus používa pull model — aktívne sťahuje (scrapuje) metriky z HTTP endpointov aplikácií v pravidelných intervaloch. Aplikácia musí exponovať metriky vo formáte Prometheus.
Čo je PromQL?
PromQL (Prometheus Query Language) je dotazovací jazyk na analýzu metrík. Umožňuje filtrovanie, agregáciu a matematické operácie — napríklad výpočet percentilu response time za posledných 5 minút.
Je Prometheus vhodný pre malé projekty?
Prometheus sa oplatí od stredne veľkých projektov s viacerými službami. Pre jednoduchý web stačí monitoring od hostingového poskytovateľa. Pre Kubernetes prostredia je Prometheus štandardná voľba.
Súvisiace pojmy
Potrebujete pomôcť s webom?
Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.