首页主机资讯centos k8s升级如何实施

centos k8s升级如何实施

时间2025-12-04 13:54:04发布访客分类主机资讯浏览1021
导读:CentOS 上 Kubernetes 升级实施指南 一 升级前准备 备份关键数据与配置:优先备份 etcd(示例:etcdctl snapshot save /var/lib/etcd/backup/snapshot.db),以及 /e...

CentOS 上 Kubernetes 升级实施指南

一 升级前准备

  • 备份关键数据与配置:优先备份 etcd(示例:etcdctl snapshot save /var/lib/etcd/backup/snapshot.db),以及 /etc/kubernetes/ 目录和 kubeconfig;确保有可用的回滚方案。
  • 检查集群健康:确认所有节点 Ready、系统组件 Running,无 CrashLoopBackOff/Error,负载与服务可用。
  • 确认升级路径:遵循“相邻次要版本递进”,不可跨多个次要版本(如 1.22 → 1.23 → 1.24);如需跨大版本,通常一次仅跨 1 个大版本(如 1.19 → 1.20)。
  • 配置仓库与版本可见性:在所有节点配置 Kubernetes YUM 仓库,并使用 yum list --showduplicates kubeadm 查看可安装版本。
  • 维护窗口与高可用:选择低峰时段;如为 HA 控制面,确保 HAProxy/Keepalived 健康检查与后端摘除策略正常。

二 标准升级流程(kubeadm 部署)

  • 控制平面节点(按顺序执行)
    1. 升级 kubeadm:yum install -y kubeadm-< 目标版本> --disableexcludes=kubernetes
    2. 检查升级计划:kubeadm upgrade plan
    3. 腾空节点:kubectl drain --ignore-daemonsets
    4. 执行升级:kubeadm upgrade apply < 目标版本>
    5. 升级 kubelet 与 kubectl:yum install -y kubelet-< 目标版本> kubectl-< 目标版本> --disableexcludes=kubernetes
    6. 重启 kubelet:systemctl daemon-reload & & systemctl restart kubelet
    7. 解除封锁:kubectl uncordon
  • 工作节点(逐个节点执行)
    1. 腾空节点:kubectl drain --ignore-daemonsets
    2. 升级 kubeadm(与集群控制面版本一致)
    3. 升级 kubelet 与 kubectl(同上)
    4. 执行节点升级:kubeadm upgrade node(或按 kubeadm 提示完成节点组件升级)
    5. 重启 kubelet:systemctl daemon-reload & & systemctl restart kubelet
    6. 解除封锁:kubectl uncordon
  • 提示:若为 单节点 集群,驱逐后 Pod 将无可调度目标,业务会短暂中断,需提前评估。

三 升级后验证与回滚

  • 版本与状态核验:kubectl version --short、kubectl get nodes -o wide、kubectl get pods -A;组件日志:journalctl -u kubelet -f。
  • 周边组件:按需升级 CNI(如 Calico/Flannel)Ingress ControllerCoreDNS、监控/日志等,确保与目标 K8s 版本兼容。
  • 快速回滚思路:控制面回滚执行 kubeadm upgrade apply < 原版本> ;若升级前已备份 etcd/etc/kubernetes/,可恢复到升级前快照与配置。

四 常见注意事项与排错要点

  • 版本与兼容性:严格按相邻次要版本升级;kubectl 与集群版本通常建议相差不超过 1 个次要版本;容器运行时与网络插件需与目标 K8s 版本匹配。
  • 节点维护:升级节点务必先 drainuncordon,避免业务抖动;HA 场景通过负载均衡健康检查自动摘除/恢复后端。
  • 单节点限制:单节点集群在驱逐期间会中断,需提前规划维护窗口或临时扩容。
  • 系统与安全:保持 NTP 同步、内核与驱动兼容;升级后持续观察 Pod 分布与事件,必要时回滚。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos k8s升级如何实施
本文地址: https://pptw.com/jishu/763506.html
centos k8s降级怎么办 centos部署k8s需要什么条件

游客 回复需填写必要信息