Blog
Thoughts on engineering, design, and building great products.
The Lifecycle of a Pod: Phase, Condition and restartPolicy
Opens the deep-dive Pods section with something you read every day in kubectl get pods but rarely read closely: a pod's status. This article separates the three layers of status — the coarse phase, the detailed container state, and conditions as a checklist — then shows that phase is actually derived from container state plus restartPolicy. Four real pods illustrate Running, Succeeded, Failed and CrashLoopBackOff.
Observe and Debug: logs, exec, describe, events
When a pod won't run, you need to know where to look. This article drills the everyday debugging skillset through two real failures — ImagePullBackOff and CrashLoopBackOff: read describe/events to learn why, logs to see what the app says, exec to inspect inside, and the dashboard for the big picture.
Network Diagnostic Tools
A practical network-troubleshooting toolkit and workflow: ping, traceroute, dig, ss/netstat, nc, curl, openssl, tcpdump — each inspects one layer. And how to use them in sequence to pinpoint a 'can't connect' problem.
Disks and Capacity: df, du, lsblk, mount
\"The server is out of disk\" is a classic incident. This article teaches the troubleshooting workflow: df to see which filesystem is full, du to trace which directory is eating space, find for large files, plus lsblk and mount to understand storage devices.