當(dāng)你的k8s集群出現(xiàn)問題時迟几,比如固定的ip改變了消请,此時需要重新進行初始化。
master
在master執(zhí)行
kubeadm reset(失敗就加-f)
然后一路yes类腮,成功后梯啤,執(zhí)行kubeadm初始化命令
kubeadm init --kubernetes-version v1.20.11 --apiserver-advertise-address 192.168.1.113 --pod-network-cidr=10.244.0.0/16,注意上面的192.168.1.113替換為自己主機的ip存哲,這里沒有意外都會成功,注意七婴,這時你如果直接kubectl get nodes連接失敗祟偷,提示
Unable to connect to the server: dial tcp 192.168.1.109:6443: connect: no route to host
且連接到的ip還是集群之前的ip,這是因為kubeadm reset不會清除之前的config文件打厘,這時需要手動清理修肠,分別執(zhí)行
sudo rm -rf $HOME/.kube/config
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
然后,重新kubectl get nodes你會發(fā)現(xiàn)master已經(jīng)正常
work node
在ndoe節(jié)點執(zhí)行
kubeadm reset
成功后户盯,將master的kubeadm join命令復(fù)制到node節(jié)點并執(zhí)行嵌施,成功后執(zhí)行
kubectl get nodes
你會發(fā)現(xiàn)之前master一樣的問題,同理莽鸭,此時需要將master的config文件復(fù)制到node的/root/.kube/config下面
至此吗伤,大功告成。
刪除節(jié)點
# 首先驅(qū)逐要刪除節(jié)點(假設(shè)節(jié)點名為k8s-node1)上的pods(master節(jié)點執(zhí)行)
kubectl drain ubuntu --delete-local-data --force --ignore-daemonsets
# 然后執(zhí)行刪除(master節(jié)點執(zhí)行)
kubectl delete node ubuntu
# 最后在刪除的節(jié)點機器上執(zhí)行
kubeadm reset