Courseiva

Cordon Node Effect: Mark Node Unschedulable

A node in the cluster has been cordoned. Which of the following is true about the node?

Quick Answer

The correct answer is that the node is marked as unschedulable, but existing pods continue to run. This happens because the `kubectl cordon` command sets the `node.Spec.Unschedulable` field to true, which instructs the Kubernetes scheduler to ignore that node when placing new workloads. However, the kubelet on the cordoned node remains active, so any pods already running there are unaffected and will continue to operate normally until they are deleted or evicted by other means. On the CKA exam, this concept tests your understanding of node lifecycle management and the distinction between cordoning and draining—a common trap is confusing `cordon` with `drain`, which actually evicts pods. Remember the memory tip: “Cordon closes the door, but doesn’t kick anyone out.”

⚠ Common exam trap

Many exam-takers confuse cordoning with draining, assuming cordoning also evicts existing pods or removes the node, when in fact it only prevents new scheduling and leaves running pods untouched.

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 node is marked as unschedulable, but existing pods continue to run.

When a node is cordoned using `kubectl cordon`, it is marked as unschedulable by setting the `node.Spec.Unschedulable` field to true. This prevents new pods from being scheduled onto the node, but existing pods continue to run normally. The node remains part of the cluster and is not removed or drained automatically.

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 node is removed from the cluster.

    Why it's wrong here

    Cordoning marks the node unschedulable, so new Pods are not placed there; existing Pods keep running and the node stays in the cluster. It is tempting because cordoning often precedes draining, but removal from the cluster requires deleting the Node object, not marking it unschedulable.

  • ✗

    kubectl drain is automatically performed on the node.

    Why it's wrong here

    Cordoning only sets the unschedulable flag; draining is a separate command that evicts Pods and must be run explicitly. It is tempting because the two are used together during maintenance, but drain is never triggered automatically by cordon.

  • ✓

    The node is marked as unschedulable, but existing pods continue to run.

    Why this is correct

    Cordoning sets the node's spec.unschedulable field to true, so the scheduler places no new pods there. Existing pods remain running and are not evicted, which distinguishes cordon from drain, where workloads are actively moved off the node.

  • ✗

    Existing pods on the node are immediately evicted.

    Why it's wrong here

    Cordoning marks a node unschedulable, so new pods are not placed there while existing pods keep running undisturbed. It is tempting because draining evicts pods, but cordon alone performs no eviction; existing workloads remain until manually deleted or drained.

About these practice questions

One of 726 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 →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on CKA

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. A node has been cordoned. Which statement about the node is true?

medium
  • A.All pods on the node are immediately terminated
  • B.The kubelet on the node is stopped
  • C.The node is removed from the cluster
  • ✓ D.The node is marked as unschedulable, but existing pods continue to run

Why D: When a node is cordoned using `kubectl cordon <node>`, it is marked as unschedulable by setting the `spec.unschedulable` field to `true`. This prevents new pods from being scheduled onto the node, but existing pods continue to run normally. The kubelet remains active, and the node stays in the cluster.

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.