Courseiva
TroubleshootingmediumMultiple ChoiceObjective-mapped

CKA Troubleshooting Practice Question

A pod is in Pending state. You see the event: '0/2 nodes are available: 2 node(s) had taint {node-role.kubernetes.io/control-plane: }, that the pod didn't tolerate'. What should you do to schedule the pod on one of the control-plane nodes?

⚠ Common exam trap

Test-takers frequently think removing the taint (Option B) is the correct fix, but the CKA exam expects you to use tolerations to selectively schedule pods on tainted nodes without altering node configuration.

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 matching the taint

The pod is in Pending state because the control-plane nodes have a taint (node-role.kubernetes.io/control-plane) that the pod does not tolerate. By default, pods are not scheduled on control-plane nodes unless they explicitly tolerate that taint. Adding a toleration to the pod spec that matches the taint's key, effect, and optionally value allows the scheduler to place the pod on a control-plane node.

Answer analysis

Option-by-option breakdown

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

  • Increase the pod's resource requests

    Why it's wrong here

    Increasing the pod's resource requests is incorrect because the underlying issue is a taint/toleration mismatch, not resource pressure. A lack of resources would generate a different event such as 'Insufficient cpu' or 'Insufficient memory' on the specific node, whereas here the scheduler reports that all nodes have untolerated taints. Raising resource requests would actually make scheduling harder, since it increases the pod's demand on scarce resources without addressing the taint that prevents placement on those nodes.

  • Remove the taint from the control-plane node

    Why it's wrong here

    Removing the taint from the control-plane node would technically allow the pod to schedule, but it is an antipattern and weakens cluster security. The default control-plane taint (node-role.kubernetes.io/control-plane) exists to keep business workloads off control-plane nodes, and removing it indiscriminately exposes critical cluster infrastructure to arbitrary pods. The preferred and safe approach is to add a toleration to the pod spec so only that pod is explicitly allowed to run on the tainted node, preserving the taint for all other workloads.

  • Use a different namespace

    Why it's wrong here

    Choosing a different namespace has no effect on taint/toleration behavior because these mechanisms operate at the node and pod level, not the namespace level. Namespaces are logical boundaries for API objects, but the scheduler evaluates node taints against the tolerations present in each Pod's spec; a pod in any namespace is still subject to the same taint unless it carries a matching toleration. Therefore, changing the namespace neither removes the taint nor provides a workaround for the scheduling failure.

  • Add a toleration to the pod spec matching the taint

    Why this is correct

    Adding a toleration to the pod spec that matches the node's taint is the correct solution because tolerations explicitly opt a pod into scheduling on tainted nodes. The taint on the node uses key, value, and effect (e.g., node-role.kubernetes.io/control-plane:NoSchedule), and the toleration must mirror that key, value, and effect before the scheduler will place the pod there. This is the standard, least-privilege way to run a specific workload on a dedicated or control-plane node without weakening cluster-wide policies.

About these practice questions

This CKA question is part of Courseiva's 302-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 →

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.