Skip to content
Back to the playbook

Triaging CrashLoopBackOff to its actual cause

Kuberneteskubectlrevision 1

Diagnostic tree

  1. In progressPod is stuck in CrashLoopBackOffThis triages a CrashLoopBackOff down to one of five common causes — OOM kill, failing liveness probe, a bad command/args override, a missing config value or secret, or an image whose entrypoint isn't a long-running process — using the pod's own Last State and Events rather than guessing from the symptom name alone.
View the whole map (7 more steps)
  • Read the Last State reason and exit code
  • Root cause: the container was OOM-killed
  • Root cause: the liveness probe is killing an otherwise-working container
  • Root cause: the container's command or args are wrong
  • Root cause: the app is crashing on a missing config value or secret
  • Root cause: the image's entrypoint isn't a long-running process
  • None of these match — treat it as an application bug

What to test

Pod is stuck in CrashLoopBackOff

This triages a CrashLoopBackOff down to one of five common causes — OOM kill, failing liveness probe, a bad command/args override, a missing config value or secret, or an image whose entrypoint isn't a long-running process — using the pod's own Last State and Events rather than guessing from the symptom name alone.

What happened?