McAfee Secure

CNCF CKA Bundle

Exam Code: CKA

Exam Name Certified Kubernetes Administrator

Certification Provider: CNCF

Corresponding Certification: CKA

CNCF CKA Bundle $44.99

100% CNCF CKA Guaranteed Success With Testking Training Materials

Get Real CKA Exam Questions & Expert Verified Answers as Experienced on the Real Exam!

  • Questions & Answers

    CKA Questions & Answers

    58 Questions & Answers

    The ultimate exam preparation tool, Questions & Answers mirrors the actual CKA exam while allowing you to hone and measure every aspect of your test-taking ability.

  • CKA Video Course

    CKA Training Course

    138 Video Lectures

    CKA Video Course is developed by CNCF Professionals to help you pass the CKA exam.

    Description

    This course will improve your knowledge and skills required to pass Certified Kubernetes Administrator exam.
  • Study Guide

    CKA Study Guide

    268 PDF Pages

    Developed by industry experts, this 268-page guide spells out in painstaking detail all of the information you need to ace CKA exam.

Certified Kubernetes Administrator (CKA) Practice Tests

Satisfaction Guaranteed

Money Back Guarantee

Testking provides hassle-free money back guarantee with our products. That is because we have 100% trust in the abilities of our professional and experience product team, and our record is a proof of that.

99.6% PASS RATE
Total Cost: $194.97
Bundle Price: $149.98

Purchase Individually

  • Questions & Answers

    Questions & Answers

    58 Questions

    $124.99
  • CKA Video Course

    Training Course

    138 Video Lectures

    $39.99
  • Study Guide

    Study Guide

    268 PDF Pages

    $29.99

CNCF CKA Practice Test 15

Question 140

At Horizon observability, in a disposable simulated environment during a monitored release window: The administrator must stop new Pods landing on worker worker-b while examining it, without evicting existing Pods. Work only within the stated target and verify before declaring success. Which operational control most directly prevents this failure or configuration drift?

  1. Use narrowly defined ClusterRoles and periodically audit cluster-wide grants.
  2. Record node maintenance ownership and uncordon obligations before opening a window.
  3. Reconcile taints with workload tolerations and document dedicated-node policies.
  4. Use disruption budgets, replicated workloads and rollback plans before planned node drains.

Explanation

Correct Answer

B:

Record node maintenance ownership and uncordon obligations before opening a window. This reduces recurrence of the specific operational failure. It reinforces the action: Run kubectl cordon worker-b. The relevant mechanism is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads.

Incorrect Answers

A:

This routine guards against another mechanism: Nodes are cluster-scoped and their access rules belong in a ClusterRole rather than a namespaced Role. The recurring exposure in the current case is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The matching preventive check is “Record node maintenance ownership and uncordon obligations before opening a window”.

C:

That safeguard is relevant to: A NoSchedule taint repels Pods without a matching toleration but does not automatically evict already running Pods. The current failure instead follows from: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Its prevention measure is “Record node maintenance ownership and uncordon obligations before opening a window”.

D:

This routine guards against another mechanism: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The recurring exposure in the current case is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The matching preventive check is “Record node maintenance ownership and uncordon obligations before opening a window”.

Question 141

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: The administrator must stop new Pods landing on worker worker-c while examining it, without evicting existing Pods. Work only within the stated target and verify before declaring success. Which command or initial safe diagnostic step best addresses the stated lab task?

  1. Run kubectl create clusterrole dispatch-api-node-reader --verb=get,list --resource=nodes.
  2. Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications.
  3. Run sudo kubeadm token create --ttl 15m --print-join-command on an authorized control-plane host and keep the output confidential.
  4. Run kubectl cordon worker-c.

Explanation

Correct Answer

D:

Run kubectl cordon worker-c. This is the appropriate command-line action or first safe diagnostic. The technical reason is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Validate the result with: Run kubectl get node worker-c and verify SchedulingDisabled is shown. Execute changes only in an authorized disposable lab or after normal production change controls.

Incorrect Answers

A:

The proposed action belongs to the mechanism: Nodes are cluster-scoped and their access rules belong in a ClusterRole rather than a namespaced Role. Here the stated fault follows a different mechanism: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The corrective choice is “Run kubectl cordon worker-c”.

B:

The offered action targets: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The case facts point instead to: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Implement “Run kubectl cordon worker-c” to address that specific condition.

C:

This alternative is a response to another technical cause: Bootstrap join tokens are sensitive credentials and a short TTL reduces the period in which a leaked token could be abused. The reported case instead depends on: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The action that directly addresses it is “Run kubectl cordon worker-c”.

Question 142

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: The administrator must stop new Pods landing on worker worker-c while examining it, without evicting existing Pods. Work only within the stated target and verify before declaring success. Which Kubernetes behavior best explains the required change or diagnosis?

  1. Cordon marks a Node unschedulable to new Pods but does not drain running workloads.
  2. Node labels are discoverable metadata matched by selectors; a node label alone does not create a workload restriction.
  3. Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.
  4. Uncordon clears the Node's unschedulable status; it does not guarantee any particular Pod will be placed there.

Explanation

Correct Answer

A:

Cordon marks a Node unschedulable to new Pods but does not drain running workloads. This explains the stated condition. The corresponding action is: Run kubectl cordon worker-c. The direct acceptance evidence is: Run kubectl get node worker-c and verify SchedulingDisabled is shown.

Incorrect Answers

B:

This principle describes a separate cause: Node labels are discoverable metadata matched by selectors; a node label alone does not create a workload restriction. The reported condition is governed by: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The two mechanisms should not be conflated.

C:

Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. That explanation applies to a different technical failure. Here the controlling principle is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads.

D:

The offered statement is true for this other mechanism: Uncordon clears the Node's unschedulable status; it does not guarantee any particular Pod will be placed there. It does not explain the facts described here, which follow from: Cordon marks a Node unschedulable to new Pods but does not drain running workloads.

Question 143

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: The administrator must stop new Pods landing on worker worker-c while examining it, without evicting existing Pods. Work only within the stated target and verify before declaring success. Which observation best verifies the requested outcome rather than an unrelated state?

  1. Run kubectl describe node worker-c and confirm the specific taint is absent.
  2. Run kubectl get node worker-c and verify SchedulingDisabled is shown.
  3. Run kubectl -n fulfillment get role dispatch-api-pod-reader -o yaml and confirm only Pod read verbs are present.
  4. Check the authorized join operation completes and inspect sudo kubeadm token list for expected expiry.

Explanation

Correct Answer

B:

Run kubectl get node worker-c and verify SchedulingDisabled is shown. This validates the affected object or control path, rather than only showing a command completed. The underlying reason is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The intended action is: Run kubectl cordon worker-c.

Incorrect Answers

A:

This observation would test a different technical dependency: A trailing minus removes the matching taint; adding a new toleration on every Pod would leave unnecessary cluster constraints. The current issue is governed by: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Its decisive check is “Run kubectl get node worker-c and verify SchedulingDisabled is shown”.

C:

That test belongs to another control with this basis: A namespaced Role expresses allowed resource verbs; it has no effect until a RoleBinding associates a subject. In the current case, the governing reason is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The direct verification is “Run kubectl get node worker-c and verify SchedulingDisabled is shown”.

D:

This observation would test a different technical dependency: Bootstrap join tokens are sensitive credentials and a short TTL reduces the period in which a leaked token could be abused. The current issue is governed by: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Its decisive check is “Run kubectl get node worker-c and verify SchedulingDisabled is shown”.

Question 144

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: The administrator must stop new Pods landing on worker worker-c while examining it, without evicting existing Pods. Work only within the stated target and verify before declaring success. Which operational control most directly prevents this failure or configuration drift?

  1. Use disruption budgets, replicated workloads and rollback plans before planned node drains.
  2. Include schedulability restoration in maintenance completion checklists.
  3. Record node maintenance ownership and uncordon obligations before opening a window.
  4. Use narrowly defined ClusterRoles and periodically audit cluster-wide grants.

Explanation

Correct Answer

C:

Record node maintenance ownership and uncordon obligations before opening a window. This reduces recurrence of the specific operational failure. It reinforces the action: Run kubectl cordon worker-c. The relevant mechanism is: Cordon marks a Node unschedulable to new Pods but does not drain running workloads.

Incorrect Answers

A:

The suggested review tracks a different technical risk: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Here the sustained control must address: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Choose “Record node maintenance ownership and uncordon obligations before opening a window”.

B:

That safeguard is relevant to: Uncordon clears the Node's unschedulable status; it does not guarantee any particular Pod will be placed there. The current failure instead follows from: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Its prevention measure is “Record node maintenance ownership and uncordon obligations before opening a window”.

D:

The suggested review tracks a different technical risk: Nodes are cluster-scoped and their access rules belong in a ClusterRole rather than a namespaced Role. Here the sustained control must address: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. Choose “Record node maintenance ownership and uncordon obligations before opening a window”.

Question 145

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: The node worker-a has to be evacuated for planned maintenance; the lab confirms no unreplicated data or unprotected standalone Pods. Work only within the stated target and verify before declaring success. Which command or initial safe diagnostic step best addresses the stated lab task?

  1. Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications.
  2. Run kubectl auth can-i list pods -n ledger --as=system:serviceaccount:ledger:release-bot and separately test delete deployments with the same impersonation.
  3. Run kubectl label node worker-b workload=restricted --overwrite.
  4. Run kubectl uncordon worker-b.

Explanation

Correct Answer

A:

Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications. This is the appropriate command-line action or first safe diagnostic. The technical reason is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Validate the result with: Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-a and review remaining DaemonSets. Execute changes only in an authorized disposable lab or after normal production change controls.

Incorrect Answers

B:

This alternative is a response to another technical cause: RBAC authorization decisions depend on the subject, verb, resource and namespace; an admin's own access does not prove the workload identity's access. The reported case instead depends on: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The action that directly addresses it is “Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications”.

C:

The proposed action belongs to the mechanism: Node labels are discoverable metadata matched by selectors; a node label alone does not create a workload restriction. Here the stated fault follows a different mechanism: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The corrective choice is “Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications”.

D:

The offered action targets: Uncordon clears the Node's unschedulable status; it does not guarantee any particular Pod will be placed there. The case facts point instead to: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Implement “Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications” to address that specific condition.

Question 146

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: The node worker-a has to be evacuated for planned maintenance; the lab confirms no unreplicated data or unprotected standalone Pods. Work only within the stated target and verify before declaring success. Which Kubernetes behavior best explains the required change or diagnosis?

  1. A worker joins through trusted control-plane discovery and TLS bootstrap; a random API endpoint or mismatched CA hash is unsafe.
  2. Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.
  3. Uncordon clears the Node's unschedulable status; it does not guarantee any particular Pod will be placed there.
  4. A Namespace supplies a scope for namespaced resources while its metadata labels support policy and inventory selectors.

Explanation

Correct Answer

B:

Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. This explains the stated condition. The corresponding action is: Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications. The direct acceptance evidence is: Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-a and review remaining DaemonSets.

Incorrect Answers

A:

This principle describes a separate cause: A worker joins through trusted control-plane discovery and TLS bootstrap; a random API endpoint or mismatched CA hash is unsafe. The reported condition is governed by: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The two mechanisms should not be conflated.

C:

The offered statement is true for this other mechanism: Uncordon clears the Node's unschedulable status; it does not guarantee any particular Pod will be placed there. It does not explain the facts described here, which follow from: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.

D:

This principle describes a separate cause: A Namespace supplies a scope for namespaced resources while its metadata labels support policy and inventory selectors. The reported condition is governed by: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The two mechanisms should not be conflated.

Question 147

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: The node worker-a has to be evacuated for planned maintenance; the lab confirms no unreplicated data or unprotected standalone Pods. Work only within the stated target and verify before declaring success. Which observation best verifies the requested outcome rather than an unrelated state?

  1. Run kubectl get node worker-b and verify SchedulingDisabled is shown.
  2. Run kubectl get node worker-a and verify SchedulingDisabled is shown.
  3. Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-a and review remaining DaemonSets.
  4. Run kubectl describe node worker-a and confirm the specific taint is absent.

Explanation

Correct Answer

C:

Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-a and review remaining DaemonSets. This validates the affected object or control path, rather than only showing a command completed. The underlying reason is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The intended action is: Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications.

Incorrect Answers

A:

The alternative verifies a different condition: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. The current case instead depends on: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Confirm that “Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-a and review remaining DaemonSets”.

B:

That test belongs to another control with this basis: Cordon marks a Node unschedulable to new Pods but does not drain running workloads. In the current case, the governing reason is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The direct verification is “Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-a and review remaining DaemonSets”.

D:

The alternative verifies a different condition: A trailing minus removes the matching taint; adding a new toleration on every Pod would leave unnecessary cluster constraints. The current case instead depends on: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Confirm that “Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-a and review remaining DaemonSets”.

Question 148

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: The node worker-a has to be evacuated for planned maintenance; the lab confirms no unreplicated data or unprotected standalone Pods. Work only within the stated target and verify before declaring success. Which operational control most directly prevents this failure or configuration drift?

  1. Store join credentials only in approved short-lived channels and verify the new node is assigned to the intended cluster.
  2. Require approval and periodic recertification for ClusterRoleBindings and group membership.
  3. Reserve and govern security-sensitive scheduling labels through controlled change procedures.
  4. Use disruption budgets, replicated workloads and rollback plans before planned node drains.

Explanation

Correct Answer

D:

Use disruption budgets, replicated workloads and rollback plans before planned node drains. This reduces recurrence of the specific operational failure. It reinforces the action: Run kubectl drain worker-a --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications. The relevant mechanism is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.

Incorrect Answers

A:

That safeguard is relevant to: A worker joins through trusted control-plane discovery and TLS bootstrap; a random API endpoint or mismatched CA hash is unsafe. The current failure instead follows from: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Its prevention measure is “Use disruption budgets, replicated workloads and rollback plans before planned node drains”.

B:

This routine guards against another mechanism: A ClusterRoleBinding applies its referenced ClusterRole permission set at cluster scope to the named group. The recurring exposure in the current case is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The matching preventive check is “Use disruption budgets, replicated workloads and rollback plans before planned node drains”.

C:

The suggested review tracks a different technical risk: Node labels are discoverable metadata matched by selectors; a node label alone does not create a workload restriction. Here the sustained control must address: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Choose “Use disruption budgets, replicated workloads and rollback plans before planned node drains”.

Question 149

At Horizon observability, in a disposable simulated environment during a monitored release window: The node worker-b has to be evacuated for planned maintenance; the lab confirms no unreplicated data or unprotected standalone Pods. Work only within the stated target and verify before declaring success. Which command or initial safe diagnostic step best addresses the stated lab task?

  1. Run kubectl create clusterrole metrics-api-node-reader --verb=get,list --resource=nodes.
  2. Run kubectl drain worker-b --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications.
  3. Run kubectl -n observability create quota metrics-api-cpu --hard=requests.cpu=6 after checking no conflicting quota exists.
  4. Run kubectl uncordon worker-c.

Explanation

Correct Answer

B:

Run kubectl drain worker-b --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications. This is the appropriate command-line action or first safe diagnostic. The technical reason is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Validate the result with: Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-b and review remaining DaemonSets. Execute changes only in an authorized disposable lab or after normal production change controls.

Incorrect Answers

A:

This alternative is a response to another technical cause: Nodes are cluster-scoped and their access rules belong in a ClusterRole rather than a namespaced Role. The reported case instead depends on: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The action that directly addresses it is “Run kubectl drain worker-b --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications”.

C:

The offered action targets: A ResourceQuota caps combined admitted requests in a namespace; per-Pod limits alone do not enforce a namespace-wide budget. The case facts point instead to: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. Implement “Run kubectl drain worker-b --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications” to address that specific condition.

D:

This alternative is a response to another technical cause: Uncordon clears the Node's unschedulable status; it does not guarantee any particular Pod will be placed there. The reported case instead depends on: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. The action that directly addresses it is “Run kubectl drain worker-b --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications”.

Question 150

At Horizon observability, in a disposable simulated environment during a monitored release window: The node worker-b has to be evacuated for planned maintenance; the lab confirms no unreplicated data or unprotected standalone Pods. Work only within the stated target and verify before declaring success. Which Kubernetes behavior best explains the required change or diagnosis?

  1. Node labels are discoverable metadata matched by selectors; a node label alone does not create a workload restriction.
  2. A trailing minus removes the matching taint; adding a new toleration on every Pod would leave unnecessary cluster constraints.
  3. Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.
  4. A namespaced Role expresses allowed resource verbs; it has no effect until a RoleBinding associates a subject.

Explanation

Correct Answer

C:

Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain. This explains the stated condition. The corresponding action is: Run kubectl drain worker-b --ignore-daemonsets after reviewing PodDisruptionBudgets and local-storage implications. The direct acceptance evidence is: Run kubectl get pods -A -o wide --field-selector spec.nodeName=worker-b and review remaining DaemonSets.

Incorrect Answers

A:

Node labels are discoverable metadata matched by selectors; a node label alone does not create a workload restriction. That explanation applies to a different technical failure. Here the controlling principle is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.

B:

The offered statement is true for this other mechanism: A trailing minus removes the matching taint; adding a new toleration on every Pod would leave unnecessary cluster constraints. It does not explain the facts described here, which follow from: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.

D:

A namespaced Role expresses allowed resource verbs; it has no effect until a RoleBinding associates a subject. That explanation applies to a different technical failure. Here the controlling principle is: Drain cordons the node and requests evictions for eligible Pods; the ignore-daemonsets flag is needed because DaemonSet Pods are not deleted by drain.