CKAD Application Design and Build 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 and recreate the pod (Option A), not realizing that the resource limit itself must be adjusted to prevent recurrence.
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, which means the container's memory usage exceeded its configured memory limit. The most appropriate action is to increase the memory limit in the pod's container resource specification, allowing the container to allocate more memory without being terminated by the Out-of-Memory (OOM) killer.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Delete and recreate the pod to clear the crash loop
Why it's wrong here
Simply deleting and recreating the pod will not resolve the crash loop because the pod is managed by a higher-level controller that will recreate it with the exact same resource specification. Since the container was killed due to OOMKilled—meaning it exceeded its configured memory limit—a fresh pod without any changes to that limit will hit the same memory ceiling and be killed again. Manual deletion is both unnecessary and ineffective; the fix must address the resource limit itself.
- ✗
Delete the namespace and redeploy all workloads
Why it's wrong here
Deleting the entire namespace is an excessively destructive action that removes all workloads, ConfigMaps, Secrets, and persistent volume claims within it, causing a complete outage for every application running there. This approach is wildly out of proportion to a single pod's memory limit issue, and after redeployment you would still be working from the same manifests that caused the OOMKilled event. The correct action is a targeted change to the offending pod's resource limits, not a namespace-wide disruption.
- ✓
Increase the memory limit in the pod's container resource specification
Why this is correct
OOMKilled is the kubelet's signal that the container's memory usage exceeded its specified limit, prompting the kernel OOM killer to terminate the process. Raising the memory limit in the container's resource specification permits the container to consume more memory before that threshold is reached, directly addressing the root cause and allowing the pod to remain running. This is the expected fix when the application's nominal memory footprint is larger than the old limit but still fits within node capacity.
- ✗
Increase the CPU request for the container
Why it's wrong here
Boosting the CPU request or limit does not affect the memory cgroup that enforces the container's memory ceiling; OOMKilled is solely a memory pressure event. While CPU requests influence scheduling and CPU bandwidth, they have no bearing on the kernel's OOM killer, which triggers only when memory usage exceeds the limit. Changing CPU resources will leave the memory limit unchanged and the container will continue to be OOM-killed at precisely the same memory usage threshold.
Visual reference
Go deeper
Related to this question
About these practice questions
This CKAD question is part of Courseiva's 160-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. 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.