k8s kubeadm节点退出集群

一般来说kubeadm reset就行了。但经常unmount 不掉,就docker那块儿的问题,又不方便重启,就需要手动删除。

systemctl stop kubelet &&systemctl disable kubelet
modprobe -r ipip
lsmod
rm -rf /var/lib/kubelet
rm -rf ~/.kube/
rm -rf /etc/kubernetes/
rm -rf /etc/systemd/system/kubelet.service.d
rm -rf /etc/systemd/system/kubelet.service
rm -rf /usr/bin/kube*
rm -rf /etc/cni
rm -rf /opt/cni
rm -rf /var/lib/etcd
rm -rf /var/etcd
#重置网络
ifconfig cni0 down
ifconfig flannel.1 down
ip link del flannel.1
ip link del cni0
rm -rf /var/lib/cni/flannel/* && rm -rf /var/lib/cni/networks/cbr0/* && ip link delete cni0 &&  rm -rf /var/lib/cni/network/cni0/*

节点一直not ready,报错

...Unable to update cni config: No networks found in /etc/cni/net.d
KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized

无法初始化cni

  1. 需要确认服务器上是否有flannel镜像,这个需要手动上传load的。
  2. 需要确认kube-flannel.yaml里的东西是否全部创建,保险操作,重新apply一次。
  3. 退出集群时是否将cni0等网络重置干净了。
    如果报错network: failed to set bridge addr: "cni0" already has an IP address different from x.x.x.x/24之类的,就是网络不干净,是之前解决上一个报错的时候,把master的配置文件/run/flannel/subnet.env复制到node用,还没重置网络的原因。

注:网络这块儿node涉及的配置文件有:

  1. /etc/cni/net.d/
  2. /run/flannel/subnet.env

你可能感兴趣的:(k8s kubeadm节点退出集群)