k8s 版本升級與證書續簽方案


 此次升級是 1.15 版本升級至 1.16

升級 master 

查找最新的穩定的1.16版本 (master01 執行)
yum list --showduplicates kubeadm --disableexcludes=kubernetes

升級控制平面節點
升級第一個控制平面節點
1. 在您的第一個控制平面節點上,升級kubeadm (master01 執行)
yum install -y kubeadm-1.16.x-0 --disableexcludes=kubernetes

2.確認下載正常並且具有預期的版本 (master01 執行)
kubeadm version


3.排空控制平面節點: (master01 執行)
kubectl drain $MASTER --ignore-daemonsets


4.在控制平面節點上,運行:(master01 執行)
kubeadm upgrade plan


5.選擇要升級到的版本,然后運行相應的命令。例如:(同時完成證書更新)(master01 執行)
kubeadm upgrade apply   --certificate-renewal   v1.16.0   


6.取消控制平面節點的排空策略 (master01 執行、$MASTER 為master01)
kubectl uncordon $MASTER


另外兩個控制平面: (不然會報錯) (master01 執行)
1. 添加annotate:
kubectl annotate node k8s-master02  kubeadm.alpha.kubernetes.io/cri-socket=/var/run/dockershim.sock   
kubectl annotate node k8s-master03  kubeadm.alpha.kubernetes.io/cri-socket=/var/run/dockershim.sock 


master02 和master03 上分別執行:
kubeadm upgrade node   --certificate-renewal


升級kubelet和kubectl 
1.在所有控制平面節點上升級kubelet和kubectl: (master01、mastere02、master03 上分別執行)
yum install -y kubelet-1.16.0-0 kubectl-1.16.0-0 --disableexcludes=kubernetes


2.重新啟動kubelet (master01、mastere02、master03 上分別執行)
systemctl daemon-reload
systemctl restart kubelet


升級 node 節點

升級工作程序節點: 
1.在所有工作節點上升級kubeadm (所有node 節點上執行)
yum install -y kubeadm-1.16.x-0 --disableexcludes=kubernetes

排空節點
2.通過將節點標記為不可計划並逐出工作負載來准備要維護的節點。跑: ($NODE 為node01)
kubectl drain $NODE --ignore-daemonsets

升級kubelet配置
1.調用以下命令: (所有node 節點上執行)
 kubeadm upgrade node

升級kubelet和kubectl (所有node 節點上執行)
1. 在所有工作節點上升級kubelet和kubectl:

yum install -y kubelet-1.16.x-0 kubectl-1.16.x-0 --disableexcludes=kubernetes


2.重新啟動kubelet (所有node 節點上執行)
systemctl daemon-reload
systemctl restart kubelet

3. 通過將節點標記為可調度來使其重新聯機 
kubectl uncordon $NODE

驗證集群的狀態
kubectl get nodes

重新配置 用戶的配置文件
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

驗證集群證書
kubeadm alpha certs check-expiration

  


免責聲明!

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



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