1. 使用kubectl drain从服务中删除一个节点

在对节点执行维护(例如内核升级、硬件维护等)之前, 可以使用 kubectl drain 从节点安全地逐出所有 Pods。 安全的驱逐过程允许 Pod 的容器 体面地终止, 并确保满足指定的 PodDisruptionBudgets。

root@5g-master:~# kubectl  get nodes
NAME        STATUS   ROLES                  AGE   VERSION
5g-master   Ready    control-plane,master   52d   v1.23.4
5g-node     Ready    <none>                 52d   v1.23.4
root@5g-master:~# kubectl drain 5g-node --delete-local-data --force --ignore-daemonsets node/5g-node
 

2. 删除节点,并查看删除情况

root@5g-master:~# kubectl delete node 5g-node
node "5g-node" deleted
root@5g-master:~# kubectl get nodes
NAME        STATUS   ROLES                  AGE   VERSION
5g-master   Ready    control-plane,master   52d   v1.23.4
 

参考:

linux - k8s集群进行删除并添加node节点 - 个人文章 - SegmentFault 思否

安全地清空一个节点 | Kubernetes

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐