DefiantChris retweeted
50 Kubernetes Issues Every DevOps Engineer Should Know How to Fix
Kubernetes is powerful, but when things break, knowing what to check matters more than memorizing commands.
Here are 50 common Kubernetes issues and the first thing I’d check:
1. Pod stuck Pending → kubectl describe pod
2. ImagePullBackOff → Check image name, tag & registry credentials
3. ErrImagePull → Verify image exists and registry access
4. CrashLoopBackOff → Check container logs and startup command
5. OOMKilled → Increase memory limits or investigate memory usage
6. Container stuck Terminating → Check finalizers and node status
7. Pod stuck ContainerCreating → Check volumes, CNI & events
8. Readiness probe failing → Verify endpoint, port & application health
9. Liveness probe failing → Fix health endpoint or probe configuration
10. Startup probe failing → Give slow-starting apps more time
11. Service not reachable → Verify selectors and endpoints
12. Service has no endpoints → Check pod labels vs service selector
13. Ingress returns 404 → Check Ingress rules and backend service
14. Ingress returns 502 → Check backend service and target port
15. DNS resolution failing → Check CoreDNS pods and configuration
16. CoreDNS CrashLoopBackOff → Inspect CoreDNS logs/config
17. Pod cannot reach another pod → Check NetworkPolicies and CNI
18. Pod cannot reach the internet → Check CNI, NAT and node routing
19. NetworkPolicy blocking traffic → Review ingress/egress rules
20. PersistentVolume stuck Pending → Check StorageClass and provisioner
21. PVC stuck Pending → Check available PVs/storage provisioner
22. PVC stuck Terminating → Check finalizers and attached resources
23. Volume mount failure → Check CSI driver and permissions
24. Read-only filesystem → Check mount options and application behavior
25. Node NotReady → Inspect kubelet, CNI and node conditions
26. Node DiskPressure → Clean images, logs and unused volumes
27. Node MemoryPressure → Find memory-heavy workloads
28. Node PIDPressure → Check processes and pod density
29. Kubelet not running → Check systemd and kubelet logs
30. Pods not scheduling → Check taints, tolerations and resources
31. Insufficient CPU → Adjust requests or scale the cluster
32. Insufficient memory → Adjust requests or add capacity
33. Taints preventing scheduling → Add the correct tolerations
34. Affinity preventing scheduling → Review node/pod affinity rules
35. Deployment rollout stuck → Check ReplicaSets, events and pod status
36. Deployment unavailable → Check replicas, probes and scheduling
37. Rolling update too slow → Review strategy and readiness probes
38. Old pods not terminating → Check PDBs, finalizers and termination hooks
39. HPA not scaling → Check metrics-server and resource requests
40. Metrics unavailable → Verify metrics-server installation/config
41. Secret not available → Check secret name, namespace and RBAC
42. ConfigMap changes not reflected → Understand mounting/env injection behavior
43. RBAC Forbidden errors → Check Role/ClusterRole and bindings
44. ServiceAccount authentication failing → Verify token/RBAC configuration
45. Webhook failures → Check webhook service, TLS and endpoints
46. API server unavailable → Check control-plane health
47. etcd issues → Check etcd health, disk and resource usage
48. Cluster certificate problems → Check certificate expiry and configuration
49. Unexpected pod evictions → Investigate node pressure and QoS
50. Random application failures → Start with events, logs, metrics and dependencies
The most important Kubernetes troubleshooting commands to master:
- kubectl get
- kubectl describe
- kubectl logs
- kubectl exec
- kubectl events
- kubectl top
- kubectl rollout
- kubectl get endpoints
Don’t just learn Kubernetes commands, learn how Kubernetes works.
When you understand scheduling, networking, DNS, storage, probes, controllers, RBAC and the control plane, troubleshooting becomes significantly easier.
Save this. You’ll need it when Kubernetes decides to ruin your day.
DefiantChris retweeted
A Z80 processor from 1976 computing 7*27. Slowed down 800000 times.
Credit to the Visual6502 project for the circuit data.
#retrocomputing #computerhistory #reverseengineering #creativecoding




