Stay Hungry, Stay Foolish

修改K8S节点机器IP后恢复访问

容器 5766℃ 0评论

参照ETCD修改IP配置好ETCD服务,若Harbor仓库所在节点IP也有修改参照修改harbord服务所在机器的IP地址完成仓库配置

修改k8s主节点ip(在控制节点上替换所有节点的ip)
备份k8s的配置文件

cp -R /etc/kubernetes/ /etc/kubernetes-bak

配置新旧IP对应关系并在相应配置文件中进行替换

export oldip1=192.168.123.12
export newip1=192.168.1.12
export oldip2=192.168.123.13
export newip2=192.168.1.13
find /etc/kubernetes -type f | xargs sed -i "s/$oldip1/$newip1/"
find /etc/kubernetes -type f | xargs sed -i "s/$oldip2/$newip2/"
sed -i "s/$oldip1/$newip1/" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
sed -i "s/$oldip2/$newip2/" /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
sed -i "s/$oldip1/$newip1/" /usr/local/bin/kube-scripts/initOS.sh
sed -i "s/$oldip2/$newip2/" /usr/local/bin/kube-scripts/initOS.sh
sed -i "s/$oldip1/$newip1/" /etc/kubernetes/kubeadm-config.yaml
sed -i "s/$oldip2/$newip2/" /etc/kubernetes/kubeadm-config.yaml
sed -i "s/$oldip1/$newip1/" /etc/hosts
sed -i "s/$oldip2/$newip2/" /etc/hosts

删除包含旧IP的证书并重新生成新的证书

rm -f /etc/kubernetes/pki/apiserver*
kubeadm init phase certs all --config /etc/kubernetes/kubeadm-config.yaml

进入k8s的配置文件夹,删除包含旧IP的配置文件并重新生成新的配置文件

cd /etc/kubernetes
rm -f admin.conf kubelet.conf controller-manager.conf scheduler.conf
kubeadm init phase kubeconfig all --config /etc/kubernetes/kubeadm-config.yaml
cp /etc/kubernetes/admin.conf $HOME/.kube/config

重启服务,并查看服务状态

systemctl daemon-reload
systemctl restart docker
systemctl restart kubelet
systemctl status kubelet
喜欢 (74)
取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦


Warning: Use of undefined constant PRC - assumed 'PRC' (this will throw an Error in a future version of PHP) in C:\inetpub\wordpress\wp-content\themes\XHBlog\comments.php on line 17
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址