升级过程
升级步骤
- 升级控制平面control plane
- 升级集群节点work node
- 升级客户端工具,如kubelet
具体过程
-
升级kubeadm kubelet kubectl
官方地址
https://v1-22.docs.kubernetes.io/zh/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/
升级过程,如下
- 升级主控制面板节点
- 升级其它他控制节点
- 升级work node
- 以下过程是以CentOS为例
如果没有看到1.22的版本,请执行yum update或者升级kubenetes.repo,具体请参考官方文档
<root@TEST-K8S-CP1 ~># yum list --showduplicates kubeadm --disableexcludes=kubernetes Loaded plugins: fastestmirror Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast Determining fastest mirrors * elrepo: hkg.mirror.rackspace.com Installed Packages kubeadm.x86_64 1.18.5-0 @kubernetesAvailable Packages kubeadm.x86_64 1.6.0-0 kubernetes kubeadm.x86_64 1.6.1-0 kubernetes kubeadm.x86_64 1.6.2-0 kubernetes kubeadm.x86_64 1.6.3-0 kubernetes kubeadm.x86_64 1.6.4-0 kubernetes kubeadm.x86_64 1.6.5-0 kubernetes kubeadm.x86_64 1.6.6-0 kubernetes kubeadm.x86_64 1.6.7-0 kubernetes kubeadm.x86_64 1.6.8-0 kubernetes kubeadm.x86_64 1.6.9-0 kubernetes kubeadm.x86_64 1.6.10-0 kubernetes kubeadm.x86_64 1.6.11-0 kubernetes kubeadm.x86_64 1.6.12-0 kubernetes kubeadm.x86_64 1.6.13-0 kubernetes kubeadm.x86_64 1.7.0-0 kubernetes kubeadm.x86_64 1.7.1-0 kubernetes kubeadm.x86_64 1.7.2-0 kubernetes kubeadm.x86_64 1.7.3-1 kubernetes kubeadm.x86_64 1.7.4-0 kubernetes kubeadm.x86_64 1.7.5-0 kubernetes kubeadm.x86_64 1.7.6-1 kubernetes kubeadm.x86_64 1.7.7-1 kubernetes kubeadm.x86_64 1.7.8-1 kubernetes kubeadm.x86_64 1.7.9-0 kubernetes kubeadm.x86_64 1.7.10-0 kubernetes kubeadm.x86_64 1.7.11-0 kubernetes kubeadm.x86_64 1.7.14-0 kubernetes kubeadm.x86_64 1.7.15-0 kubernetes kubeadm.x86_64 1.7.16-0 kubernetes kubeadm.x86_64 1.8.0-0 kubernetes kubeadm.x86_64 1.8.0-1 kubernetes kubeadm.x86_64 1.8.1-0 kubernetes kubeadm.x86_64 1.8.2-0 kubernetes kubeadm.x86_64 1.8.3-0 kubernetes kubeadm.x86_64 1.8.4-0 kubernetes kubeadm.x86_64 1.8.5-0 kubernetes kubeadm.x86_64 1.8.6-0 kubernetes kubeadm.x86_64 1.8.7-0 kubernetes kubeadm.x86_64 1.8.8-0 kubernetes kubeadm.x86_64 1.8.9-0 kubernetes kubeadm.x86_64 1.8.10-0 kubernetes kubeadm.x86_64 1.8.11-0 kubernetes kubeadm.x86_64 1.8.12-0 kubernetes kubeadm.x86_64 1.8.13-0 kubernetes kubeadm.x86_64 1.8.14-0 kubernetes kubeadm.x86_64 1.8.15-0 kubernetes kubeadm.x86_64 1.9.0-0 kubernetes kubeadm.x86_64 1.9.1-0 kubernetes kubeadm.x86_64 1.9.2-0 kubernetes kubeadm.x86_64 1.9.3-0 kubernetes kubeadm.x86_64 1.9.4-0 kubernetes kubeadm.x86_64 1.9.5-0 kubernetes kubeadm.x86_64 1.9.6-0 kubernetes kubeadm.x86_64 1.9.7-0 kubernetes kubeadm.x86_64 1.9.8-0 kubernetes kubeadm.x86_64 1.9.9-0 kubernetes kubeadm.x86_64 1.9.10-0 kubernetes kubeadm.x86_64 1.9.11-0 kubernetes kubeadm.x86_64 1.10.0-0 kubernetes kubeadm.x86_64 1.10.1-0 kubernetes kubeadm.x86_64 1.10.2-0 kubernetes kubeadm.x86_64 1.10.3-0 kubernetes kubeadm.x86_64 1.10.4-0 kubernetes kubeadm.x86_64 1.10.5-0 kubernetes kubeadm.x86_64 1.10.6-0 kubernetes kubeadm.x86_64 1.10.7-0 kubernetes kubeadm.x86_64 1.10.8-0 kubernetes kubeadm.x86_64 1.10.9-0 kubernetes kubeadm.x86_64 1.10.10-0 kubernetes kubeadm.x86_64 1.10.11-0 kubernetes kubeadm.x86_64 1.10.12-0 kubernetes kubeadm.x86_64 1.10.13-0 kubernetes kubeadm.x86_64 1.11.0-0 kubernetes kubeadm.x86_64 1.11.1-0 kubernetes kubeadm.x86_64 1.11.2-0 kubernetes kubeadm.x86_64 1.11.3-0 kubernetes kubeadm.x86_64 1.11.4-0 kubernetes kubeadm.x86_64 1.11.5-0 kubernetes kubeadm.x86_64 1.11.6-0 kubernetes kubeadm.x86_64 1.11.7-0 kubernetes kubeadm.x86_64 1.11.8-0 kubernetes kubeadm.x86_64 1.11.9-0 kubernetes kubeadm.x86_64 1.11.10-0 kubernetes kubeadm.x86_64 1.12.0-0 kubernetes kubeadm.x86_64 1.12.1-0 kubernetes kubeadm.x86_64 1.12.2-0 kubernetes kubeadm.x86_64 1.12.3-0 kubernetes kubeadm.x86_64 1.12.4-0 kubernetes kubeadm.x86_64 1.12.5-0 kubernetes kubeadm.x86_64 1.12.6-0 kubernetes kubeadm.x86_64 1.12.7-0 kubernetes kubeadm.x86_64 1.12.8-0 kubernetes kubeadm.x86_64 1.12.9-0 kubernetes kubeadm.x86_64 1.12.10-0 kubernetes kubeadm.x86_64 1.13.0-0 kubernetes kubeadm.x86_64 1.13.1-0 kubernetes kubeadm.x86_64 1.13.2-0 kubernetes kubeadm.x86_64 1.13.3-0 kubernetes kubeadm.x86_64 1.13.4-0 kubernetes kubeadm.x86_64 1.13.5-0 kubernetes kubeadm.x86_64 1.13.6-0 kubernetes kubeadm.x86_64 1.13.7-0 kubernetes kubeadm.x86_64 1.13.8-0 kubernetes kubeadm.x86_64 1.13.9-0 kubernetes kubeadm.x86_64 1.13.10-0 kubernetes kubeadm.x86_64 1.13.11-0 kubernetes kubeadm.x86_64 1.13.12-0 kubernetes kubeadm.x86_64 1.14.0-0 kubernetes kubeadm.x86_64 1.14.1-0 kubernetes kubeadm.x86_64 1.14.2-0 kubernetes kubeadm.x86_64 1.14.3-0 kubernetes kubeadm.x86_64 1.14.4-0 kubernetes kubeadm.x86_64 1.14.5-0 kubernetes kubeadm.x86_64 1.14.6-0 kubernetes kubeadm.x86_64 1.14.7-0 kubernetes kubeadm.x86_64 1.14.8-0 kubernetes kubeadm.x86_64 1.14.9-0 kubernetes kubeadm.x86_64 1.14.10-0 kubernetes kubeadm.x86_64 1.15.0-0 kubernetes kubeadm.x86_64 1.15.1-0 kubernetes kubeadm.x86_64 1.15.2-0 kubernetes kubeadm.x86_64 1.15.3-0 kubernetes kubeadm.x86_64 1.15.4-0 kubernetes kubeadm.x86_64 1.15.5-0 kubernetes kubeadm.x86_64 1.15.6-0 kubernetes kubeadm.x86_64 1.15.7-0 kubernetes kubeadm.x86_64 1.15.8-0 kubernetes kubeadm.x86_64 1.15.9-0 kubernetes kubeadm.x86_64 1.15.10-0 kubernetes kubeadm.x86_64 1.15.11-0 kubernetes kubeadm.x86_64 1.15.12-0 kubernetes kubeadm.x86_64 1.16.0-0 kubernetes kubeadm.x86_64 1.16.1-0 kubernetes kubeadm.x86_64 1.16.2-0 kubernetes kubeadm.x86_64 1.16.3-0 kubernetes kubeadm.x86_64 1.16.4-0 kubernetes kubeadm.x86_64 1.16.5-0 kubernetes kubeadm.x86_64 1.16.6-0 kubernetes kubeadm.x86_64 1.16.7-0 kubernetes kubeadm.x86_64 1.16.8-0 kubernetes kubeadm.x86_64 1.16.9-0 kubernetes kubeadm.x86_64 1.16.10-0 kubernetes kubeadm.x86_64 1.16.11-0 kubernetes kubeadm.x86_64 1.16.11-1 kubernetes kubeadm.x86_64 1.16.12-0 kubernetes kubeadm.x86_64 1.16.13-0 kubernetes kubeadm.x86_64 1.16.14-0 kubernetes kubeadm.x86_64 1.16.15-0 kubernetes kubeadm.x86_64 1.17.0-0 kubernetes kubeadm.x86_64 1.17.1-0 kubernetes kubeadm.x86_64 1.17.2-0 kubernetes kubeadm.x86_64 1.17.3-0 kubernetes kubeadm.x86_64 1.17.4-0 kubernetes kubeadm.x86_64 1.17.5-0 kubernetes kubeadm.x86_64 1.17.6-0 kubernetes kubeadm.x86_64 1.17.7-0 kubernetes kubeadm.x86_64 1.17.7-1 kubernetes kubeadm.x86_64 1.17.8-0 kubernetes kubeadm.x86_64 1.17.9-0 kubernetes kubeadm.x86_64 1.17.11-0 kubernetes kubeadm.x86_64 1.17.12-0 kubernetes kubeadm.x86_64 1.17.13-0 kubernetes kubeadm.x86_64 1.17.14-0 kubernetes kubeadm.x86_64 1.17.15-0 kubernetes kubeadm.x86_64 1.17.16-0 kubernetes kubeadm.x86_64 1.17.17-0 kubernetes kubeadm.x86_64 1.18.0-0 kubernetes kubeadm.x86_64 1.18.1-0 kubernetes kubeadm.x86_64 1.18.2-0 kubernetes kubeadm.x86_64 1.18.3-0 kubernetes kubeadm.x86_64 1.18.4-0 kubernetes kubeadm.x86_64 1.18.4-1 kubernetes kubeadm.x86_64 1.18.5-0 kubernetes kubeadm.x86_64 1.18.6-0 kubernetes kubeadm.x86_64 1.18.8-0 kubernetes kubeadm.x86_64 1.18.9-0 kubernetes kubeadm.x86_64 1.18.10-0 kubernetes kubeadm.x86_64 1.18.12-0 kubernetes kubeadm.x86_64 1.18.13-0 kubernetes kubeadm.x86_64 1.18.14-0 kubernetes kubeadm.x86_64 1.18.15-0 kubernetes kubeadm.x86_64 1.18.16-0 kubernetes kubeadm.x86_64 1.19.0-0 kubernetes kubeadm.x86_64 1.19.1-0 kubernetes kubeadm.x86_64 1.19.2-0 kubernetes kubeadm.x86_64 1.19.3-0 kubernetes kubeadm.x86_64 1.19.4-0 kubernetes kubeadm.x86_64 1.19.5-0 kubernetes kubeadm.x86_64 1.19.6-0 kubernetes kubeadm.x86_64 1.19.7-0 kubernetes kubeadm.x86_64 1.19.8-0 kubernetes kubeadm.x86_64 1.20.0-0 kubernetes kubeadm.x86_64 1.20.1-0 kubernetes kubeadm.x86_64 1.20.2-0 kubernetes kubeadm.x86_64 1.20.4-0 kubernetes
- 其中1.22是主版本,1.22-x-0,其中x代表是主版本的patch版本
应逐个升级控制平面的节点,并且CP的所有的节点都具有/etc/kubernetes/admin.conf文件<root@TEST-K8S-CP1 ~># yum install -y kubeadm-1.22.6-0 kubelet-1.22.6-0 kubectl-1.22.6-0 --disableexcludes=kubernetes Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * elrepo: hkg.mirror.rackspace.com Resolving Dependencies --> Running transaction check ---> Package kubeadm.x86_64 0:1.18.5-0 will be updated ---> Package kubeadm.x86_64 0:1.22.6-0 will be an update --> Processing Dependency: cri-tools >= 1.19.0 for package: kubeadm-1.22.6-0.x86_64 ---> Package kubectl.x86_64 0:1.18.5-0 will be updated ---> Package kubectl.x86_64 0:1.22.6-0 will be an update ---> Package kubelet.x86_64 0:1.18.5-0 will be updated ---> Package kubelet.x86_64 0:1.22.6-0 will be an update --> Processing Dependency: kubernetes-cni >= 0.8.7 for package: kubelet-1.22.6-0.x86_64 --> Running transaction check ---> Package cri-tools.x86_64 0:1.13.0-0 will be updated ---> Package cri-tools.x86_64 0:1.19.0-0 will be an update ---> Package kubernetes-cni.x86_64 0:0.8.6-0 will be updated ---> Package kubernetes-cni.x86_64 0:0.8.7-0 will be an update --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================================================================== Package Arch Version Repository Size ========================================================================================================================================================================================Updating: kubeadm x86_64 1.22.6-0 kubernetes 9.3 M kubectl x86_64 1.22.6-0 kubernetes 9.7 M kubelet x86_64 1.22.6-0 kubernetes 20 M Updating for dependencies: cri-tools x86_64 1.19.0-0 kubernetes 5.7 M kubernetes-cni x86_64 0.8.7-0 kubernetes 19 M Transaction Summary ========================================================================================================================================================================================Upgrade 3 Packages (+2 Dependent packages) Total download size: 64 M Downloading packages: Delta RPMs disabled because /usr/bin/applydeltarpm not installed. (1/5): 67ffa375b03cea72703fe446ff00963919e8fce913fbc4bb86f06d1475a6bdf9-cri-tools-1.19.0-0.x86_64.rpm | 5.7 MB 00:00:00 (2/5): 65a4f17dfa01e53887938843f724e7c01d7c92402d7c6f48e77d2b34ac6b8c77-kubectl-1.22.6-0.x86_64.rpm | 9.7 MB 00:00:00 (3/5): de7b06aadd38f954f3f609f5a71d1e987ca558378c3fdbd97f0ce9a5c0cbe7b2-kubeadm-1.22.6-0.x86_64.rpm | 9.3 MB 00:00:01 (4/5): ad874e12e3aeab2b36653ea9a7e49b8fdd4586a1879cd05356b5ea17b763f021-kubelet-1.22.6-0.x86_64.rpm | 20 MB 00:00:02 (5/5): db7cb5cb0b3f6875f54d10f02e625573988e3e91fd4fc5eef0b1876bb18604ad-kubernetes-cni-0.8.7-0.x86_64.rpm | 19 MB 00:00:03 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Total 13 MB/s | 64 MB 00:00:04 Running transaction check Running transaction test Transaction test succeeded Running transaction Updating : kubelet-1.22.6-0.x86_64 1/10 Updating : kubernetes-cni-0.8.7-0.x86_64 2/10 Updating : kubectl-1.22.6-0.x86_64 3/10 Updating : cri-tools-1.19.0-0.x86_64 4/10 Updating : kubeadm-1.22.6-0.x86_64 5/10 Cleanup : kubeadm-1.18.5-0.x86_64 6/10 Cleanup : kubelet-1.18.5-0.x86_64 7/10 Cleanup : kubernetes-cni-0.8.6-0.x86_64 8/10 Cleanup : cri-tools-1.13.0-0.x86_64 9/10 Cleanup : kubectl-1.18.5-0.x86_64 10/10 Verifying : cri-tools-1.19.0-0.x86_64 1/10 Verifying : kubernetes-cni-0.8.7-0.x86_64 2/10 Verifying : kubelet-1.22.6-0.x86_64 3/10 Verifying : kubeadm-1.22.6-0.x86_64 4/10 Verifying : kubectl-1.22.6-0.x86_64 5/10 Verifying : kubectl-1.18.5-0.x86_64 6/10 Verifying : kubeadm-1.18.5-0.x86_64 7/10 Verifying : cri-tools-1.13.0-0.x86_64 8/10 Verifying : kubelet-1.18.5-0.x86_64 9/10 Verifying : kubernetes-cni-0.8.6-0.x86_64 10/10 Updated: kubeadm.x86_64 0:1.22.6-0 kubectl.x86_64 0:1.22.6-0 kubelet.x86_64 0:1.22.6-0 Dependency Updated: cri-tools.x86_64 0:1.19.0-0 kubernetes-cni.x86_64 0:0.8.7-0 Complete!
- 验证kubeadm的版本信息,如下
<root@TEST-K8S-CP1 ~># kubeadm version kubeadm version: &version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.6", GitCommit:"f59f5c2fda36e4036b49ec027e556a15456108f0", GitTreeState:"clean", BuildDate:"2022-01-19T17:31:49Z", GoVersion:"go1.16.12", Compiler:"gc", Platform:"linux/amd64"}
- 验证kubectl kubelet版本信息
<root@TEST-K8S-CP1 ~># kubectl version Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.6", GitCommit:"f59f5c2fda36e4036b49ec027e556a15456108f0", GitTreeState:"clean", BuildDate:"2022-01-19T17:33:06Z", GoVersion:"go1.16.12", Compiler:"gc", Platform:"linux/amd64"} The connection to the server localhost:8080 was refused - did you specify the right host or port? <root@TEST-K8S-CP1 ~># kubelet --version Kubernetes v1.22.6
- 升级work node
<root@TEST-K8S-WN1 ~># yum install -y kubeadm-1.22.6-0 kubelet-1.22.6-0 kubectl-1.22.6-0 --disableexcludes=kubernetes Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * elrepo: hkg.mirror.rackspace.com Resolving Dependencies --> Running transaction check ---> Package kubeadm.x86_64 0:1.22.6-0 will be installed --> Processing Dependency: kubernetes-cni >= 0.8.6 for package: kubeadm-1.22.6-0.x86_64 ---> Package kubectl.x86_64 0:1.22.6-0 will be installed ---> Package kubelet.x86_64 0:1.22.6-0 will be installed --> Running transaction check ---> Package kubernetes-cni.x86_64 0:0.8.7-0 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================================================================== Package Arch Version Repository Size ========================================================================================================================================================================================Installing: kubeadm x86_64 1.22.6-0 kubernetes 9.3 M kubectl x86_64 1.22.6-0 kubernetes 9.7 M kubelet x86_64 1.22.6-0 kubernetes 20 M Installing for dependencies: kubernetes-cni x86_64 0.8.7-0 kubernetes 19 M Transaction Summary ========================================================================================================================================================================================Install 3 Packages (+1 Dependent package) Total download size: 58 M Installed size: 259 M Downloading packages: (1/4): de7b06aadd38f954f3f609f5a71d1e987ca558378c3fdbd97f0ce9a5c0cbe7b2-kubeadm-1.22.6-0.x86_64.rpm | 9.3 MB 00:00:00 (2/4): 65a4f17dfa01e53887938843f724e7c01d7c92402d7c6f48e77d2b34ac6b8c77-kubectl-1.22.6-0.x86_64.rpm | 9.7 MB 00:00:01 (3/4): db7cb5cb0b3f6875f54d10f02e625573988e3e91fd4fc5eef0b1876bb18604ad-kubernetes-cni-0.8.7-0.x86_64.rpm | 19 MB 00:00:02 (4/4): ad874e12e3aeab2b36653ea9a7e49b8fdd4586a1879cd05356b5ea17b763f021-kubelet-1.22.6-0.x86_64.rpm | 20 MB 00:00:03 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Total 13 MB/s | 58 MB 00:00:04 Running transaction check Running transaction test Transaction test succeeded Running transaction Installing : kubernetes-cni-0.8.7-0.x86_64 1/4 Installing : kubelet-1.22.6-0.x86_64 2/4 Installing : kubectl-1.22.6-0.x86_64 3/4 Installing : kubeadm-1.22.6-0.x86_64 4/4 Verifying : kubeadm-1.22.6-0.x86_64 1/4 Verifying : kubectl-1.22.6-0.x86_64 2/4 Verifying : kubelet-1.22.6-0.x86_64 3/4 Verifying : kubernetes-cni-0.8.7-0.x86_64 4/4 Installed: kubeadm.x86_64 0:1.22.6-0 kubectl.x86_64 0:1.22.6-0 kubelet.x86_64 0:1.22.6-0 Dependency Installed: kubernetes-cni.x86_64 0:0.8.7-0 Complete!