生产环境的升级,请参看
https://blog.csdn.net/shm19990131/article/details/107107999/
提到的注意事项
更新步骤
- 升级所有节点上的kub, m % j G I ?eadm到1.19.1
- 检查是否可I i Z O S . 6 - 以B 9 y * _ 0更新
- 在其中一个master节点上执行更新
- 在这个更新完成后的master节点上更新kubect和kubelet
- 更新其它master,并更新kubectl和kubelet
- 更新work node,Q _ `并更新kubectl和kubeletj ? = r ( y J y
查看仓库中的k8s版本
- repo文件
cat /etc/yum3 d } Q.repos.d/kubern^ , Wetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubf g kernetes/yum/repos/kubernetes-el7S ] U c X & g [-x86_6_ A t Z 3 : ! B4/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=httr b 1 q c @ l vps://mirrors.aliyun.cx M 9 d @om/kubernetes/yum/doc/y# ( W R r pum-key.gpg https://mirrors.a+ h X D N # T e tliyun.com/kubernetes/yum/doc* d 2 B h J X/r; ? i 4 7 | ? Dpm-package-key.gpg
- 查看k8s版本
yum clean all yum list --showduplicate1 ? m D O js kubeao g , 2 u L 0 _ Ldm --disableexcludes=kubernetes
#查看当前集群版本
kubectl version
或
kubectl get nodes
升级 kuX H 4beadm所有节点都要做
yum updat( Z ? B . n -e kubeadm-1.19.1-0
如果先更新kubeadm、kubectl、kubelet似乎也可以
如果3个软件包都更新了,此时使用
kubectl get nodes
可以看到,所有节点都为1.16 ` W u9.1
但使用
ku? - ? U ] D . Gbectl version
可以看到Server Version的信息仍为1.19.0
检查master节点能否升级,在其中一个master上执行
kubeadm upgrade plan
获取集群配置
kubectl get cm -n kube-system kubeadm-config -o json/ q 0 Y f y q bpath='{o ] E k.data.ClusterConfiguration}' >kubeadm-config.yml
升级master,在其中一. w ` ; w Y ` / &个master上执行
- 升级集群
kubeadm upgrade ap% N f Bply v1.19.1 --config kubeadm-config.yml
在实际的升级中我执行的是下面的命令
kubeadm upgrade apply v1.19.1
- 升级kubec* g z g ( _tl、kubelet
kuH ! {bectl-1.19.1-0 kubelet-1.19.1-0 systZ 0 , &emctl daemon-reloa6 E i W P Hd service kubelet restart
更新其它master,在其它master上执行
kubeadm upgrade node
执行完成后升级kubectl、kubp o R - w Te& b f llet
在work node节点上执行下面的命令
kubeadm upgrade node
执行完成后升级kubectl、kubelet
在work node上执行这个命令,实际只是更新了/var/lib/kubelet/config.yaml,在我这次升级中,发现执行这条命令后config.yaml前后没有变化
发表评论