Die Liveness Probe (englisch für Lebendigkeitsprüfung) ist ein Konfigurationsbaustein in der PodSpec eines Kubernetes-Pod. Sie prüft regelmäßig, ob ein Container tatsächlich noch funktioniert – also ob die Anwendung nicht in einem Deadlock, einer Endlosschleife oder einem anderen hängenden Zustand steckt. Schlägt die Liveness Probe fehl, tötet der Kubelet den Container und startet ihn gemäß der restartPolicy neu.

Abgrenzung zur Readiness Probe

Während die Readiness Probe entscheidet, ob ein Pod Verkehr bekommt, entscheidet die Liveness Probe, ob der Container überhaupt weiterlaufen soll. Eine Liveness Probe wartet dabei nicht auf eine erfolgreiche Readiness Probe – die beiden Prüfungen sind unabhängig. Typisch ist ein HTTP-Aufruf auf einen Endpoint wie /healthz, alternativ ein TCP-Socket-Test oder ein Kommando im Container.

Konfiguration

livenessProbe:
  httpGet:
    path: /healthz
    port: 8080
  initialDelaySeconds: 15
  periodSeconds: 10
  failureThreshold: 3

Nach failureThreshold Fehlschlägen in Folge (Standard: 3) gilt die Probe als fehlgeschlagen. initialDelaySeconds wartet nach dem Containerstart, periodSeconds gibt den Abstand zwischen zwei Prüfungen an. Ohne Liveness Probe kann ein Container mit hängendem Prozess unbegrenzt weiterlaufen und trotzdem Anfragen annehmen.

Verwandte Grundlagen: Health Check, Startup Probe.