KCNA Kubernetes Fundamentals Practice Question
A cluster has a node with the taint 'node-role.kubernetes.io/control-plane:NoSchedule'. A pod must be scheduled on this node for a special workload. Which action is required?
⚠ Common exam trap
It's easy for candidates to confuse nodeSelector (label-based) with tolerations (taint-based), thinking that selecting a node by label can override a taint, when in fact taints are a separate, higher-priority scheduling constraint.
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
✓
Add a toleration to the pod spec.
A taint on a node causes the scheduler to avoid placing pods on that node unless the pod explicitly tolerates the taint. By adding a toleration in the pod spec that matches the taint key, effect, and optionally the value, the pod becomes eligible to be scheduled on the tainted node. This is the standard Kubernetes mechanism for allowing pods to run on control-plane or other specially tainted nodes.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Use a nodeSelector to select the node.
Why it's wrong here
A nodeSelector only filters nodes by label during scheduling; it cannot override a NoSchedule taint, so the pod remains unschedulable. It is tempting because nodeSelector is the standard mechanism for pinning pods to particular nodes, and would be correct if the node carried a matching label without a conflicting taint.
- ✗
Remove the taint from the node.
Why it's wrong here
Removing the control-plane taint disables the protection that keeps ordinary workloads off that node, affecting the whole cluster rather than one pod. It is tempting because deleting a taint does permit scheduling, and would be correct only if the node were permanently dedicated to this workload.
- ✓
Add a toleration to the pod spec.
Why this is correct
The control-plane taint repels pods lacking a matching toleration, so the scheduler will not place the workload there. Adding a toleration for node-role.kubernetes.io/control-plane with effect NoSchedule to the pod spec permits scheduling onto that node.
- ✗
Use podAffinity to attract the pod to the node.
Why it's wrong here
Pod affinity attracts pods towards nodes matching label expressions but does not satisfy taint requirements; the NoSchedule taint still blocks scheduling. It is tempting because affinity is the usual tool for co-locating workloads, and would be correct when the target node has no taint or carries a matching toleration.
Go deeper
Related to this question
About these practice questions
Courseiva writes every KCNA question from scratch — 930 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 →
Same concept, more angles
1 more way this is tested on KCNA
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. A Kubernetes cluster has multiple worker nodes. You create a Pod without any node selector. The scheduler places the pod on a node, but the pod remains in 'Pending' state. 'kubectl describe pod' shows '0/1 nodes are available: 1 node had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate'. What does this indicate?
hard- ✓ A.The node has a taint that the pod does not tolerate
- B.The pod has a resource request that exceeds the node's capacity
- C.The node is cordoned and should be uncordoned
- D.The node is out of disk space
Why A: The error message explicitly states that one node had a taint (`node-role.kubernetes.io/master`) that the pod did not tolerate. Taints and tolerations are a Kubernetes mechanism that allows nodes to repel pods unless the pod has a matching toleration. Since the pod was created without any tolerations, the scheduler could not place it on the tainted node, leaving it in 'Pending' state.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This KCNA 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 KCNA exam.