Das passende Training Kubernetes Monitoring Training – Praxisnah & Hands-on
Prometheus reicht - bis euer Cluster wächst. Dann kippt es leise

Das passende Training Kubernetes Monitoring Training – Praxisnah & Hands-on

Prometheus reicht - bis euer Cluster wächst. Dann kippt es leise

Ganz ehrlich: Prometheus ist in fast jedem Kubernetes-Monitoring-Training das Standard-Setup, und das zu Recht. Nur erlebe ich immer wieder Teams, die überrascht sind, wenn genau dieses Standard-Setup bei wachsendem Cluster plötzlich zäh wird. Nicht kaputt - nur langsam, teuer, und irgendwann unzuverlässig.

Das Problem heißt Cardinality, nicht Auslastung

Der Grund ist selten “zu viele Metriken”. Der Grund ist Cardinality - wie viele unterschiedliche Label-Kombinationen entstehen.

In Kubernetes ist das ein eingebautes Risiko: Pod-Namen wechseln bei jedem Rollout, Namespaces vermehren sich, und wer aus Versehen etwas wie eine Request-ID als Label statt als Log-Feld einträgt, multipliziert die Zeitreihen-Anzahl explosionsartig. Ein Setup, das bei 100 Nodes stabil läuft, kann bei 300 Nodes mit exakt derselben Label-Strategie kollabieren - RAM-Verbrauch springt von einstelligen auf zweistellige GB-Werte, Queries werden zäh.

Warum das so oft übersehen wird

Weil es nicht crasht. Es wird schleichend langsamer, die Grafana-Dashboards laden zäher, Alerts kommen verzögert - und alle schieben es erstmal auf “der Cluster ist halt gewachsen, ist normal”. Ist es aber nicht. Ein einzelner Prometheus-Knoten wird als Faustregel ab grob 10 Millionen aktiven Zeitreihen unzuverlässig - und dieser Punkt kommt in wachsenden Clustern schneller, als die meisten planen.

Meine klare Ansage

Erste Reaktion bei Performance-Problemen ist fast immer “mehr RAM”. Kurzfristig hilft das. Es löst aber nichts, es verschiebt nur den Zeitpunkt, an dem ihr wieder vor demselben Problem steht.

Der eigentliche Fix ist zweigleisig: Label-Strategie bewusst gestalten (hochkardinale Werte gehören ins Log, nicht ins Label), und für Langzeit-Speicherung und Multi-Cluster-Sicht auf ein System wie Thanos setzen statt alles im lokalen Prometheus zu bunkern.

Fazit

Prometheus ist nicht das falsche Tool. Es ist das Tool, dessen Grenzen die wenigsten kennen, bevor sie dagegenlaufen - und genau deshalb gehört Cardinality für mich in jedes Monitoring-Training, nicht nur “wie installiere ich Prometheus und Grafana”.

Mein Kubernetes-Monitoring-Training behandelt genau diesen Übergang - vom Standard-Setup zum Setup, das auch bei wachsendem Cluster noch trägt, bevor ihr an dem Punkt seid, an dem es schon wehtut.