kube-prometheus
Observability-as-Code
Gotowy stos monitoringu Kubernetes jako kod (Jsonnet) - Prometheus, Grafana, Alertmanager, reguły i eksportery w jednym.
kube-prometheus to złożony, produkcyjny stos monitoringu dla Kubernetes dostarczony jako kod: Prometheus (przez Prometheus Operator), Grafana, Alertmanager, node-exporter i kube-state-metrics - wraz z gotowymi regułami alertowymi i dashboardami. Kluczowe dla EIAC: całość jest opisana w Jsonnet (z jsonnet-bundler), więc cały stos obserwowalności - od reguł po dashboardy - jest wersjonowany, komponowalny i odtwarzalny, zamiast klikany w UI. Zamiast składać monitoring K8s ręcznie, dostajesz spójny, sprawdzony zestaw, który dostosowujesz kodem.
Kiedy używać
- Stawiasz monitoring dla klastra Kubernetes i chcesz kompletny, produkcyjny stos „z pudełka”.
- Zależy Ci na całości jako kod (Jsonnet): reguły, alerty i dashboardy w repo, wdrażane przez GitOps.
- Wolisz sprawdzony zestaw (operator + eksportery + reguły) niż samodzielne sklejanie komponentów.
Przykład użycia
// example.jsonnet - stos jako kod, dostrajany parametrami
local kp = (import 'kube-prometheus/main.libsonnet') + {
values+:: { common+: { namespace: 'monitoring' } },
};
{ ['00namespace-' + name]: kp.kubePrometheus[name] for name in std.objectFields(kp.kubePrometheus) }
Warto wiedzieć
- Pod spodem to Prometheus + Grafana; jeśli chcesz dashboardy jako osobny standard, zob. Perses, a SLO jako kod - Sloth.
- Metryki z tego stosu dają mierzalne szybkości procesu (λ/μ) z artykułu o łańcuchach Markowa.
- Apache-2.0, w pełni self-hostowalny - spójny z zasadą suwerenności.