k8s集群节点更换ip 或者 k8s集群添加新节点

 

1.需求情景:机房网络调整,忽然要回收我k8s集群上一台node节点机器的ip,并调予新的ip到这台机器上,因此有了k8s集群节点更换ip一说;同时,k8s集群节点更换ip也至关于k8s集群添加新节点,他们的操做流程是同样的。node

2.机器更换ip后发生的现象:网络

  (1)查看节点状态,kubectl get node ,仍是原来的节点名称和Ready状态,但事实上它已经不工做了;app

  (2)查看集群pods,运行在已更换ip node节点的pod已处于Terminating,已没法正常工做spa

3.修复node节点可用性rest

  (1)生成新的证书,本节点涉及的变动进程有:etcd,flanneld,kubelet,kube-proxy,因此所有证书须要从新生成,执行脚本:sh k8s_ssl_create_only_one.shserver

     

  (2)拷贝新的证书到各节点的ssl目录下blog

  (3)修改配置文件,把涉及到变动节点ip的配置文件都要修改:sed -i 's/old_ip/new_ip/g' *token

  (4)删除变动节点下ssl证书目录的kubelet-client-*文件:rm -rf kubelet-client-*进程

  (5)从新生成cfg下的*.kubeconfig文件,注意environment.sh下的token是否有所改变:sh environment.sh  【只要证书变动,都要执行一下sh environment.sh】ip

  (6)重启集群各服务:

    sh k8s_master_server_restart.sh restart

    sh k8s_node_server_restart.sh restart

  (7)master审批node节点加入集群:

    kubectl get csr

    

    /usr/local/k8s/kubernetes/bin/kubectl certificate approve XXXXID  【审批加入】

  (8)查看节点:kubectl get nodes

    

    可见旧的节点还在记录中

  (9)删除弃用node节点:kubectl delete node NODE_NAME

    

4.完毕

相关文章
相关标签/搜索