平滑删除k8s node节点
k8s集群投入使用后,由于缩容或者其他原因导致需要删除节点,可以通过以下步骤避免对应用造成影响。首先,查看目前的集群情况> kubectl get noNAMESTATUSROLESAGEVERSIONb-masterReadymaster168mv1.16.1b-node1Ready<none&...
·
k8s集群投入使用后,由于缩容或者其他原因导致需要删除节点,可以通过以下步骤避免对应用造成影响。
首先,查看目前的集群情况
> kubectl get no
NAME STATUS ROLES AGE VERSION
b-master Ready master 168m v1.16.1
b-node1 Ready <none> 165m v1.16.1
b-node2 Ready <none> 165m v1.16.1
现在要删除b-node2,具体操作如下:
- 先执行以下命令将b-node2中的pod驱逐到别的可用节点上。
kubectl drain b-node2 --delete-local-data --force --ignore-daemonsets
- 删除节点
kubectl delete node b-node2
- 此时再查看集群节点信息
> kubectl get no
NAME STATUS ROLES AGE VERSION
b-master Ready master 168m v1.16.1
b-node1 Ready <none> 165m v1.16.1
如果还需要删除节点上的kubernetes信息,需要在node节点上执行如下命令:
> kubeadm reset
> systemctl stop kubelet
> systemctl stop docker
> rm -rf /var/lib/cni/
> rm -rf /var/lib/kubelet/*
> rm -rf /etc/cni/
> ifconfig cni0 down
> ifconfig flannel.1 down
> ifconfig docker0 down
> ip link delete cni0
> ip link delete flannel.1
> systemctl start docker
更多推荐
已为社区贡献4条内容
所有评论(0)