Troubleshooting: typische Fehlerbilder und Diagnosepfade
Gute Fehleranalyse folgt Schichten: Symptom, Scope, letzter Change, Infrastrukturpfad, Plattformzustand, Anwendung, Daten und externe Abhängigkeiten.
Diagnoseprinzip
Nicht sofort am Symptom reparieren. Erst Scope klären: ein Benutzer, eine App, ein Namespace, ein Node, ein Netzwerksegment oder die gesamte Plattform?
Letzter Change
Viele Incidents folgen kurz nach Änderungen: Deployment, Zertifikat, Firewall-Regel, DNS, StorageClass, Secret, Node-Patch oder Ressourcenlimit.
Schichtenprüfung
Von außen nach innen prüfen: DNS, Load Balancer, Firewall, Route, Service, Endpoints, Pod, Logs, Datenbank, Messaging.
Nachhaltigkeit
Nach dem Incident muss ein dauerhaftes Artefakt entstehen: bessere Prüfung, Runbook, Test, Alert oder Architekturentscheidung.
Ausführliche Beispiele
Runbook Order API nicht erreichbar
# Runbook: Order API nicht erreichbar
## Symptom
- Benutzer erhalten HTTP 503 oder Timeout.
- Monitoring zeigt erhöhte Fehlerrate auf order-api.company.example.
## Sofortprüfung
1. DNS-Auflösung prüfen.
2. Load-Balancer-Health-Checks prüfen.
3. Route/Ingress Status prüfen.
4. Service Endpoints prüfen.
5. Pod Readiness und Logs prüfen.
6. Netzwerkpolicy und Firewall-Drops prüfen.
## Entscheidung
- Wenn keine Endpoints vorhanden: Deployment/Rollout prüfen.
- Wenn Endpoints vorhanden, aber LB rot: Health-Check-Pfad prüfen.
- Wenn Netzwerk-Drops sichtbar: letzte Policy-/Firewall-Änderung prüfen.
## Nachweis
- Incident-Ticket aktualisieren.
- betroffene SLO-Messung dokumentieren.
- dauerhafte Korrektur als Change oder Pull Request einbringen.
Pod startet nicht Diagnose
oc get pods -n orders-prod
oc describe pod -n orders-prod <pod>
oc get events -n orders-prod --sort-by=.lastTimestamp
oc logs -n orders-prod <pod> --previous
oc get secret,configmap -n orders-prod
oc adm top pod -n orders-prod
Fehlerbild Matrix
ImagePullBackOff -> Registry, Pull Secret, Image-Tag, Netzwerk.
CrashLoopBackOff -> App startet und stürzt ab, Logs prüfen.
Pending PVC -> StorageClass, Quota, Provisioner, Zone.
No Endpoints -> Selector falsch oder Pods nicht ready.
503 am Router -> Service/Endpoints/Readiness prüfen.
Node NotReady -> kubelet, Runtime, DiskPressure, Netzwerk.
Typische Stolperfallen
- Ohne Scope wird planlos gesucht.
- Nur Logs lesen, aber Infrastrukturpfad nicht prüfen.
- Incident endet ohne Verbesserung.
Prüf- und Verständnis-Checkliste
- Scope ist vor Reparatur geklärt.
- Letzte Änderungen wurden geprüft.
- Nach Incident entsteht ein Verbesserungsartefakt.
Merksatz
Enterprise-Regel: Eine Infrastrukturkomponente ist erst fertig, wenn sie fachlich begründet, automatisiert, beobachtet, geschützt, dokumentiert und wiederherstellbar ist.