Wenn deine Anwendungen in Kubernetes produktiv laufen, ist Monitoring unverzichtbar. Nur mit den richtigen Metriken kannst du frühzeitig auf Fehler reagieren, Engpässe erkennen und Systeme optimieren.
In diesem Artikel zeige ich dir, wie du mit Prometheus und Grafana ein leistungsfähiges Monitoring-Setup in Kubernetes aufbaust – Schritt für Schritt, auch für Einsteiger verständlich.
🔍 Warum Monitoring in Kubernetes so wichtig ist
Kubernetes ist dynamisch: Pods starten und beenden sich ständig, Ressourcen werden automatisch skaliert, Services ändern ihre IPs.
Ohne ein geeignetes Monitoring kannst du:
- Fehlerquellen nicht erkennen
- keine Performance-Engpässe analysieren
- keine automatisierten Alerts einrichten
- keine historischen Trends bewerten
➡️ Prometheus + Grafana ist der Open-Source-Standard für Kubernetes Monitoring.
📦 Was ist Prometheus?
Prometheus ist ein Time-Series-Datenbanksystem, das:
- Metriken sammelt (via Pull)
- Services in Kubernetes automatisch erkennt (Service Discovery)
- Daten speichert & aggregiert
- Alarme über Alertmanager versendet
➡️ Prometheus wird über einen Operator in Kubernetes integriert.
📊 Was ist Grafana?
Grafana ist ein Dashboarding-Tool, das:
- Prometheus-Daten visuell aufbereitet
- Dashboards mit Panels, Filtern und Zeitachsen bietet
- Benachrichtigungen (E-Mail, Slack, Telegram) auslösen kann
- Zugriffsrechte verwaltet (RBAC)
➡️ Grafana ist der perfekte Partner für Prometheus.
🚀 So installierst du Prometheus & Grafana in Kubernetes
🔧 Voraussetzungen
- Laufender Kubernetes-Cluster (z. B. via K3s, minikube, AKS, GKE, EKS)
- Helm installiert
1. Prometheus & Grafana installieren via Helm
bashKopierenBearbeitenhelm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
2. Prometheus stack deployen
bashKopierenBearbeitenhelm install k8s-monitor prometheus-community/kube-prometheus-stack
➡️ Dieser Stack beinhaltet:
- Prometheus
- Grafana
- Node Exporter
- Alertmanager
- Kube-State-Metrics
🔑 Zugriff auf Grafana
- Finde den Grafana-Pod:
bashKopierenBearbeitenkubectl get pods -n default
- Starte Port-Forwarding:
bashKopierenBearbeitenkubectl port-forward svc/k8s-monitor-grafana 3000:80
- Öffne im Browser:
arduinoKopierenBearbeitenhttp://localhost:3000
Default-Login:
- User:
admin - Passwort: steht in:
bashKopierenBearbeitenkubectl get secret k8s-monitor-grafana -o jsonpath="{.data.admin-password}" | base64 -d
📈 Dashboards hinzufügen
Grafana bietet fertige Dashboards für Kubernetes:
- Node Exporter Full (ID:
1860) - Kubernetes Cluster Monitoring (ID:
315) - Kube-Prometheus Overview (ID:
15757)
So importierst du eins:
- Klicke in Grafana auf „+ Dashboard“ > „Import“
- Trage die ID ein
- Wähle Prometheus als Datenquelle
🔔 Alerts mit Prometheus + Grafana
- Nutze PromQL, um Bedingungen wie CPU-Auslastung zu überwachen:
promqlKopierenBearbeiten100 - (avg by(instance)(irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)
- Erstelle Regeln in
alerting.rules.yaml - Konfiguriere den Alertmanager für E-Mail, Slack & Co.
Grafana 9+ unterstützt auch Unified Alerting direkt aus Panels.
🔐 Sicherheit & RBAC
- Richte Read-Only-Zugänge für Dashboards ein
- Schütze Prometheus & Grafana via Ingress, HTTPS & OAuth
- Nutze Network Policies und Secrets für Authentifizierung
🧠 Fazit
Prometheus + Grafana ist die perfekte Lösung, um deinen Kubernetes-Cluster transparenter, stabiler und sicherer zu machen. Von Echtzeitmetriken über Alerts bis zu Langzeittrends – alles ist möglich, Open Source und cloud-kompatibel.
Schreibe einen Kommentar