The comprehensive, production-grade Kubernetes troubleshooting knowledge base.
300+ real production errors. Diagnostic flows. Recovery procedures. Read-only diagnostic scripts. Offline search. Written by production SREs, for production SREs.
It's 3 a.m. A pod is in CrashLoopBackOff, an alert is firing, and you need the
root cause now β not a blog post that stops at "check your logs." This
repository is the reference you keep open during the incident: every page is a
real production failure with the diagnostic flow, the exact kubectl commands,
the expected output, the fix, the recovery procedure, and how to stop it
happening again.
β If this saves you during an incident, star the repo β it helps other on-call engineers find it.
Most Kubernetes troubleshooting content is scattered, shallow, or unsafe (it
tells you to kubectl delete things on a production cluster). This project is:
- Comprehensive β 300+ errors across 26 subsystems, from
CrashLoopBackOffto etcd quorum loss and admission-webhook failures. - Production-safe β diagnostic commands are read-only. Destructive steps are clearly marked with their blast radius.
- Structured & searchable β every page has consistent frontmatter, so you can search the whole library offline with one command.
- Incident-ready β each page follows the same battle-tested structure, so you always know where to look.
git clone https://github.com/devopsaitoolkit/kubernetes-troubleshooting.git
cd kubernetes-troubleshooting
# Search the error library (no dependencies β just Python 3.8+)
python tools/search.py CrashLoopBackOff
python tools/search.py "context deadline exceeded"
python tools/search.py --category networking --severity Critical
python tools/search.py --tag dnsOr just browse docs/errors/ on GitHub.
| Area | What you get |
|---|---|
| π Error library | 300+ pages, one per production error, organized by subsystem |
| π Playbooks | End-to-end incident runbooks (pods won't start, control plane down, storage failures, β¦) |
| β¨οΈ kubectl reference | When to use each command, expected output, common mistakes |
| πΊοΈ Cheatsheets | One-page quick references |
| π Diagrams | Mermaid architecture, decision trees & incident flowcharts |
| π Search tool | Offline search + JSON index (powers future API/CLI/MCP) |
| π§ Diagnostic scripts | Read-only cluster snapshot collectors |
Every error page follows the same structure so you can scan it under pressure:
Title β Error Message β Description β Affected Versions β
Likely Root Causes β Diagnostic Flow (Mermaid) β Verification Steps β
kubectl Commands β Expected Output β Common Fixes β
Recovery Procedures β Validation β Prevention β Related Errors β
References β Tags / Severity / Recovery Time.
docs/errors/
βββ pods/ βββ rbac/
βββ deployments/ βββ security/
βββ daemonsets/ βββ helm/
βββ statefulsets/ βββ cert-manager/
βββ jobs/ βββ monitoring/
βββ cronjobs/ βββ autoscaling/
βββ nodes/ βββ api-server/
βββ networking/ βββ etcd/
βββ ingress/ βββ scheduler/
βββ services/ βββ controller-manager/
βββ storage/ βββ admission/
βββ persistent-volumes/ βββ kubelet/
βββ persistent-volume-claims/ βββ container-runtime/
Popular pages: CrashLoopBackOff Β· ImagePullBackOff Β· OOMKilled Β· FailedScheduling Β· NodeNotReady Β· Pending pods
The scripts in scripts/ collect a snapshot of cluster state for
an incident. They only read β they never create, patch, delete, drain,
cordon, scale, or apply anything.
./scripts/collect-cluster-diagnostics.sh # broad cluster snapshot
./scripts/gather-pod-logs.sh -n my-app # logs + describe (incl. --previous)
./scripts/namespace-diagnostics.sh -n my-app # everything in one namespace
./scripts/storage-diagnostics.sh # PV/PVC/CSI snapshotSenior DevOps & Platform Engineers Β· Site Reliability Engineers Β· Cloud Engineers Β· Kubernetes & OpenShift Administrators Β· Production on-call engineers Β· CKA / CKAD candidates.
This project gets better with every engineer's hard-won experience. Adding an error page or sharing a war story takes 20 minutes and helps thousands of on-call engineers.
- π Read the Contributing Guide
- β Request a new error page
- π¬ Share a war story
- π§ See the Roadmap β REST API, CLI, MCP server, VS Code extension
All participants follow our Code of Conduct.
- Documentation (everything under
docs/, plus cheatsheets and diagrams): Creative Commons Attribution 4.0 (CC BY 4.0) β use it anywhere, just credit the project. - Code (
tools/,scripts/): MIT License.
This repository is designed to stand entirely on its own. If you want to go deeper on AI-assisted Kubernetes operations, these free resources from the maintainers help you continue learning:
- π DevOps & Kubernetes guides
- π§ͺ Free Kubernetes config validators (YAML, manifests, Helm)
- π€ AI Incident Response Assistant
- π‘ Kubernetes prompt library
- βοΈ Weekly DevOps newsletter
Built by on-call engineers who got tired of losing the same battles twice. If it helps you, give it a β.