书籍来源:《CKA/CKAD应试指南:从Docker到Kubernetes完全攻略》
一边学习一边整理老师的课程内容及实验笔记,并与大家分享,侵权即删,谢谢支持!
附上汇总贴:CKA备考实验 | 汇总_热爱编程的通信人的博客-CSDN博客
升级worker的步骤基本上和升级master的步骤是一致的,也是先升级kubeadm,然后把节点设置为维护模式,再升级各个组件,最后升级kubelet和kubectl。
步骤1:首先升级worker上的kubeadm到1.21.1版本。
##########实操验证##########
[root@vms11 ~]# yum install -y kubeadm-1.21.1-0 --disableexcludes=kubernetes
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package kubeadm.x86_64 0:1.20.1-0 will be updated
---> Package kubeadm.x86_64 0:1.21.1-0 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================================================================================================
Package Arch Version Repository Size
========================================================================================================================================================================================================
Updating:
kubeadm x86_64 1.21.1-0 kubernetes 9.5 M
Transaction Summary
========================================================================================================================================================================================================
Upgrade 1 Package
Total download size: 9.5 M
Downloading packages:
No Presto metadata available for kubernetes
e0511a4d8d070fa4c7bcd2a04217c80774ba11d44e4e0096614288189894f1c5-kubeadm-1.21.1-0.x86_64.rpm | 9.5 MB 00:00:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Updating : kubeadm-1.21.1-0.x86_64 1/2
Cleanup : kubeadm-1.20.1-0.x86_64 2/2
Verifying : kubeadm-1.21.1-0.x86_64 1/2
Verifying : kubeadm-1.20.1-0.x86_64 2/2
Updated:
kubeadm.x86_64 0:1.21.1-0
Complete!
[root@vms11 ~]#
步骤2:在vms15上把vms16设置为维护模式。
##########实操验证##########
[root@vms10 ~]# kubectl drain vms11.rhce.cc --ignore-daemonsets
node/vms11.rhce.cc cordoned
WARNING: ignoring DaemonSet-managed Pods: kube-system/kube-proxy-xw7j5
evicting pod kube-system/coredns-7f89b7bc75-jh742
evicting pod kube-system/coredns-545d6fc579-m2vk8
evicting pod kube-system/coredns-545d6fc579-pqh96
pod/coredns-545d6fc579-pqh96 evicted
pod/coredns-545d6fc579-m2vk8 evicted
pod/coredns-7f89b7bc75-jh742 evicted
node/vms11.rhce.cc evicted
[root@vms10 ~]#
步骤3:查看集群状态。
##########实操验证##########
[root@vms10 ~]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
vms10.rhce.cc Ready control-plane,master 3h59m v1.21.1
vms11.rhce.cc Ready,SchedulingDisabled <none> 3h57m v1.20.1
vms12.rhce.cc Ready <none> 3h58m v1.20.1
[root@vms10 ~]#
步骤4:切换到vms16,更新worker上的kubernetes集群组件。
##########实操验证##########
[root@vms11 ~]# kubeadm upgrade node
[upgrade] Reading configuration from the cluster...
[upgrade] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -o yaml'
[preflight] Running pre-flight checks
[preflight] Skipping prepull. Not a control plane node.
[upgrade] Skipping phase. Not a control plane node.
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[upgrade] The configuration for this node was successfully updated!
[upgrade] Now you should go ahead and upgrade the kubelet package using your package manager.
[root@vms11 ~]#
步骤5:更新kubelet和kubectl
##########实操验证##########
[root@vms11 ~]# yum install -y kubelet-1.21.1-0 kubectl-1.21.1-0 --disableexcludes=kubernetes
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package kubectl.x86_64 0:1.20.1-0 will be updated
---> Package kubectl.x86_64 0:1.21.1-0 will be an update
---> Package kubelet.x86_64 0:1.20.1-0 will be updated
---> Package kubelet.x86_64 0:1.21.1-0 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
========================================================================================================================================================================================================
Package Arch Version Repository Size
========================================================================================================================================================================================================
Updating:
kubectl x86_64 1.21.1-0 kubernetes 9.8 M
kubelet x86_64 1.21.1-0 kubernetes 20 M
Transaction Summary
========================================================================================================================================================================================================
Upgrade 2 Packages
Total download size: 30 M
Downloading packages:
No Presto metadata available for kubernetes
(1/2): 3944a45bec4c99d3489993e3642b63972b62ed0a4ccb04cc7655ce0467fddfef-kubectl-1.21.1-0.x86_64.rpm | 9.8 MB 00:00:03
(2/2): c47efa28c5935ed2ffad234e2b402d937dde16ab072f2f6013c71d39ab526f40-kubelet-1.21.1-0.x86_64.rpm | 20 MB 00:00:04
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 6.4 MB/s | 30 MB 00:00:04
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Updating : kubelet-1.21.1-0.x86_64 1/4
Updating : kubectl-1.21.1-0.x86_64 2/4
Cleanup : kubectl-1.20.1-0.x86_64 3/4
Cleanup : kubelet-1.20.1-0.x86_64 4/4
Verifying : kubectl-1.21.1-0.x86_64 1/4
Verifying : kubelet-1.21.1-0.x86_64 2/4
Verifying : kubectl-1.20.1-0.x86_64 3/4
Verifying : kubelet-1.20.1-0.x86_64 4/4
Updated:
kubectl.x86_64 0:1.21.1-0 kubelet.x86_64 0:1.21.1-0
Complete!
[root@vms11 ~]#
[root@vms11 ~]# systemctl daemon-reload ; systemctl restart kubelet
[root@vms11 ~]#
步骤6:在vms15上取消worker的维护模式。
##########实操验证##########
[root@vms10 ~]# kubectl uncordon vms11.rhce.cc
node/vms11.rhce.cc uncordoned
[root@vms10 ~]#
验证:
##########实操验证##########
[root@vms10 ~]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
vms10.rhce.cc Ready control-plane,master 4h2m v1.21.1
vms11.rhce.cc Ready <none> 4h v1.21.1
vms12.rhce.cc Ready <none> 4h v1.20.1
[root@vms10 ~]#
至此worker升级完毕。