了解集群升级


本页面介绍了如何获取有关 Google Kubernetes Engine (GKE) 集群升级的信息。GKE 会随着时间的推移自动升级所有集群。当 GKE 升级集群时,GKE 会在单独的操作中更新 Kubernetes 控制平面和工作器节点的版本。

GKE 会汇总有关集群升级的信息,帮助您更好地了解集群的状态。您可以获取集群的以下信息:

  • 自动升级目标:了解 GKE 以哪些新版本作为集群的目标,这些版本可能是补丁或新的次要版本,具体取决于集群的现有版本和限制条件。如果没有自动升级目标,则表示集群已是最新的升级目标,或者由于技术或业务原因,GKE 未分配自动升级目标。如需根据集群的次要版本检索常规自动升级目标,请参阅 GKE 版本说明中的版本更新,例如 2024-R33 说明
  • 自动升级状态:GKE 集群具有集群升级状态。您可以使用此状态详细了解当前升级,以及 GKE 在选择何时自动升级集群时考虑的限制条件,包括维护排除项或阻止升级的原因等因素。如需了解详情,请参阅集群自动升级状态
  • 升级历史记录:GKE 会提供集群最近的控制平面升级和节点升级的快照,包括自动升级和手动升级。对于最近的控制平面和节点升级,您可以查看以下详细信息:

    • 版本:初始版本和目标版本。
    • 状态:升级是否仍在运行,或者是否已成功、失败或取消。
    • 时间:开始时间和结束时间。
    • 启动类型:升级是自动触发还是手动触发。
  • 停止支持日期:GKE 最多支持次要版本 24 个月。如需了解详情,请参阅 GKE 次要版本生命周期。如需了解所有当前次要版本的支持终止日期,请参阅发布渠道的预计时间表

  • 集群事件:GKE 会针对某些事件(例如升级开始或完成时、新版本可用时、安全公告及停止支持日期)向 Cloud Logging 发送集群通知。除了 GKE 通过 Cloud Logging 自动显示这些事件之外,您还可以将这些通知路由到 Pub/Sub。如需了解详情,请参阅集群通知

准备工作

在开始之前,请确保您已执行以下任务:

  • 启用 Google Kubernetes Engine API。
  • 启用 Google Kubernetes Engine API
  • 如果您要使用 Google Cloud CLI 执行此任务,请安装初始化 gcloud CLI。 如果您之前安装了 gcloud CLI,请运行 gcloud components update 以获取最新版本。

获取有关集群升级的信息

您可以使用Google Cloud 控制台或 gcloud CLI 获取有关集群升级的信息。

在项目级层获取有关升级的信息

如需获取项目中集群升级的聚合信息,您可以使用升级信息中心。

在 Google Cloud 控制台中,前往升级信息中心:

前往“升级”

此信息中心内包含的标签页会汇总有关升级的相关信息,例如:

  • 最近的控制平面和节点升级的状态
  • 升级的集群通知日志
  • 与升级相关的建议
  • 特定次要版本的停止支持时间表
  • 每个发布渠道中的集群数量

在集群级层获取升级信息

控制台

  1. 在 Google Cloud 控制台中,前往 Kubernetes 集群页面。

    转到 Kubernetes 集群

  2. 选择集群的名称以查看其集群详细信息页面。

  3. 集群详情页面上,查看集群升级部分。

gcloud

运行以下命令:

gcloud container clusters get-upgrade-info CLUSTER_NAME

CLUSTER_NAME 替换为您的集群的名称。

获取 Standard 集群节点池的升级信息

您可以了解 Standard 集群的各个节点池。本部分不适用于 Autopilot 集群,GKE 会管理节点,因此您不需要管理节点池。

控制台

  1. 在 Google Cloud 控制台中,前往 Kubernetes 集群页面。

    转到 Kubernetes 集群

  2. 点击集群名称以查看其详细信息。

  3. 点击节点标签页。

  4. 节点池部分中,点击要获取升级信息的节点池的名称。

  5. 节点池详细信息页面中,查看升级部分。

gcloud

运行以下命令:

gcloud container node-pools get-upgrade-info POOL_NAME
    --cluster=CLUSTER_NAME

POOL_NAME 替换为节点池的名称。

集群自动升级状态

以下是集群自动升级的潜在状态:

  • ACTIVE:活跃升级状态。
  • UNKNOWN:升级状态未知。
  • MINOR_UPGRADE_PAUSED:次要版本升级已暂停。
  • UPGRADE_PAUSED:所有自动升级都已暂停。

以下是 GKE 暂停集群自动升级的潜在原因:

  • MAINTENANCE_WINDOW:维护窗口导致集群升级无法完成。
  • MAINTENANCE_EXCLUSION_:如果暂停原因包含此前缀,则表示维护排除项正在阻止集群升级。后缀表示维护排除项的范围,例如 MAINTENANCE_EXCLUSION_NO_UPGRADES
  • CLUSTER_DISRUPTION_BUDGET:在某些操作(例如集群创建或升级)之后,集群需要一段冷却期来保护集群及其应用程序的稳定性和可用性。
  • CLUSTER_DISRUPTION_BUDGET_MINOR_UPGRADE:集群超出次要版本升级的集群中断预算。
  • SYSTEM_CONFIG:由于技术或业务原因,自动升级已暂停。在这种状态下,我们建议您仅在必要时执行手动升级。
  • AUTO_UPGRADE_PAUSED_REASON_UNSPECIFIED:原因不明。

查找有关集群升级常见场景的信息

查找有关管理集群升级时可能遇到的常见场景的信息。

了解集群的下一次升级时间

如需了解集群的下一次升级时间,以便您可以规划并合格地升级到新版本,请使用以下资源:

  • 发布时间表:在发布渠道的预计时间表中,找到与集群的次要版本和发布渠道对应的预计自动升级日期。
  • 在集群级层获取升级信息:查找集群的自动升级目标。
  • 集群通知:当渠道中推出新版本时,GKE 会发送通知。新版本发布后(具体时间取决于渠道),GKE 会将该版本指定为渠道中的自动升级目标。如需查看这些通知,请在 Cloud Logging 中查看集群通知时过滤 UpgradeAvailableEvent
  • 版本说明:请参阅版本说明,了解 GKE 何时将新的次要版本设置为渠道中的自动升级目标。

找出阻止集群进行下一次升级的因素

如需了解阻碍升级的原因以便解除阻碍,请查找集群的自动升级状态。如果自动升级处于暂停状态,请查看原因。请采用以下方法之一:

了解集群的升级何时完成

如需了解集群的控制平面和节点升级何时完成,以便验证工作负载是否按预期运行,请使用以下资源:

了解升级预计需要多长时间

如需了解升级预计需要多长时间,您可以在集群级获取升级信息,从而了解过去升级的时长。请参阅升级历史记录以了解最新示例。

升级时长取决于升级的是控制平面还是节点、升级策略、Pod 中断预算 (PDB)、有效维护政策和其他因素。

了解集群的次要版本何时达到支持终止期限

GKE 会自动升级仍在运行已过停止支持日期的次要版本的集群。如需了解详情,请参阅在停止支持时自动升级

如需了解集群的次要版本何时达到停止支持日期(例如,设置维护排除项或了解已弃用的 API 何时无法再使用),请使用以下资源:

后续步骤