k8s删除node节点

一、删除node节点

1、先查看一下这个node节点上的nodes信息

kubectl get nodes

2、驱逐此node节点上的pod

kubectl drain node01 --delete-local-data --force --ignore-daemonsets

3、删除这个node节点

kubectl delete nodes node01

4、然后在node01这个节点上执行如下命令:

 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
 ​
 systemctl start kubelet

如果不做上面的操作的话会导致这个节点上的pod无法启动,具体报错信息为:networkPlugin cni failed to set up pod "alertmanager-main-1_monitoring" network: failed to set bridge ad has an IP address different from 10.244.5.1/24 ,意思是已经集群网络cni已经有一个不同于10.244.51.1/24 的网络地址,所以需要执行上述命令重置节点网络。


二、重新加入这个node节点

节点加入集群的命令格式:kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash>

默认token的有效期为24小时,过期后,该token不可用,解决方法如下:

重新生成新的token ==> kubeadm token create 

1.查看当前的token列表

kubeadm token list

2.重新生成新的token

kubeadm token create

3.再次查看当前的token列表

kubeadm token list

4.获取ca证书sha256编码hash值

openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'

5.节点加入集群

kubeadm join 39.96.46.96:6443 --token 369tcl.oe4punpoj9gaijh7(**新的token**) --discovery-token-ca-cert-hash sha256:7ae10591aa593c2c36fb965d58964a84561e9ccd416ffe7432550a0d0b7e4f90(**ca证书sha256编码hash值**) 

再次在master节点查看node发现node已加入到集群。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王雀跃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值