- 文档首页
容器服务
容器服务 VKE
用户指南
集群
升级集群
集群升级操作
集群升级操作
容器服务(VKE)支持升级集群版本。本文主要介绍升级集群 Kubernetes 版本的相关说明及操作。
升级流程
升级须知
升级集群包括 控制面升级 和 节点升级 两个部分,每部分中均包括 升级检查 和 升级执行 两个阶段。触发升级前,请仔细阅读本文描述的 升级策略、控制面升级注意事项、节点升级注意事项 内容。
升级策略
容器服务保障最近三个 Kubernetes 次要版本的稳定运行,过期版本的集群可能存在运行不稳定、升级失败等风险,但不影响已有业务的使用,建议您及时升级集群版本。更多内容请参见:
控制面升级注意事项
- Kubernetes 次要版本升级可能涉及到 Kubernetes 资源版本变更。升级前请确认您的应用是否使用了已废弃资源。如果您在应用的 Chart 中使用了已废弃资源,则需要更新应用 Chart 中的资源到新版本,再将新的 Chart 更新到集群中。详细的资源变更与弃用说明,请参见 Kubernetes 版本发布记录。
- 集群控制面(Master)升级 Kubernetes 版本过程中,集群上的应用不会中断。如果应用强依赖于 API Server 可能会有短暂影响。
- 集群控制面升级需要花费 5~10 分钟,在此期间您将无法操作您的集群。
- 升级集群控制面流程中,系统会自动执行升级前置检查。因此升级前,建议独立执行升级前置检查,并确保所有检查项已通过,可顺利进行升级操作。
- 升级前置检查,仅对当前正在运行的资源进行废弃 API 检查。
- 如果集群中使用了自定义操作系统镜像,由于该类型镜像非容器服务官方严格验证,因此我们将无法保证集群升级的成功。
- 仅当节点 Kubernetes 版本与控制面 Kubernetes 版本一致时,控制面才可继续升级到下一个可升级版本。
- 同一集群连续升级 Kubernetes 次要版本时,建议版本升级间隔时间大于 24 小时,确保集群的稳定运行。例如当集群控制面从 Kubernetes v1.20 升级至 v1.24,并稳定运行 24 小时后,再将该集群升级至 v1.26 版本。
- 升级 Kubernetes 次要版本后可能存在参数不兼容的情况,因此次要版本升级不会保留您集群维度自定义 Kubelet 等参数,需要升级后重新设置以保证新增节点使用期望的自定义配置。相关操作说明,请参见 自定义集群 Kubelet 参数。
- VPC-CNI 网络模型的集群控制面从 Kubernetes v1.20 升级至 v1.24 版本时,需要手动获取 EndpointSlices 资源。详细操作和说明,请参见本文下方 附录。
- Kubernetes 社区在 v1.29 之后的版本中, 更新了 kube-proxy 的conntrack_max参数值配置方式,将基于 kube-proxy 的配置和节点的 CPU Core 数量来计算和更新conntrack_max参数值,详情请参见 #120448。在 Kubernetes v1.28(含)之前版本的 VKE 集群中,kube-proxy 不会覆盖集群管理员手动设定的conntrack_max参数值。将集群升级至 v1.30 后,kube-proxy 可能会基于其新逻辑自动调低conntrack_max参数值。因此请在升级集群前将conntrack_max等配置设置到 kube-proxy 的 ConfigMap 中,以避免被覆盖。具体操作,请参见 FAQ。
节点升级注意事项
- 节点 Kubernetes 升级会影响正在运行的业务,升级过程中可能造成 Pod Prober、Lifecycle Hook 失败,也可能会出现 Pod 原地重启情况。因此在升级前,应检查集群状态是否健康、是否处于业务低峰期,从而判断是否开始进行节点升级。
- 升级节点 Kubernetes 版本流程中,系统会自动执行升级前置检查。因此升级前,建议独立执行升级前置检查,并确保所有检查项已通过,可顺利进行升级操作。
- 节点 Kubernetes 升级不支持回滚,请谨慎进行。
- 如果您在节点上修改过 kubelet、containerd 参数配置,则在升级节点过程中仅保留兼容参数,会移除不兼容参数,在升级节点完成后,需要您再次检查。
- 节点要升级的目标 Kubernetes 版本不能超过当前控制面 Kubernetes 版本。
前提条件
-
控制面升级
步骤一:升级检查
进行控制面升级前,请先进行升级检查,确保前置解决所有可能影响集群升级的问题。
- 在 集群升级 页面,单击 Kubernetes 升级检查 页签,做升级前置检查。
- 单击 控制面升级检查,然后单击 确定,开始进行控制面 Kubernetes 升级前置检查。
- 检查完成后,按照 检查状态 列下的显示,进行下一步操作:
- 失败:单击右侧的 查看详情,并按照系统提示处理检查失败项。处理完成后重新进行 控制面升级检查,保证 检查状态 显示 通过 后进行升级操作。各个升级检查项的说明和修复建议,请参见 集群升级检查项。
说明
- 升级集群时,系统会分析集群审计日志以评估升级风险。若您已确认并处理相关告警,在执行升级时可忽略告警。具体检查项名称如下:
- Kubernetes v1.36 及以上版本集群不再支持 containerd 1.x 版本节点和节点配置,升级控制面版本前须先升级节点容器运行时版本,并更新相关节点池的容器运行时配置。操作详情请参见 管理节点池。
- Kubernetes v1.36 及以上版本集群不再支持 cgroup v1 版本节点,升级控制面版本前须先滚动升级节点到 cgroup v2 版本。操作详情请参见 FAQ。
步骤二:升级控制面
- 在 集群升级 页面,选择 Kubernetes 升级 页签,单击 控制面升级。
- 在 控制面 Kubernetes 升级 对话框,确认升级信息。
- 升级过程中,可单击右侧 操作 列下的 查看详情,查看控制面 Kubernetes 升级进度。
-
- 查看升级结果。状态 显示为 通过,表示已完成 Kubernetes 升级。
-
- (可选)若升级失败,请按照界面提示重新操作。若有更多问题,可提交 工单申请 获取技术支持。
节点升级
说明
- 控制面 Kubernetes 版本与节点 Kubernetes 版本一致时,需要先完成控制面升级操作后,才可进行节点的升级操作。升级前置检查无约束,均可以进行。
- 控制面 Kubernetes 版本比节点 Kubernetes 版本高时,节点可升级至与控制面 Kubernetes 版本相同的版本。
步骤一:升级检查
- 在 集群升级 页面,选择 Kubernetes 升级检查 页签,单击 节点升级检查。
- 检查完成后,按照 检查状态 列下的显示,进行下一步操作:
- 失败 或 警告:单击右侧的 查看详情,并按照系统提示处理检查失败项。处理完成后重新进行 节点升级检查,保证 检查状态 显示 通过 后进行升级操作。各个升级检查项的说明和修复建议,请参见 集群升级检查项。
说明
若您评估确认升级前置检查项中 检查结果 为 警告 的检测项不影响您的业务,也可忽略该项,直接执行 Kubernetes 升级操作。
步骤二:升级节点
- 在 集群升级 页面,选择 Kubernetes 升级 页签,单击 节点升级。
- 在系统弹出的提示框中仔细阅读每条 升级须知,确认升级注意事项后单击 确定升级。
- 在 节点 Kubernetes 升级 页面,确认升级信息。
- 升级过程中,可单击右侧 操作 列下的 查看详情,查看节点 Kubernetes 升级进度。
-
- 查看升级结果。状态 显示为 通过,表示已完成 Kubernetes 升级。
-
- (可选)若升级失败,请按照界面提示重新操作。若有更多问题,可提交 工单申请 获取技术支持。
升级后检查
升级完成后,请在集群的 总览 页面核验集群 Kubernetes 版本、节点 Kubernetes 版本、集群运行状态,同时检查您集群内的其他业务是否正常。若业务异常,请查看相关事件和日志信息以进一步处理。您也可以提交 工单申请 获取技术支持。 附录
VPC-CNI 网络模型集群中,当集群控制面从 Kubernetes v1.20 升级至 v1.24 后,需要重启从属于 vpc-cni 组件的 Cello DaemonSet,以获取新版本 EndpointSlices 资源。详细操作如下:
- 通过 kubectl 连接已升级的集群。详细操作,请参见 连接集群。
- 执行如下命令,重启从属于 vpc-cni 组件的 Cello DaemonSet。
最近更新时间:2026.07.15 11:48:01