迁移到 cgroup v2

Google Distributed Cloud on VMware(纯软件)1.35 版需要 cgroup v2。从 1.35 版开始, Kubernetes 不再支持 cgroup v1。本文档介绍了如何将集群迁移到 cgroup v2。

准备工作

如需安装或升级 Google Distributed Cloud on VMware(纯软件)并使用 Kubernetes 1.35,请检查以下各项:

  • 验证软件版本: 您必须使用 Google Distributed Cloud on VMware(纯软件)1.35.00 或更高版本。
  • 操作系统 cgroup v2 兼容性: 您必须使用支持 cgroup v2 的操作系统。
  • 配置 cgroup v2(如果需要): 如果您的操作系统默认不使用 cgroup v2(例如 Ubuntu 18.04/20.04),则必须手动配置。如需了解详情,请参阅 Kubernetes 文档 中的迁移到 cgroup v2。
  • 更新集群配置: 在升级到 1.35 版之前,将 osImageType 字段从 ubuntuubuntu_containerdcos 更改为 ubuntu_cgv2cos_cgv2
  • 准备 vSphere 映像: 如果 vSphere 中缺少映像,请运行 gkectl prepare
  • 更新自动化脚本: 检查并更新所有自动化脚本,以使用新的 ubuntu_cgv2cos_cgv2 映像类型。

更新操作系统映像类型

在运行 gkectl upgrade 之前,请在集群 YAML 文件中将 osImageType 更改为与 cgroup v2 兼容的映像。

管理员集群

  1. 打开管理员集群配置文件。
  2. 找到 osImageType 字段。
  3. 将值更改为 ubuntu_cgv2(如果您使用 Ubuntu)或 cos_cgv2(如果您使用 COS)。

如需详细了解此字段,请参阅 文档,了解 osImageType

用户集群

  1. 打开用户集群配置文件。
  2. nodePools 部分中找到 osImageType 字段。
  3. 将值更改为 ubuntu_cgv2(如果您使用 Ubuntu)或 cos_cgv2(如果您使用 COS)。

如需详细了解此字段,请参阅 文档nodePools[i].osImageType

升级集群

更新配置文件中的 osImageType 后,请升级集群。

  1. 运行以下命令来升级集群:

    gkectl upgrade cluster --config USER_CLUSTER_CONFIG --admin-config ADMIN_CLUSTER_CONFIG
    

    USER_CLUSTER_CONFIG 替换为用户集群配置文件的路径。将 ADMIN_CLUSTER_CONFIG 替换为管理员集群配置文件的路径。

预检检查

GKE on VMware 1.35 不支持 ubuntuubuntu_containerdcos 操作系统映像类型。如果您尝试使用这些映像类型创建或升级集群或节点池,系统会在预检检查期间阻止该请求。

新的默认操作系统映像类型

GKE on VMware 1.35 的默认 osImageTypeubuntu_cgv2。 如果您创建新的集群配置并将 osImageType 字段留空,系统会默认部署启用 cgroup v2 的节点。

如果您更喜欢 Container-Optimized OS (COS) 而不是 Ubuntu,请在配置文件中将 osImageType 字段明确设置为 cos_cgv2

后续步骤