KCNA Kubernetes Fundamentals Practice Question
A team is designing a Kubernetes cluster for a production workload that requires high availability. They have three worker nodes in different availability zones. Which statement about scheduling Pods is correct?
⚠ Common exam trap
The KCNA exam often tests the distinction between mechanisms that merely allow placement (tolerations, nodeSelector) versus those that enforce distribution (topology spread constraints), leading candidates to confuse permission with active scheduling policy.
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
✓
Define a Pod topology spread constraint with topologyKey: topology.kubernetes.io/zone.
A Pod topology spread constraint with `topologyKey: topology.kubernetes.io/zone` explicitly instructs the scheduler to distribute Pods evenly across the specified failure domains (availability zones). This ensures that if one zone fails, the remaining zones still have running Pods, achieving high availability for the production workload.
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 nodeSelector to assign Pods to nodes in different zones.
Why it's wrong here
nodeSelector pins each Pod to one labelled zone, giving no spreading across the three zones and no resilience if that zone fails. It suits deliberately placing a workload on specific hardware or a single zone, not HA distribution.
- ✗
Add tolerations for the zone taint.
Why it's wrong here
Tolerations merely permit a Pod to land on a tainted node; they do not spread replicas across the three zones, so all Pods could still co-locate on one node. Tolerations suit dedicated or tainted node pools, not zone-balanced high availability.
- ✗
Use podAntiAffinity with a requiredDuringSchedulingIgnoredDuringExecution rule.
Why it's wrong here
Required podAntiAffinity only prevents two matching Pods sharing a node when the topologyKey is the node hostname; with zone topologyKey it blocks co-location in the same zone, but the stem's correct answer spreads replicas via topologySpreadConstraints, which balances counts evenly across zones.
- ✓
Define a Pod topology spread constraint with topologyKey: topology.kubernetes.io/zone.
Why this is correct
A topology spread constraint with topologyKey topology.kubernetes.io/zone distributes Pods across availability zones, so replicas are not concentrated in one zone. This satisfies the high-availability requirement by ensuring zone-level failure does not take down every Pod.
Go deeper
Related to this question
About these practice questions
This KCNA question is part of Courseiva's 930-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 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.