Skip to content

Commit 2e3da35

Browse files
guettliTim Bannister
andauthored
Update content/en/docs/tasks/administer-cluster/safely-drain-node.md
Co-authored-by: Tim Bannister <[email protected]>
1 parent 27ab543 commit 2e3da35

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

content/en/docs/tasks/administer-cluster/safely-drain-node.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,12 @@ Next, tell Kubernetes to drain the node:
6969
kubectl drain --ignore-daemonsets <node name>
7070
```
7171

72-
If there are daemon set managed pods, drain will not proceed without `--ignore-daemonsets`,
73-
and regardless it will not delete any daemon set managed pods,
74-
because those pods would be immediately replaced by the daemon set controller,
75-
which ignores unschedulable markings.
72+
If there are DaemonSet managed pods, drain will usually not succeed unless you specify
73+
`--ignore-daemonsets`. The `kubectl drain` subcommand on its own does not actually drain
74+
a node of its DaemonSet pods:
75+
the DaemonSet controller (part of the control plane) immediately replaces missing Pods with
76+
new equivalent Pods. The DaemonSet controller also creates Pods that ignore unschedulable
77+
taints, which allows the new Pods to launch onto a node that you are draining.
7678

7779
Once it returns (without giving an error), you can power down the node
7880
(or equivalently, if on a cloud platform, delete the virtual machine backing the node).

0 commit comments

Comments
 (0)