https://my.oschina.net/u/3390908/blog/16497641、查看原来node[root@lab2 ~]# kubectl get noNAME STATUS ROLES AGE VERSION10.1.1.111 Ready node 8d v1.11.010.1.1.68 Ready node 8d v1.11.010.1.1.8 Ready master 8d v1.11.02、修改--hostname-override=lab1[root@lab2 ~]# vi /etc/kubernetes/kubeletKUBELET_HOSTNAME="--hostname-override=lab1"KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=registry.cn-hangzhou.aliyuncs.com/google_containers/pause-amd64:3.1"KUBELET_CONFIG="--config=/etc/kubernetes/kubelet-config.yml"KUBELET_ARGS="--bootstrap-kubeconfig=/etc/kubernetes/kubelet-bootstrap.conf --kubeconfig=/etc/kubernetes/kubelet.conf --cert-dir=/etc/kubernetes/pki --network-plugin=cni --cni-bin-dir=/opt/cni/bin --cni-conf-dir=/etc/cni/net.d --cluster-dns=10.96.0.10 --cluster-domain=cluster.local "3、重启kubelet 等三分钟查看[root@lab2 ~]# systemctl daemon-reload && systemctl restart kubelet[root@lab2 ~]# kubectl get noNAME STATUS ROLES AGE VERSION10.1.1.111 Ready node 8d v1.11.010.1.1.68 NotReady node 8d v1.11.010.1.1.8 Ready master 8d v1.11.0lab1 NotReady9m v1.11.0lab2 NotReady 7m v1.11.0lab3 NotReady 7m v1.11.04、再重启kubelet 等三分钟查看[root@lab2 ~]# systemctl daemon-reload && systemctl restart kubelet[root@lab2 ~]# kubectl get noNAME STATUS ROLES AGE VERSION10.1.1.111 NotReady node 8d v1.11.010.1.1.62 NotReady 8m v1.11.010.1.1.68 NotReady node 8d v1.11.010.1.1.8 NotReady master 8d v1.11.0lab1 Ready 13m v1.11.0lab2 Ready 12m v1.11.0lab3 Ready 12m v1.11.0停掉所有node节点的 kubelet[root@lab3 ~]# systemctl stop kubelet删除 除了master之外的所有node[root@lab1 ~]# kubectl delete no 10.1.1.8[root@lab1 ~]# kubectl delete no 10.1.1.68[root@lab1 ~]# kubectl delete no 10.1.1.111[root@lab1 ~]# kubectl delete no lab2[root@lab1 ~]# kubectl delete no lab3删除之前通过csr请求后产生的证书、秘钥、kubelet.conf文件[root@lab1 ~]# rm -rf /etc/kubernetes/kubelet.conf[root@lab1 ~]# rm -rf /etc/kubernetes/pki/kubelet*重启所有节点的kubelet[root@lab1 ~]# systemctl restart kubelet获取csr[root@lab1 ~]# kubectl get csrNAME AGE REQUESTOR CONDITIONnode-csr-W8jDxg0LEZZw6U8V1WudhEBRP0qt4ybPSJ-P8XfDzlo 7s kubelet-bootstrap Pendingnode-csr-rgnoMPuDdtvfoogsY_zbf1R3KMU_B8M8cBv75AHw8fE 10s kubelet-bootstrap Pendingnode-csr-vO6qQvzlI974qUHXVpPu6kMP4eBfKMcBECwqY7xWYu4 17s kubelet-bootstrap Pending通过证书请求[root@lab1 ~]# kubectl certificate approve node-csr-W8jDxg0LEZZw6U8V1WudhEBRP0qt4ybPSJ-P8XfDzlo[root@lab1 ~]# kubectl certificate approve node-csr-rgnoMPuDdtvfoogsY_zbf1R3KMU_B8M8cBv75AHw8fE[root@lab1 ~]# kubectl certificate approve node-csr-vO6qQvzlI974qUHXVpPu6kMP4eBfKMcBECwqY7xWYu45、设置角色[root@lab2 ~]# kubectl label nodes lab1 node-role.kubernetes.io/master=[root@lab2 ~]# [root@lab2 ~]# kubectl label nodes lab2 node-role.kubernetes.io/node=node/lab2 labeled[root@lab2 ~]# kubectl label nodes lab3 node-role.kubernetes.io/node=node/lab3 labeled# 设置 master 一般情况下不接受负载kubectl taint nodes lab1 node-role.kubernetes.io/master=true:NoSchedule[root@lab1 ~]# kubectl get nodesNAME STATUS ROLES AGE VERSIONlab1 Ready 15m v1.11.0lab2 Ready 14m v1.11.0lab3 Ready 14m v1.11.06、解决后遗症执行:[root@lab1 coredns]# kubectl delete -f coredns.yaml现象:[root@lab2 k8s]# kubectl get pods -n kube-systemNAME READY STATUS RESTARTS AGEcoredns-6c65fc5cbb-7xvzs 0/1 ContainerCreating 0 2mcoredns-6c65fc5cbb-kh4zg 0/1 ContainerCreating 0 2m原因:修改node名称后的遗留症状查看pod日志,最后部分[root@lab2 k8s]# kubectl describe po coredns-6c65fc5cbb-7xvzs -n kube-system"cni0" already has an IP address different from 10.244.5.1/24解决:所有节点执行如下:rm -rf /var/lib/cni/flannel/* && rm -rf /var/lib/cni/networks/cbr0/* && ip link delete cni0rm -rf /var/lib/cni/networks/cni0/*