zoukankan      html  css  js  c++  java
  • k8smaster节点更换ip

    原来的内网IP是 192.168.192.161 更换为 192.168.10.21

    一,处理master节点

    1,备份 /etc/kubernetes 批量替换

    cp -a /etc/kubernetes /etc/kubernetes.bak
    sed -i "s/192.168.192.161/192.168.10.21/g" `grep 192.168.192.161 -rl /etc/kubernetes/`

    2,生成新的config文件(注意我这里因为是kuboard 安装的 所以有 /root/kubeadm-config.yaml 这个配置文件)

     /etc/kubernetes# mv admin.conf admin.conf.bak
    /etc/kubernetes# kubeadm init phase kubeconfig admin   --config=/root/kubeadm-config.yaml
     3,删除老证书,生成新证书(注意我这里因为是kuboard 安装的 所以有 /root/kubeadm-config.yaml 这个配置文件)
    /etc/kubernetes# cd pki
     /etc/kubernetes/pki# mv apiserver.key apiserver.key.bak
    /etc/kubernetes/pki# mv apiserver.crt apiserver.crt.bak
     /etc/kubernetes/pki# kubeadm init phase certs apiserver    --config=/root/kubeadm-config.yaml

    4,重启docker
    /etc/kubernetes# cd ..
    /etc/kubernetes# service docker restart
    /etc/kubernetes# service kubelet restart
    5,将配置文件config输出
    /etc/kubernetes#kubectl get nodes --kubeconfig=admin.conf  #  此时已经是通信成功了

    6,将kubeconfig默认配置文件替换为admin.conf,这样就可以直接使用kubectl get nodes

    /etc/kubernetes# cp admin.conf ~/.kube/config

    二,删除node节点并重新加入

    1,在master上执行删除节点

    kubectl drain k8s-node1 --delete-local-data --force --ignore-daemonset
    kubectl delete node  k8s-node1

    2,在node节点上执行重置操作

    kubeadm reset -f

    systemctl stop kubelet

    systemctl stop docker

    rm -rf /var/lib/cni/

    rm -rf /var/lib/kubelet/*

    rm -rf /etc/cni/

    systemctl restart kubelet

    systemctl restart docker

    3,在master上生成加入命令

    kubeadm token create --print-join-command

    4,在node节点上执行生成的加入命令

  • 相关阅读:
    Studio更新
    gradle 两种更新方法
    Handler基本用法
    使用git克隆指定分支的代码
    Bugly最简单的配置方法
    setTag,getTage复用
    Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2
    Android应用如何跳转到应用市场详情页面
    bzoj千题计划249:bzoj5100: [POI2018]Plan metra
    bzoj千题计划248:bzoj3697: 采药人的路径
  • 原文地址:https://www.cnblogs.com/ligang0357/p/14710252.html
Copyright © 2011-2022 走看看