HiveBrain v1.2.0
Get Started
← Back to all entries
snippetbashTip

kubectl drain — Drain a node in preparation for maintenance by marking it unschedulable and evicting all pods. See a

Submitted by: @import:tldr-pages··
0
Viewed 0 times
kubectl drainmaintenancecommandnodeclipreparationfordrain

Problem

How to use the kubectl drain command: Drain a node in preparation for maintenance by marking it unschedulable and evicting all pods. See also: kubectl cordon, kubectl uncordon. More information: <https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/>.

Solution

kubectl drain — Drain a node in preparation for maintenance by marking it unschedulable and evicting all pods. See also: kubectl cordon, kubectl uncordon. More information: <https://kubernetes.io/docs/reference/kubectl/generated/kubectl_drain/>.

Drain a node:
kubectl drain {{node_name}}


Drain a node, ignoring DaemonSet-managed pods:
kubectl drain {{node_name}} --ignore-daemonsets


Drain a node and delete pods using emptyDir volumes (local data will be lost):
kubectl drain {{node_name}} --ignore-daemonsets --delete-emptydir-data


Drain a node, forcing eviction of pods not managed by a controller:
kubectl drain {{node_name}} --force


Drain a node with a custom grace period for pod termination:
kubectl drain {{node_name}} --grace-period {{seconds}}


Drain a node, evicting only pods that match a label selector:
kubectl drain {{node_name}} --pod-selector {{label_key}}={{label_value}}


Drain a node with a timeout:
kubectl drain {{node_name}} --timeout {{duration}}


Preview the drain operation without actually evicting pods (dry run):
kubectl drain {{node_name}} --dry-run={{none|server|client}}

Code Snippets

Drain a node

kubectl drain {{node_name}}

Drain a node, ignoring DaemonSet-managed pods

kubectl drain {{node_name}} --ignore-daemonsets

Drain a node and delete pods using emptyDir volumes (local data will be lost)

kubectl drain {{node_name}} --ignore-daemonsets --delete-emptydir-data

Drain a node, forcing eviction of pods not managed by a controller

kubectl drain {{node_name}} --force

Drain a node with a custom grace period for pod termination

kubectl drain {{node_name}} --grace-period {{seconds}}

Context

tldr-pages: common/kubectl drain

Revisions (0)

No revisions yet.