k8s服务器修改ip,[转载][K8S] Kubernetes 集群变更IP地址
[K8S] Kubernetes 集群變更IP地址
原文:https://blog.csdn.net/whywhy0716/article/details/92658111
本文基于單節點K8S。
碎碎念
已搭建好的K8S集群遭遇服務器的IP變了,kubectl 完全連不上“你的.舊.IP.地址:6443”,這時候我們最希望的絕對不是重新再部署一次,我們要的只是修改配置,讓已有的環境在新IP下再次煥發生機。另外,為了避免此等悲劇成為常態,為服務器固定IP吧。
以下才是正文
修改/etc/kubernetes/文件夾里的*.conf文件,把這些文件中有舊IP的地方全都替換成你的新IP。
修改$HOME/.kube/config文件,操作同上。
進入$HOME/.kube/cache/discovery/,這里應該有個子文件夾名字是“你的.舊.IP.地址_6443”(如127.0.0.1_6443),把這個文件夾名字里的IP改成你新IP。
重新生成證書然后重啟即可。這步參考了https://github.com/kubernetes/kubeadm/issues/581
我們需要重新生成三套certs&keys(apiserver, apiserver-kubelet-client, and front-proxy-client certs and keys)以防萬一,先把舊證書備份吧。
$ sudo mv /etc/kubernetes/pki/apiserver.key /etc/kubernetes/pki/apiserver.key.old
$ sudo mv /etc/kubernetes/pki/apiserver.crt /etc/kubernetes/pki/apiserver.crt.old
$ sudo mv /etc/kubernetes/pki/apiserver-kubelet-client.crt /etc/kubernetes/pki/apiserver-kubelet-client.crt.old
$ sudo mv /etc/kubernetes/pki/apiserver-kubelet-client.key /etc/kubernetes/pki/apiserver-kubelet-client.key.old
$ sudo mv /etc/kubernetes/pki/front-proxy-client.crt /etc/kubernetes/pki/front-proxy-client.crt.old
$ sudo mv /etc/kubernetes/pki/front-proxy-client.key /etc/kubernetes/pki/front-proxy-client.key.old
然后重新生成它們:
$ sudo kubeadm alpha phase certs apiserver --apiserver-advertise-address
$ sudo kubeadm alpha phase certs apiserver-kubelet-client
$ sudo kubeadm alpha phase certs front-proxy-client
這里我遇到了個小坑,生成證書時候kubeadm試圖去訪問dl.k8s.io,然后很不幸的是被墻了(外企的小伙伴可能沒有這個問題)。解決方案如下:
vim config.yaml
新建一個配置文件config.yaml,然后在文件里寫上:
kind: MasterConfiguration
apiVersion: kubeadm.k8s.io/v1alpha1
kubernetesVersion: v1.10.5
api:
advertiseAddress:
然后再生成apiserver的證書和keys:
$ sudo kubeadm alpha phase certs apiserver --config config.yaml
其他兩套證書不需要advertiseAddress參數,所以修改一下config.yaml:
kind: MasterConfiguration
apiVersion: kubeadm.k8s.io/v1alpha1
kubernetesVersion: v1.10.5
生成證書:
$ sudo kubeadm alpha phase certs apiserver-kubelet-client --config config.yaml
$ sudo kubeadm alpha phase certs front-proxy-client --config config.yaml
重啟:
$ sudo /sbin/shutdown -r now
重啟之后檢查一下狀態,如果一切OK就成功了!
kubectl get nodes
kubectl get ep
kubectl get pods --all-namespaces
點贊
————————————————
版權聲明:本文為CSDN博主「尤栗卡」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/whywhy0716/article/details/92658111
原文:https://www.cnblogs.com/hx215267863/p/12267097.html
總結
以上是生活随笔為你收集整理的k8s服务器修改ip,[转载][K8S] Kubernetes 集群变更IP地址的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: davinci项目服务器无法,集成就能降
- 下一篇: dou分期怎么开通 前提条件还需了解