kubernetes集群建立后如果想删除一个node节点应该怎么做那?
环境:kubeadm安装集群
[root@node2 ~]# kubeadm version kubeadm version: &version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.0", GitCommit:"91e7b4fd31fcd3d5f436da26c980becec37ceefe", GitTreeState:"clean", BuildDate:"2018-06-27T20:14:41Z", GoVersion:"go1.10.2", Compiler:"gc", Platform:"linux/amd64"}
步骤如下,以我的集群为例
首先查看我的集群node数量
[root@node2 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION node2 Ready master 56d v1.11.0 node3 Ready <none> 56d v1.11.0 node4 Ready <none> 56d v1.11.0 node5 Ready <none> 56d v1.11.0
可以看到我目前拥有4个node节点,我现在删除node5节点
执行命令
kubectl drain node5 --delete-local-data --force --ignore-daemonsets
输入如下,返回值是0所以我就没有管他
node/node5 cordoned WARNING: Ignoring DaemonSet-managed pods: kube-flannel-ds-zmk9q, kube-proxy-8r5jl
执行删除node节点命令
kubectl delete node node5
输出如下
node "node5" deleted [root@node2 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION node2 Ready master 56d v1.11.0 node3 Ready <none> 56d v1.11.0 node4 Ready <none> 56d v1.11.0
master节点执行命令一共为2条,截图如下
可以看到,删除node5节点后再次get nodes就没有node5节点了
上面两条命令执行完成后,在node5节点执行清理命令
在master上面删除node并不会清理node5上面运行的容器,需要在删除节点上面手动运行清理命令
重置所有kubeadm安装状态
kubeadm reset
按y重置状态,重置后docker ps检查容器消失