CKA Workloads and Scheduling Practice Question
Which THREE of the following are valid taint effects that can be applied to a node? (Select 3)
⚠ Common exam trap
CNCF often tests the exact spelling of taint effects, and candidates confuse `PreferNoSchedule` with `PreferSchedule` or invent effects like `NeverSchedule` that do not exist in the Kubernetes API.
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
✓
NoSchedule
In Kubernetes, taints are applied to nodes with a taint effect that determines how the scheduler and kubelet react to pods lacking a matching toleration. Option C, NoSchedule, is correct because it instructs the scheduler to avoid placing new pods on the node unless they tolerate the taint, while existing pods remain running. Option D, PreferNoSchedule, is correct because it is a soft preference: the scheduler tries to avoid the node but may still place pods there if no better option exists. Option E, NoExecute, is correct because it not only prevents new pods from scheduling but also evicts already-running pods that do not tolerate the taint. Options A (NeverSchedule) and B (PreferSchedule) are not valid Kubernetes taint effects; the only supported effects are NoSchedule, PreferNoSchedule, and NoExecute.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
NeverSchedule
Why it's wrong here
NeverSchedule is not a recognized Kubernetes taint effect. The core API defines taint effects as an enumerated set of string constants, and 'NeverSchedule' does not appear in that set. Although it sounds like a plausible synonym for 'NoSchedule', the scheduler will treat it as an invalid value, causing taint validation errors. The only hard scheduling taint effect is NoSchedule.
- ✗
PreferSchedule
Why it's wrong here
There is no taint effect called 'PreferSchedule'. The valid soft taint effect is 'PreferNoSchedule', and 'PreferSchedule' would imply a preference to schedule pods on the node, which is the opposite of a taint's purpose. Taints are used to repel pods, not attract them, so a 'PreferSchedule' effect would be semantically contradictory. Kubernetes only allows PreferNoSchedule for the 'soft' avoidance behavior.
- ✓
NoSchedule
Why this is correct
NoSchedule is a valid, hard taint effect that prevents the scheduler from placing new pods onto the tainted node unless they have a matching toleration. It has no effect on pods that are already running on the node; those pods continue to run unless they are evicted by other means. This effect is commonly used to restrict a node for dedicated workloads or to perform maintenance without disrupting existing pods.
- ✓
PreferNoSchedule
Why this is correct
PreferNoSchedule is a valid, soft taint effect that tells the scheduler to avoid scheduling pods without a matching toleration onto the node, but it does not enforce a hard prohibition. If there are no other suitable nodes, the scheduler may schedule the pod onto the tainted node. Existing pods on the node are not affected, and this effect is useful for nudging the scheduler to spread workloads while allowing fallback.
- ✓
NoExecute
Why this is correct
NoExecute is a valid taint effect that affects both scheduling and running pods. Pods without a matching toleration are not scheduled to the node, and any existing pods that do not tolerate the taint are evicted immediately. Tolerations for NoExecute can include a tolerationSeconds field, allowing the pod to remain on the node for a specified grace period before eviction. This effect is the most forceful and is used for node eviction scenarios.
Go deeper
Related to this question
Learn chapter
Configuring Scheduling and Affinity
Key term
Network Policies
A Kubernetes resource that controls how pods communicate with each other and with other network endpoints, acting as a firewall for pod-to-pod traffic.
Key term
Taints and Tolerations
Taints and tolerations are Kubernetes features that control which pods can be scheduled onto which nodes by marking nodes with a taint and allowing pods to declare a toleration to the taint.
About these practice questions
This CKA question is part of Courseiva's 726-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 CKA 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 CKA exam.