原来IP地址
192.168.10.138 k8s-master
192.168.10.139 k8s-node1
192.168.10.140 k8s-node2
新IP地址
192.168.10.148 k8s-master
192.168.10.149 k8s-node1
192.168.10.150 k8s-node2
cp -Rf /etc/kubernetes/ /etc/kubernetes-bak
pki 证书目录保留下来:
rm -rf /etc/kubernetes/pki/apiserver-etcd-client.crt
rm -rf /etc/kubernetes/pki/apiserver-etcd-client.key
rm -rf /etc/kubernetes/pki/apiserver-kubelet-client.crt
rm -rf /etc/kubernetes/pki/apiserver-kubelet-client.key
kubeadm init --apiserver-advertise-address=192.168.10.148 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.6 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16 \
--ignore-preflight-errors=DirAvailable--var-lib-etcd
注意: ignore-preflight-errors=DirAvailable--var-lib-etcd 意思就是使用之前 etcd 的数据,并忽略报错。
master控制节点 恢复操作如下:
[root@k8s-master etcd]# kubeadm init --apiserver-advertise-address=192.168.10.148 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.6 \
--service-cidr=10.96.0.0/12 \
--pod-network-cidr=10.244.0.0/16 \
--ignore-preflight-errors=DirAvailable--var-lib-etcd
node 节点恢复如下:
[root@k8s-node2 var]# kubeadm reset
[root@k8s-node2 var]# kubeadm join 192.168.10.148:6443 --token djig0a.l1ztudn728fd33if \
应用calico 插件
kubectl apply -f calico.yaml
检查如下组件pod的日志,calico日志,coredns日志,kube-proxy日志,kube-apiserver日志
kube-proxy报错处理如下:
ps -ef|grep kube-proxy
kill -9 进程
iptables --flush
标签:kubernetes,--,IP,apiserver,etc,集群,etcd,k8s From: https://www.cnblogs.com/vzhangxk/p/17751688.html