阅读量:0
1. 升级前的准备工作
- 备份关键数据:使用
ETCDCTL_API=3 etcdctl snapshot save命令对etcd数据进行快照(需指定etcd endpoint、cert路径等参数);同时备份Kubernetes配置文件(如/etc/kubernetes/admin.conf、/etc/kubernetes/manifests下的静态Pod清单)及应用配置(如Deployment、Service的YAML文件),防止升级过程中数据丢失。 - 检查集群健康状态:通过
kubectl get nodes确认所有节点处于Ready状态;使用kubectl get pods --all-namespaces检查所有Pod是否正常运行(无CrashLoopBackOff、Pending等异常状态);执行kubectl describe node获取节点详细诊断信息,排除潜在问题。 - 验证版本兼容性:查阅Kubernetes官方文档的“版本偏差策略”(如kube-apiserver与其他组件的版本差要求:kubelet不能比kube-apiserver新,最多低3个小版本;kube-proxy不能比kube-apiserver新,最多低3个小版本),确保目标版本与现有集群组件(如CNI插件、存储插件、容器运行时)兼容。
- 测试升级流程:在非生产环境的测试节点上模拟升级过程(如使用相同Ubuntu版本和Kubernetes版本的测试集群),验证升级命令的执行顺序、组件兼容性及业务应用是否正常运行,提前发现问题并调整方案。
2. 升级过程中的关键操作
- 按顺序升级节点:严格遵循“先控制平面节点,后工作节点”的顺序。控制平面节点升级时,先使用
kubeadm upgrade plan检查升级计划(确认可升级的目标版本),再执行kubeadm upgrade apply升级控制平面组件(如kube-apiserver、etcd、kube-controller-manager);工作节点升级时,先在控制平面节点上更新kubeadm版本(sudo apt-get install -y kubeadm=),再在工作节点上执行sudo kubeadm upgrade node升级节点,最后重启kubelet服务(sudo systemctl restart kubelet)。 - 更新kubeadm及组件版本:Ubuntu上通过APT仓库更新kubeadm、kubelet、kubectl(如
sudo apt-get update && sudo apt-get install -y kubeadm=);若官方源版本滞后,需更换为最新的Kubernetes软件包仓库(如kubelet= kubectl= pkgs.k8s.io/core:/stable:/v),并导入签名密钥以保证软件包安全性。/deb/ - 处理组件配置变更:升级过程中,kubeadm会自动备份旧配置文件(如
/etc/kubernetes/tmp/kubeadm-kubelet-config-*.yaml);升级后,需检查新版本的默认配置(如/etc/kubernetes/manifests下的静态Pod清单、/etc/kubernetes/kubelet.conf),根据业务需求调整配置(如Pod资源限制、网络插件参数),确保配置与新版本兼容。
3. 升级后的验证与收尾
- 检查集群状态:使用
kubectl get nodes确认所有节点状态变为Ready;通过kubectl get pods --all-namespaces检查所有Pod是否正常运行(无异常状态);执行kubectl logs -n kube-system查看核心组件(如kube-apiserver、etcd)的日志,排查潜在错误。 - 验证业务功能:访问业务应用的端点(如通过
curl或浏览器访问Service的ClusterIP或Ingress地址),确认业务逻辑正常;检查应用日志(如kubectl logs),确保无因升级导致的业务异常(如连接超时、接口报错)。 - 清理旧资源:升级完成后,若确认新版本运行稳定,可清理旧版本的镜像(如
docker rmi)和临时文件(如/etc/kubernetes/tmp下的备份配置),释放磁盘空间;同时,更新监控告警规则(如Prometheus的告警阈值),适配新版本的指标变化。
以上就是关于“Kubernetes版本升级在Ubuntu上的注意事项”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm