easyMultiple Choice
CKS Practice Question: An administrator runs 'kubectl get pods' and sees…
An administrator runs 'kubectl get pods' and sees that a pod is in 'Pending' state. What is the most likely reason for this state?
⚠ Common exam trap
CNCF often tests the distinction between 'Pending' (scheduling issue) and 'ContainerCreating' (image pull or container start delay), so the trap here is confusing a pending scheduling state with a container runtime issue.
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 is waiting to be scheduled to a node
A pod enters the 'Pending' state when it has been accepted by the API server but is not yet running. The most common reason is that the scheduler has not yet assigned the pod to a node, often due to insufficient resources (CPU/memory), node selector mismatches, taints/tolerations, or a failed scheduler itself. This is the initial phase before the pod transitions to 'Running' or 'ContainerCreating'.
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 has been deleted
Why it's wrong here
A deleted pod would not appear in the output. `kubectl get pods` lists existing Pod objects from the API server; once a pod is deleted, it is removed from etcd and is no longer visible unless it is in the Terminating state. A pod in the Pending phase still has an active object, so deletion cannot be the cause of the observed status.
- ✗
The container inside the pod is crashing
Why it's wrong here
A crashing container occurs only after the pod has been scheduled and the kubelet has started the container on a node. In the Pending phase, no containers have been created yet, so there is nothing to crash. The typical manifestation of a crashing container is CrashLoopBackOff or Error within a Running pod, not Pending. This option misattributes a container-level issue to a pod-level scheduling phase.
- ✓
The pod is waiting to be scheduled to a node
Why this is correct
Pending is a valid pod phase indicating that the pod has been accepted by the API server but has not yet been scheduled to a node. The scheduler may be waiting for resources, evaluating constraints such as taints/tolerations or node affinity, or the pod could be stuck due to a lack of suitable nodes. Until the scheduler binds the pod to a node, the phase remains Pending, making this the correct interpretation.
- ✗
The pod has completed its execution
Why it's wrong here
Completion of execution corresponds to the Succeeded or Failed pod phases, which signify that the pod's containers ran to termination on a node. The Pending phase occurs before any container has been started, so it is impossible for the pod to have completed its execution. Additionally, completed pods are typically managed by workloads like Jobs, and they remain visible in `kubectl get pods` with a status of Completed or Error, not Pending.
Go deeper
Related to this question
About these practice questions
One of 845 original CKS 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 CKS 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 CKS exam.