A zoning-map microservice listens on its port but deadlocks and stops handling requests. Extra replicas alone do not clear the stuck processes. Which probe should restart the unhealthy containers?
Select an answer to reveal the explanation.
Short Explanation
Liveness asks "should we kill this and start fresh?" A deadlock that still holds the port needs that restart—not more replicas of the same stuck box. Do not point liveness at flaky collaborator checks, or healthy Pods restart during every upstream blip.
Full Explanation
A liveness probe is the mechanism that detects an unrecoverable stuck process and restarts the container. The zoning-map microservice still listens on its port yet deadlocks and stops handling work; readiness alone would only hide it from the Service while the deadlocked process continues to consume a replica slot. Liveness failure triggers kubelet restart so a fresh process can replace the stuck one—addressing the failure mode that extra replicas alone cannot clear. A readiness probe that only removes the Pod from the Service leaves the deadlock running. Callers avoid that Pod, but the unhealthy process remains, capacity stays wasted, and the underlying stuck state is not remediated. A startup probe that disables health checks for the entire life of the Pod is a misuse of startup. Startup temporarily defers liveness during initialization; it must succeed and then yield to normal probes. Permanent disablement masks deadlocks forever. Pointing an exec probe at an upstream billing API ties container restarts to someone else's availability. When that API blips, healthy zoning-map Pods restart even though their own process is fine—classic fragile liveness antipattern. Exam caveat: liveness should check the local process health (deadlock, wedged event loop), not flaky remote dependencies; use readiness for dependency-sensitive traffic gating. Operational check: simulate or observe a wedged process, confirm liveness fails and kubelet restarts the container, verify the new process serves maps again, and ensure the probe does not fail solely because an upstream collaborator timed out.