Learn
What happens if…
Knowing what a component is gets you surprisingly far and then stops. The questions that actually come up during an incident are sequential: what happened first, what is happening now, what is about to happen, and which part of this system is responsible for it.
So these are written as timelines rather than explanations, and every step names its actor. That last part is the point — most confusion about distributed systems comes from misattribution. People blame Kubernetes for something the kernel did, or their application for something the network did. Reading down the actor column teaches the division of responsibility, which outlasts any individual detail.
Timings are documented defaults and are labelled as such. A cluster that changed them will behave differently, and knowing which numbers are configurable is part of knowing the system.
- Kubernetes · 7 steps
What happens if a Pod is deleted while it is serving traffic?
Two things start at once and neither waits for the other: the pod begins shutting down, and its address begins being removed from Services. Requests that arrive in the gap between those get sent to a container that is already stopping.
- Kubernetes · 7 steps
What happens if a container exceeds its memory limit?
The kernel kills it immediately. There is no warning, no signal your application can catch, and no opportunity to shut down cleanly — memory is not something that can be throttled.
- Kubernetes · 8 steps
What happens if a Kubernetes node suddenly disappears?
Much more slowly than people expect. The control plane cannot distinguish a dead node from an unreachable one, so it waits — and by default your pods keep receiving traffic for most of that wait.
- Kubernetes · 7 steps
What happens if DNS stops resolving inside the cluster?
Almost everything breaks, in a way that looks like several unrelated failures at once — because service discovery is a dependency of nearly every call, and DNS caching means it breaks unevenly.
- Kubernetes · 5 steps
What happens if a deployment reports success but users still see errors?
It means every check that ran was satisfied — and none of them checked the thing that is broken. A successful rollout proves that pods started and passed their probes, which is a much weaker claim than "the application works".