Core objects
Probes
16 / 82

Liveness restarts, readiness gates traffic, startup protects slow boots.

Three probes answer three different questions. Mixing them up is one of the most common causes of self-inflicted outages.

Liveness

Is it broken beyond repair?

Fails: the kubelet kills and restarts the container. Use for deadlocks, never for "busy".

Readiness

Can it take traffic now?

Fails: the Pod is removed from Service endpoints. The container keeps running and can recover.

Startup

Has it finished booting?

Holds liveness and readiness back until it passes, so a slow JVM is not killed during start.

Pod timeline under loadstartingReady: gets trafficoverloadedrecoveredReadiness probeout of endpointsLiveness probekeeps passing: no restart, the Pod recovers on its own
probes
startupProbe:
  httpGet: {path: /healthz, port: 8080}
  failureThreshold: 30  periodSeconds: 10
livenessProbe:
  httpGet: {path: /healthz, port: 8080}
  failureThreshold: 3
readinessProbe:
  httpGet: {path: /ready, port: 8080}
  periodSeconds: 5