CKA Workloads and Scheduling Practice Question
You create a PriorityClass named 'high-priority' with value 1000000 (one million). A pod uses this PriorityClass. The cluster has limited resources. What scheduling behavior is most likely?
⚠ Common exam trap
CNCF often tests the misconception that PriorityClass affects kernel-level CPU priority or that a high-priority pod is scheduled before all lower-priority pods, when in reality it only enables preemption and does not guarantee scheduling order.
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 may preempt lower-priority pods to be scheduled
PriorityClass with value 1000000 is extremely high (the default max is 1 billion). When a pod with this PriorityClass is submitted and the cluster has limited resources, the Kubernetes scheduler may preempt (evict) lower-priority pods to free resources and schedule this high-priority pod. This is the core behavior of PriorityClass and preemption in Kubernetes.
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 will never be preempted by other pods
Why it's wrong here
This statement is incorrect because preemption is not absolute based on priority alone. A pod with a high-priority PriorityClass can still be preempted by another pod whose PriorityClass has an even higher numeric value, since the scheduler always admits or preempts according to the highest priority first. In fact, preemption is explicitly triggered when a pending pod's priority exceeds that of pods already running on the node, so unless your pod has the highest possible priority in the cluster, it remains vulnerable to preemption by higher-priority workloads.
- ✗
The pod will be scheduled only after all lower-priority pods have been scheduled
Why it's wrong here
This is false because the Kubernetes scheduler does not serialize pod scheduling in a strict lower-priority-first order. Instead, the scheduling queue is sorted by priority, so higher-priority pods are processed and placed before lower-priority ones, which can cause lower-priority pods to wait for resources. Higher-priority pods can also preempt running lower-priority pods to get resources immediately, meaning lower-priority pods are not a barrier; they are victims of resource reclamation, not prerequisites.
- ✓
The pod may preempt lower-priority pods to be scheduled
Why this is correct
Correct. When a pod carries a high-priority PriorityClass, the scheduler treats it as eligible for preemption: if the pod cannot be placed on any node because of insufficient resources, the scheduler identifies nodes running pods with lower priorities and evicts those lower-priority pods to free capacity for the pending high-priority pod. This is governed by the preemptionPolicy field in the PriorityClass, which defaults to PreemptLowerPriority, and the actual eviction is performed through the PodDisruptionBudget-aware API, though critical pods may be protected if they have higher priority or are in terminating state.
- ✗
The pod will be assigned a higher CPU priority in the kernel
Why it's wrong here
This is a common misconception. Kubernetes PriorityClass does not map to OS-level nice values, CPU shares, or any kernel scheduling priority for container processes. It only affects the Kubernetes scheduler's ordering and preemption decisions within the cluster control plane. Actual CPU resource allocation is controlled by requests, limits, and QoS classes (Guaranteed, Burstable, BestEffort), which translate into cgroup shares and CFS quotas in the kernel, not by the PriorityClass value.
Go deeper
Related to this question
Learn chapter
Kubernetes Architecture Overview
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
Ingress Resources
Ingress Resources are Kubernetes API objects that manage external access to services inside a cluster, typically HTTP and HTTPS traffic, by defining rules for routing requests based on hostnames and paths.
About these practice questions
One of 302 original CKA 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 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.