云原生微服务K8s容器编排第五章之平滑升级k8s集群

网友投稿 290 2022-09-08

云原生微服务K8s容器编排第五章之平滑升级k8s集群

一、服务器环境

服务器角色

主机IP

k8s-deploy部署机

10.0.7.27

k8s-master1

10.0.7.21

k8s-master2

10.0.7.22

k8s-master3

10.0.7.23

k8s-slave1

10.0.7.24

k8s-slave2

10.0.7.25

k8s-slave3

10.0.7.26

二、升级需求

k8s-v1.24.2  升级至  k8s-v1.24.3

注意:小版本升级可采用二进制覆盖的方式

大版本迁移建议二进制迁移

三、准备升级包

k8s部署机操作

cd /usr/local/srcwget -c xf kubernetes-server-linux-amd64.tar.gzcd kubernetes/server/bin/

四、升级Master节点

4.1 Node节点注释调度

所有Node节点操作,以升级k8s-Master3-10.0.7.23为例

vim /etc/kube-lb/conf/kube-lb.conf #server 10.0.7.23:6443 max_fails=2 fail_timeout=3s; systemctl reload kube-lb.service

4.2 K8s-Master3关服务

systemctl stop kube-proxy kube-scheduler kubelet kube-apiserver kube-controller-manager

4.3 K8s-部署机传送包

scp kube-proxy kube-scheduler kubelet kube-apiserver kube-controller-manager kubectl root@10.0.7.23:/usr/local/bin

4.4 k8s-Master3启动服务

systemctl start kube-proxy kube-scheduler kubelet kube-apiserver kube-controller-manager

4.5 部署机检查升级情况

[root@k8s-deploy bin]# kubectl get nodesNAME STATUS ROLES AGE VERSION10.0.7.21 Ready,SchedulingDisabled master 9h v1.24.210.0.7.22 Ready,SchedulingDisabled master 9h v1.24.210.0.7.23 NotReady,SchedulingDisabled master 137m v1.24.310.0.7.24 Ready node 10h v1.24.210.0.7.25 Ready node 10h v1.24.210.0.7.26 Ready node 131m v1.24.2

4.6 Node节点开启Master调度

所有Node节点操作

vim /etc/kube-lb/conf/kube-lb.conf server 10.0.7.23:6443 max_fails=2 fail_timeout=3s; # 打开此行注释 systemctl reload kube-lb.service

4.7 剩余Master升级

操作流程同理:

1、所有Node节点注释K8s-Master1、K8s-Master2的调度

2、关闭K8s-Master1、K8s-Master2服务

3、K8s部署机拷贝二进制文件到K8s-Master1、K8s-Master2

4、启动K8s-Master1、K8s-Master2服务

5、部署机检查升级情况

6、Node节点开启K8s-Master1、K8s-Master2调度

五、升级Nnode

5.1 Node节点驱逐pod

这里以操作node3为例

kubectl drain 10.0.7.26 --ignore-daemonsets --force

5.2 部署机检查

[root@k8s-deploy bin]# kubectl get nodesNAME STATUS ROLES AGE VERSION10.0.7.21 Ready,SchedulingDisabled master 10h v1.24.310.0.7.22 Ready,SchedulingDisabled master 10h v1.24.310.0.7.23 Ready,SchedulingDisabled master 156m v1.24.310.0.7.24 Ready node 10h v1.24.210.0.7.25 Ready node 10h v1.24.210.0.7.26 Ready,SchedulingDisabled node 150m v1.24.2

5.3 驱逐机关闭服务

node3操作

systemctl stop kubelet kube-proxy

5.4 K8s-部署机传送包

scp kubelet kube-proxy kubectl @10.0.7.26:/usr/local/bin

5.5 驱逐机启动服务

systemctl start kubelet kube-proxy

5.6 K8s-部署机检查升级

[root@k8s-deploy bin]# kubectl get nodes NAME STATUS ROLES AGE VERSION10.0.7.21 Ready,SchedulingDisabled master 10h v1.24.310.0.7.22 Ready,SchedulingDisabled master 10h v1.24.310.0.7.23 Ready,SchedulingDisabled master 161m v1.24.310.0.7.24 Ready node 10h v1.24.210.0.7.25 Ready node 10h v1.24.210.0.7.26 Ready,SchedulingDisabled node 155m v1.24.3

5.7 驱逐机启动调度

kubectl uncordon 10.0.7.26

5.8 K8s-部署机检查调度

kubectl get nodes NAME STATUS ROLES AGE VERSION10.0.7.21 Ready,SchedulingDisabled master 10h v1.24.310.0.7.22 Ready,SchedulingDisabled master 10h v1.24.310.0.7.23 Ready,SchedulingDisabled master 162m v1.24.310.0.7.24 Ready node 10h v1.24.210.0.7.25 Ready node 10h v1.24.210.0.7.26 Ready node 157m v1.24.3

5.9 剩余Master升级

操作流程同理:

1、Node节点驱逐pod

2、驱逐机关闭服务

3、K8s-部署机传送包

4、驱逐机启动调度

5、部署机检查升级情况

注意:如也需升级Containerd,升级方式和操作流程与Node的升级方式和操作方法一致。

六、同步升级的包到kubeasz

\cp kube-apiserver kube-controller-manager kube-scheduler kube-proxy kubelet kubectl /etc/kubeasz/bin/

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:#Sealos#使用工具部署kubernetesV1.24.0
下一篇:把握校园市场中四个基本营销思维,玩转校园营销!
相关文章

 发表评论

暂时没有评论,来抢沙发吧~