k8s集群擴容與縮容(kubeadm方式部署)



在已有k8s雲平台中誤刪除node節點,然后將誤刪除的節點添加進集群中。如果是一台新服務器必須還要安裝docker和k8s基礎組件!

一、模擬誤刪除node節點

$ kubectl get node
NAME         STATUS   ROLES    AGE     VERSION
k8s-master   Ready    master   157m    v1.19.3
k8s-node1    Ready    <none>   153m    v1.19.3
k8s-node2    Ready    <none>   7m48s   v1.19.3 
$ kubectl drain k8s-node2 --delete-local-data --force --ignore-daemonsets
# 封鎖k8s-node2這個node節點,排干該node節點上的pod資源
$ kubectl delete node k8s-node2
# 刪除k8s-node2這個節點

二、在被刪除的node節點情況集群信息

$ kubeadm reset -f
$ ifconfig cni0 down && ip link delete cni0
$ ifconfig flannel.1 down && ip link delete flannel.1
$ rm -rf /var/lib/cni/

三、在master節點查看集群的token值

查看token值,重點查看token的TTL值

$ kubeadm token list 
TOKEN                     TTL         EXPIRES                     USAGES                   DESCRIPTION                                                EXTRA GROUPS
8g8yh7.cb1kumg8yzv0umsn   23h         2021-02-05T15:11:41+08:00   authentication,signing   <none> 

如果token過期,使用如下命令重新生成:

$ kubeadm token create
m9rrtc.2cm48k5w6ymsprwt

獲取CA證書sha256編碼hash值

$ openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'
7a9a8c79acac93c85d9f52351a0f251249a4ae6fcb48c801cce1c159bb095ebe

也可以重新生產token並獲取hash值,使用如下命令:

$ kubeadm token create --print-join-command
kubeadm join 192.168.54.128:6443 --token mg4o13.4ilr1oi605tj850w     --discovery-token-ca-cert-hash sha256:363b5b8525ddb86f4dc157f059e40c864223add26ef53d0cfc9becc3cbae8ad3

四、將node節點重新添加到k8s集群中

$ kubeadm join 192.168.54.128:6443 --token mg4o13.4ilr1oi605tj850w     --discovery-token-ca-cert-hash sha256:363b5b8525ddb86f4dc157f059e40c864223add26ef53d0cfc9becc3cbae8ad3

重新查看master節點信息

$ kubectl get node
NAME         STATUS   ROLES    AGE    VERSION
k8s-master   Ready    master   179m   v1.19.3
k8s-node1    Ready    <none>   175m   v1.19.3
k8s-node2    Ready    <none>   29m    v1.19.3


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM