k8s-kubeasz項目后期添加節點及k8s版本升級


kubeasz后期添加master、node節點

添加master節點

https://github.com/easzlab/kubeasz/blob/master/docs/op/op-master.md

新增kube-master節點大致流程為:tools/03.addmaster.yml
[可選]新節點安裝 chrony 時間同步
新節點預處理 prepare
新節點安裝 docker 服務
新節點安裝 kube-master 服務
新節點安裝 kube-node 服務
新節點安裝網絡插件相關
禁止業務 pod調度到新master節點
更新 node 節點 haproxy 負載均衡並重啟

首先配置 ssh 免密碼登錄新增節點

需要在有ansible的master節點執行:
1、easzctl add-master 192.168.3.143    #添加master;del-master,刪除master

添加node節點

需要在有ansible的master節點執行:
1、easzctl add-node 192.168.3.146      #del-node,刪除node

升級k8s集群

https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.17.md#downloads-for-v1174 #k8s-1.17.4下載地址

https://github.com/easzlab/kubeasz/blob/master/docs/op/upgrade.md #升級k8s集群

升級k8s集群時,不要跳大版本升級,如1.17版本,不要直接升級到1.18,每個大版本的配置參數都可能會不一致;可以升級1.17的小版本

需要在有ansible的master節點執行:
1、cd /usr/local/src

2、ll               #需要有這4個包
kubernetes-client-linux-amd64.tar.gz
kubernetes-node-linux-amd64.tar.gz
kubernetes-server-linux-amd64.tar.gz
kubernetes.tar.gz

3、tar xf kubernetes-server-linux-amd64.tar.gz

4、mkdir /opt/k8s-1.17.{2,4}

5、cd /etc/ansible/bin/

6、cp kubectl kube-apiserver kube-proxy kube-controller-manager kubelet kube-scheduler /opt/k8s-1.17.2/
#將原有二進制文件拷貝到指定目錄下,做備份,當升級錯誤時,還可以做恢復

7、cd /usr/local/src/kubernetes/server/bin

8、cp kubectl kube-apiserver kube-proxy kube-controller-manager kubelet kube-scheduler /opt/k8s-1.17.4/
#備份當前版本

9、cd /opt/k8s-1.17.4

10、cp ./* /etc/ansible/bin/     #替換舊版本二進制程序

11、easzctl upgrade              #升級集群,此升級不會中斷業務應用

12、kubectl get node             #查看是否升級成功

注意事項

如果手動執行替換二進制程序的方式進行集群升級,則需要先把服務停掉(master 5個服務,node 2個服務),如果不停服務,二進制程序是無法被替換的,因為當前進程正在加載這些二進制程序


免責聲明!

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



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