The mechanism
A Pod is a scheduling and lifecycle unit containing one or more containers that share selected resources such as networking and volumes. Containers in a Pod have their own states; the Pod has a broader phase and conditions. Do not treat every status string printed by a client as the Pod phase.
A container can restart inside the same Pod, while a controller can replace a failed Pod with a new Pod identity. Those paths have different implications for in-memory state, temporary storage and diagnostics. Record the Pod UID and container restart count when comparing observations.
Readiness expresses whether a workload should receive normal Service traffic. It is different from merely having a running process. A process can be alive while unable to answer requests correctly.
Worked example
This synthetic observation table distinguishes two incidents. The values are invented for learning and are not cluster output. A name alone may obscure replacement; the UID makes the object identity explicit.
Observation A: Pod UID pod-a, container restarts 0, Ready false
Observation B: Pod UID pod-a, container restarts 1, Ready false
Observation C: Pod UID pod-b, container restarts 0, Ready true
A -> B: container restart inside the same Pod
B -> C: replacement Pod with a different identity
Practice: predict, inspect, explain
Offline exercise. Explain what data might survive each transition if stored in process memory, container writable storage, an emptyDir volume or an external persistent volume. Do not assume every storage type has the same lifetime. Then distinguish Pending, Running and a displayed CrashLoopBackOff condition.
Expected observation: a restart is not equivalent to a replacement. The recovery plan depends on the actual storage boundary. A Running Pod may still be unready, and a waiting container can explain a user-visible failure without changing the high-level mental model.
Troubleshooting and trade-offs
If a container repeatedly crashes, inspect its previous logs and termination reason in an approved lab before changing resource limits. If a Pod is Pending, check scheduling and image/startup details rather than assuming the process ran. Avoid deleting a Pod as the first diagnostic step; it can remove useful evidence and does not fix a bad desired configuration.
Interview practice
Is CrashLoopBackOff a Pod phase?
It is commonly displayed for a container restart backoff condition, not one of the Pod’s high-level phases. Inspect container state and termination details.
Why track the Pod UID?
Names and selectors describe how you find objects; UID distinguishes object identity across replacement and helps interpret lifecycle and evidence correctly.
Completion check
Explain which state survives a container restart versus a Pod replacement, with explicit storage assumptions.
Sources and version notes
Baseline checked 6 October 2026: the official release page lists Kubernetes 1.37.1. Verify your cluster and distribution prerequisites. All manifests are offline teaching examples; no cluster mutations or cloud resources are executed by this handbook.
- Official documentation: Pod lifecycle
- Official documentation: Liveness readiness startup probes
- Official documentation: Persistent volumes
Make the understanding yours.
Use the completion check above. Mark this chapter when you can explain the mechanism and its limits.
Self-assessed reading progress. This does not certify that a lab ran or a system is secure.