已搭建好的K8S集群遭遇服务器的IP变了,kubectl 完全连不上,报错Error getting node“ err=“node \“master\“ not found,若不想重新再部署一次,只需要修改配置,就可以死灰复燃。
1. cd /etc/kubernetes/manifests, 将etcd.yaml kube-apiserver.yaml里的ip地址替换为新的ip
# oldIP之前IP地址
# newIP 新的IP地址
sed -i 's/oldIP/newIP/g' /etc/kubernetes/manifests/etcd.yaml
sed -i 's/oldIP/newIP/g' /etc/kubernetes/manifests/kube-apiserver.yaml
2 cd $HOME/.kube/cache/discovery/ 把文件夹名字里的IP改成你新IP
3. 更新证书
kubeadm certs renew all
4. 重启docker, kubelet
systemctl restart docker
systemctl restart kubelet
5. 复制配置文件
rm -fr ~/.kube/config
cp /etc/kubernetes/admin.conf ~/.kube/
mv ~/.kube/admin.conf ~/.kube/config
6 重启服务
/sbin/shutdown -r now