学习内容:
提示:不同版本升级略有差异,详见官网,本例是以Ubuntu为例
官方网址:https://kubernetes.io/zh-cn/docs/tasks/administer-cluster/kubeadm/kubeadm-upgrade/
1、 k8s升级注意事项
(1)务必备份所有重要组件,kubeadm upgrade 不会影响你的工作负载,只会涉及 Kubernetes 内部的组件,但仍然需要备份
(2)是否升级成功。 验证 kubelet 服务在升级后是否成功重启,可以执行 systemctl status kubelet 或 journalctl -xeu kubelet 查看服务日志
2、 升级流程
基本流程如下:
升级master节点
升级node节点
3、步骤
(1)腾空节点
设置为维护状态
kubectl cordon k8s-master
驱逐 Pod
kubectl drain k8s-master --delete-emptydir-data --ignore-daemonsets –
force
执行成功如图:提示属于正常,系统的管理网络的pod不能被驱逐的
(2)根据需要选择升级组件,不需要的可不升级
升级kubeadm(我已经升级过了,所以有个提示已安装)
执行:apt-get install kubeadm=1.24.8-00
升级整个master节点
使用命令查看可升级到哪个版本:
kubeadm upgrade plan
显示如下内容:
根据提示,复制粘贴命令升级:
kubeadm upgrade apply v1.24.8 --etcd-upgrade=false
注意:如果不升级etcd可以加上述参数
(3)升级其他组件:kubectl 和 kubelet
apt-get install -y kubelet=1.24.8-00 kubectl=1.24.8-00
4、重启服务,验证是否升级成功
systemctl daemon-reload
systemctl restart kubelet
将节点设置为可调度状态