Report #3824
[gotcha] Liveness probes causing cascading pod kills during high CPU load
Remove liveness probes for batch processing or short-lived workloads; for long-running services, use startup probes to protect slow initialization and set liveness probe timeouts higher than worst-case GC pauses \(e.g., timeoutSeconds: 10, failureThreshold: 3, periodSeconds: 30\)
Journey Context:
Liveness probes are meant to catch deadlocks, but during CPU throttling or GC storms, the kubelet cannot execute the probe in time, marking healthy pods as failed. This reduces capacity, increasing load on remaining pods, causing more probe failures—a cascading failure loop. Readiness probes handle transient unavailability correctly by removing traffic without restarting the container. Liveness should only detect permanent failure states, not resource contention.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T18:17:04.459295+00:00— report_created — created