Clinic appointment Pods report Running but callers still see intermittent 502s during boot while dependencies warm up. Which probe should gate Service membership?
Select an answer to reveal the explanation.
Short Explanation
Running is "the process exists"; readiness is "you may send patients here." Keep a Pod out of Service endpoints until dependency checks pass so boot-time 502s never reach callers. That gate is the readiness probe.
Full Explanation
A readiness probe is the correct gate for Service membership while clinic appointment Pods warm dependencies. Until the probe succeeds—application accepting connections and dependency checks passing—the Pod should stay out of Service endpoints even if the container process is already Running. That prevents boot-time 502s from reaching callers who hit endpoints that are not actually ready to serve appointments. A liveness probe that kills the container on every dependency timeout confuses restart policy with traffic gating. Transient dependency lag during boot should not necessarily restart the process; aggressive liveness against collaborators causes restart storms instead of patiently excluding the Pod from the Service. A startup probe that never finishes leaves the Pod permanently unready and can suppress other probes indefinitely. Startup is meant to cover slow initialization windows, not to replace a properly succeeding readiness gate forever. Assuming Running always means the Service must include the Pod is false. Running only indicates the container process state; endpoint membership is controlled by readiness (and related conditions). No probe means Kubernetes may treat the Pod as ready too early and send traffic into warm-up failures. Exam caveat: readiness failures remove endpoints but do not restart the container—if the process is deadlocked rather than merely warming up, you still need liveness or another remediation. Operational check: watch Pod Ready conditions and Service endpoints during boot; confirm appointment Pods appear in endpoints only after readiness succeeds, and that callers stop seeing intermittent 502s while dependencies initialize.