Courseiva
Workloads & Scheduling →hardMultiple Choice

CKA Workloads & Scheduling Practice Question

A cluster administrator wants to ensure that a set of batch processing Pods are preemptible and should not cause disruption to other critical workloads. Which combination of scheduling features should be used?

⚠ Common exam trap

Candidates often confuse taints/tolerations or node affinity with preemption and disruption protection, failing to realize that only priority classes enable preemption and PDBs control voluntary disruptions.

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

✓

Assign a low priority class to the batch Pods and set a PodDisruptionBudget for critical workloads.

Assigning a low priority class to batch Pods ensures they are preempted by higher-priority critical workloads when resources are scarce, while a PodDisruptionBudget (PDB) for critical workloads guarantees that a minimum number of those Pods remain available during voluntary disruptions (e.g., node drains). This combination allows batch Pods to be preemptible without causing disruption to critical workloads, aligning with the requirement.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Taint all worker nodes with a custom taint and add tolerations to batch Pods.

    Why it's wrong here

    Taints and tolerations are used to repel pods from nodes or allow specific pods to schedule on tainted nodes. They do not establish a priority hierarchy or trigger the kube-scheduler's preemption engine when resources are scarce. Consequently, this approach cannot guarantee that critical workloads can evict batch pods during resource contention.

  • ✓

    Assign a low priority class to the batch Pods and set a PodDisruptionBudget for critical workloads.

    Why this is correct

    Defining a low PriorityClass for batch pods ensures that the kube-scheduler will preempt them if higher-priority critical pods require those node resources. Simultaneously, configuring a PodDisruptionBudget (PDB) for the critical workloads guarantees that voluntary disruptions do not drop their replica counts below a safe threshold, balancing resource availability with application resilience.

  • ✗

    Use nodeAffinity to schedule batch Pods on dedicated nodes.

    Why it's wrong here

    Node affinity directs the scheduler to place batch pods on specific nodes based on labels, but it does not manage runtime resource contention or pod eviction. If those dedicated nodes run out of capacity, node affinity cannot trigger preemption of lower-priority tasks to accommodate critical workloads, nor does it protect critical pods from disruption.

  • ✗

    Use resource quotas to limit the batch Pods' resource consumption.

    Why it's wrong here

    ResourceQuotas restrict the aggregate resource consumption within a namespace to prevent resource exhaustion. However, they operate as admission control gates rather than scheduling mechanisms; they cannot dynamically preempt running batch pods when critical workloads demand immediate resources, nor do they define disruption limits.

About these practice questions

Courseiva writes every CKA question from scratch — 726 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 →

How Courseiva writes practice questions · Editorial policy

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.