CKAD Application Observability and Maintenance Practice Question
A pod in the 'production' namespace is in a CrashLoopBackOff state. The pod has been running successfully for several days. You run 'kubectl describe pod app-pod -n production' and see the message: 'OOMKilled'. What is the MOST appropriate action to resolve this issue?
⚠ Common exam trap
It's easy for candidates to confuse OOMKilled with a general crash and choose to delete/recreate the pod, not realizing the OOMKilled status specifically indicates a memory limit violation that requires adjusting resource limits.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Increase the memory limit in the pod's container resource specification
The pod is in CrashLoopBackOff due to OOMKilled, meaning the container exceeded its memory limit and was terminated by the Linux kernel's Out-Of-Memory (OOM) killer. Increasing the memory limit in the pod's container resource specification allows the container to use more memory without being killed, directly resolving the OOM condition.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Increase the memory limit in the pod's container resource specification
Why this is correct
OOMKilled is the error Kubernetes records when the kernel's out-of-memory killer terminates a process because the container exceeded its `spec.containers[].resources.limits.memory` cgroup allotment. Raising that memory limit gives the container more headroom before the cgroup's OOM killer triggers, directly addressing the crash loop. Keep the limit below the node's allocatable memory and adjust the request proportionally so scheduling remains valid.
- ✗
Increase the CPU request for the container
Why it's wrong here
OOMKilled is purely a memory exhaustion condition; the Linux OOM killer operates on memory pages, not CPU time or CPU throttling. Increasing the CPU request only alters the container's scheduling weight and guaranteed CPU share, which does nothing to expand the memory cgroup or prevent the kernel from reclaiming the container's pages. In fact, if the container is memory-bound, a larger CPU share can let it allocate memory faster, potentially making OOM events more frequent rather than fixing them.
- ✗
Delete and recreate the pod to clear the crash loop
Why it's wrong here
This action treats the symptom rather than the cause: a pod in CrashLoopBackOff will be recreated by its ReplicaSet or Deployment with the exact same resource `limits.memory`, so the new container will hit the identical OOMKilled threshold and crash again. Even a manual `kubectl delete pod` followed by `kubectl apply` of the same manifest reproduces the loop because no specification change was made. Only adjusting the memory limit (or fixing the application's memory leak) breaks the cycle.
- ✗
Delete the namespace and redeploy all workloads
Why it's wrong here
Deleting the entire `production` namespace is a massive blast-radius action that removes every Service, Deployment, ConfigMap, Secret, and PVC in that environment, not just the problematic pod. Even after recreating all workloads, the pod's YAML still contains the original memory limit, so the container will be OOMKilled identically. Pod-level issues should be remediated with targeted edits such as `kubectl edit` or `kubectl patch` on the specific resource, never by destroying shared infrastructure.
Visual reference
Go deeper
Related to this question
About these practice questions
One of 160 original CKAD practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This CKAD practice question is part of Courseiva's free CNCF certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CKAD exam.