master和node的ip发生变化
之前部署k8s的时候用的dhcp自动获取ip,因为服务器常年不关,所以也没绑定静态ip
某天公司停电,导致服务器重启后我的机器也重启
原ip已经被其他机器抢占
但是k8s的各种服务配置都使用的固定老的ip
因此,就需要重新设置集群服务器的ip
最初我是手动修改的各个配置文件中旧的IP,发现不行,因为集群创建时创建了一个绑定服务器ip的证书,我们的ip发生变化后,ssl证书会报错
最后发现都不行,还是需要用kubeadm reset掉所有配置文件后重新init
root@lxt-master:~# kubeadm reset --cri-socket /var/run/cri-dockerd.sock
reset成功后

重新init,修改apiserver
kubeadm init --apiserver-advertise-address=192.168.20.126 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.26.3 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=all --cri-socket /var/run/cri-dockerd.sock
执行成功

然后执行
root@lxt-master:~# mkdir -p $HOME/.kube
root@lxt-master:~# sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
cp:是否覆盖'/root/.kube/config'? y
root@lxt-master:~# sudo chown $(id -u):$(id -g) $HOME/.kube/config

这个时候执行get pods还是有点问题,因为我没有指定默认的命名空间
kubectl config set contexts.context.namespace kube-system

如果重新init后查看kubelet状态中有这个报错

重新安装flannel
root@lxt-master:~# kubectl apply -f https://github.com/flannel-io/flannel/releases/latest/download/kube-flannel.yml
namespace/kube-flannel created
serviceaccount/flannel created
clusterrole.rbac.authorization.k8s.io/flannel created
clusterrolebinding.rbac.authorization.k8s.io/flannel created
configmap/kube-flannel-cfg created
daemonset.apps/kube-flannel-ds created
node重新加入集群

注意要先执行kubeadm reset
作者:pr1s0n
出处:https://www.cnblogs.com/pr1s0n/p/17577821.html
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架