CKAD Practice Question: Application Environment, Configuration and Security
A pod is scheduled but stays in Pending state. 'kubectl describe pod' shows: '0/1 nodes are available: 1 Insufficient memory'. What is the most likely cause?
⚠ Common exam trap
Many exam-takers confuse memory requests with memory limits, assuming a low limit causes scheduling failure, when in fact the scheduler only evaluates requests, and limits only affect runtime OOM behavior.
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
✓
The pod's memory request exceeds the available memory on any node.
The '0/1 nodes are available: 1 Insufficient memory' message indicates that the Kubernetes scheduler could not find a node with enough allocatable memory to satisfy the pod's memory request. The pod's memory request (spec.containers[].resources.requests.memory) must be less than or equal to a node's allocatable memory for the pod to be scheduled. Since no node meets this requirement, the pod remains in Pending state.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
The pod's memory request exceeds the available memory on any node.
Why this is correct
The Kubernetes scheduler selects a node for a pod based on the pod's resource requests, comparing them to each node's allocatable capacity minus the requests of existing workloads. If every node lacks the unallocated memory needed to satisfy this pod's memory request, the pod remains Pending with scheduler events such as 'Insufficient memory'. This is a scheduling failure, not a runtime issue, and it persists until the request is lowered, nodes are added, or other workloads are removed to free capacity.
- ✗
The pod has a liveness probe configured incorrectly.
Why it's wrong here
Liveness probes are runtime health checks executed by the kubelet after a container is started; they cause restarts when they fail but they are never consulted by the scheduler. A misconfigured liveness probe may lead to CrashLoopBackOff or restarts once the pod runs, but it cannot prevent the pod from being placed onto a node. Therefore, an incorrect liveness probe is irrelevant to a Pending state, which occurs before the pod is assigned to a node.
- ✗
The namespace has a ResourceQuota that blocks the pod.
Why it's wrong here
A namespace ResourceQuota can block pod creation during the admission control phase, causing the API server to reject the pod request outright with an error like 'exceeded quota'. If such a rejection happens, the pod is never persisted and would not appear as Pending; instead, you would see a failure when submitting the pod. In contrast, a pod that is Pending has already been admitted, so the scheduler is actively trying to place it, meaning a ResourceQuota cannot be the cause of this state.
- ✗
The pod's memory limit is set too low.
Why it's wrong here
Memory limits constrain how much memory the kubelet's cgroup allows a running container to use; exceeding the limit triggers an OOM kill, not a scheduling failure. Scheduling decisions are made exclusively using the pod's memory request, not its limit, so a low limit only risks runtime OOMKilled events after the container starts. Since a Pending pod has not yet been started, its memory limit has no effect on why it is stuck in Pending.
Go deeper
Related to this question
About these practice questions
Courseiva writes every CKAD question from scratch — 826 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or 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.