管理员集群配置文件 1.30 及更高版本

本文档介绍了 1.30 版及更高版本的 Google Distributed Cloud 的管理员集群配置文件中的字段。

生成配置文件模板

如果您使用了 gkeadm 来创建管理员工作站,则 gkeadm 为您的管理员集群配置文件生成了一个模板。此外,gkeadm 还为您填写了一些字段。

如果您未使用 gkeadm 创建管理员工作站,则可以使用 gkectl 为管理员集群配置文件生成模板。

如需为管理员集群配置文件生成模板,请运行以下命令:

gkectl create-config admin --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION

替换以下内容:

  • OUTPUT_FILENAME:您为生成的模板选择的路径。如果省略此标志,则 gkectl 将该文件命名为 admin-cluster.yaml,并将其放在当前目录中。

  • VERSION:Google Distributed Cloud 版本号。例如:gkectl create-config admin --gke-on-prem-version=1.36.100-gke.144。此版本必须等于或小于 gkectl 版本。如果省略此标志,则生成的配置模板会填充基于最新 1.36 版补丁的值。

模板

必填字段和默认值

如果某个字段被标记为“必需”,则在完成的配置文件中必须为该字段填写值。

如果为某个字段提供了默认值,则在您没有为该字段输入任何内容时,集群将使用该值。您可以通过输入值来替换默认值。

如果某个字段未标记为“必填”,则该字段为可选字段。您可以在该字段与您有关时进行填写,但不是必须填写。

填写配置文件

在配置文件中,按照以下部分的说明输入字段值。

enableAdvancedCluster

1.33 及更高版本

所有新集群都将创建为高级集群。如果您在创建新集群时在配置文件中添加此字段,则必须将其设置为 true。如果您将此字段设置为 false,则系统会阻止创建集群。

1.32

可选
可变(允许从 false 到 true)
布尔值
预填充值:true
默认值:true

如果您不想在创建新集群时启用高级集群,请将 enableAdvancedCluster 设置为 false。当此标志设置为 true(启用高级集群)时,Google Distributed Cloud 软件会部署控制器,以实现更具可扩展性的架构。启用高级集群后,您可以使用新特性和功能,例如拓扑网域。如果配置了 infraConfigFilePath,则此字段为必填字段。

在启用高级集群之前,务必查看运行高级集群时的差异。

如需将现有集群更新为高级集群,请参阅将集群更新为高级集群。 更新为高级集群后,无法停用。

1.31

仅适用于新集群
预览版
可选
不可变
布尔值
预填充值:false
默认值:false

将 enableAdvancedClusters 设置为 true 可在创建新集群时启用高级集群。启用此标志后,底层 Google Distributed Cloud 软件会部署控制器,以实现更具可扩展性的架构。启用高级集群后,您可以使用新特性和功能,例如拓扑网域。 如果配置了 infraConfigFilePath,则此字段为必填字段。

1.30 及更低版本

不可用。

name

可选
字符串
默认值:以前缀“gke-admin-”开头的随机名称

您为集群选择的名称。

示例:

name: "my-admin-cluster"

bundlePath

必需
可变
字符串

Google Distributed Cloud 软件包文件的路径。您可以指定完整套装或常规套装。如需查看详细的比较情况,请参阅 Google Distributed Cloud 套餐简介。

创建管理员工作站时,该工作站会预安装以下完整软件包:

/var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz

完整软件包示例:

bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.30.0-gke.1-full.tgz"

如果您希望使用常规软件包(需要在运行时下载映像),请在下载后指定其路径:

常规套装示例:

bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.30.0-gke.1.tgz"

preparedSecrets.enabled

如果配置了 infraConfigFilePath,请移除此字段。

预览版
可选
不可变
布尔值
预填充:false
默认值:false

如果要在管理员集群中使用准备好的凭据,请将此值设置为 true。否则,请将此值设置为 false 或省略该字段。

示例:

preparedSecrets:
  enabled: true

vCenter

本部分包含有关您的 vSphere 环境以及与 vCenter Server 连接的信息。

如果配置了 infraConfigFilePath,请移除整个部分。否则,此部分为必需且不可变。

vCenter.address

必需
不可变
字符串

您的 vCenter 服务器的 IP 地址或主机名。

如需了解详情,请参阅查找 vCenter 服务器地址。

示例:

vCenter:
  address: "203.0.113.100"
vCenter:
  address: "my-vcenter-server.my-domain.example"

vCenter.datacenter

必需
不可变
字符串

vSphere 数据中心的相对路径。

您指定的值是相对于名为 / 的根文件夹而言的。

如果数据中心位于根文件夹中,则该值是数据中心的名称。

示例:

vCenter:
  datacenter: "my-data-center"

否则,该值是相对路径,其中包含一个或多个文件夹以及数据中心的名称。

示例:

vCenter:
  datacenter: "data-centers/data-center-1"

vCenter.cluster

必需
不可变
字符串

vSphere 集群的相对路径,代表将运行管理员集群虚拟机的 ESXi 主机。此 vSphere 集群代表 vCenter 数据中心内的物理 ESXi 主机的一部分。

您指定的值相对于 /.../DATA_CENTER/vm/。

如果您的 vSphere 集群位于 /.../DATA_CENTER/vm/ 文件夹中,则该值是 vSphere 集群的名称。

示例:

vCenter:
  cluster: "my-vsphere-cluster"

否则,该值是相对路径,其中包含一个或多个文件夹以及 vSphere 集群的名称。

示例:

vCenter:
  cluster: "clusters/vsphere-cluster-1"

vCenter.resourcePool

必需
不可变
字符串

管理员集群虚拟机的 vCenter 资源池。

如果您要使用默认资源池,请将此字段设置为 VSPHERE_CLUSTER/Resources。

示例:

vCenter:
  resourcePool: "my-vsphere-cluster/Resources"

如果您要使用已创建的资源池,请将其设置为资源池的相对路径。

您指定的值相对于 /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/

如果资源池是 /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/ 的直接子级,则该值是资源池的名称。

示例:

vCenter:
  resourcePool: "my-resource-pool"

否则,该值是相对路径,其中包含两个或更多个资源池。

示例:

vCenter:
  resourcePool: "resource-pool-1/resource-pool-2"

vCenter.datastore

如果未指定 vCenter.storagePolicyName,则为必需
不可变
字符串

您的管理员集群的 vSphere 数据存储区的名称。

您指定的值必须是名称,而不是路径。请勿在值中包含任何文件夹。

示例:

vCenter:
  datastore: "my-datastore"

您必须为 vCenter.datastore 或 vCenter.storagePolicyName 指定值,但不能同时为两者指定值。如果为此字段指定了值,则请勿为 vCenter.storagePolicyName 指定值。 vCenter.datastore 字段不可变,但在将数据存储区迁移到基于存储政策的管理 (SPBM) 时,您可以将该字段设置为空字符串。

vCenter.storagePolicyName

如果未指定 vCenter.datastore,则为必需
不可变
字符串

集群节点的虚拟机存储政策的名称。

管理员集群必须具有高可用性 (HA),才能使用存储政策。

如需了解详情,请参阅配置存储政策。

您必须为 vCenter.datastore 或 vCenter.storagePolicyName 指定值,但不能同时为两者指定值。如果为此字段指定了值,则请勿为 vCenter.datastore 指定值。

vCenter.caCertPath

必需
可变
字符串

您的 vCenter 服务器的 CA 证书的路径。

如需了解详情,请参阅获取 vCenter CA 证书。

如需了解如何为现有集群更新此字段,请参阅更新 vCenter 证书引用。

示例:

vCenter:
  caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"

vCenter.credentials.fileRef.path

必需
字符串

凭据配置文件的路径,该文件包含您的 vCenter 用户账号的用户名和密码。用户账号应具有 Administrator 角色或同等权限。请参阅 vSphere 要求。

您可以使用 gkectl update 在现有集群中更新此字段。

如需了解如何更新 vCenter 凭据,请参阅更新集群凭据。

示例:

vCenter:
  credentials:
    fileRef:
      path: "my-config-folder/admin-creds.yaml"

vCenter.credentials.fileRef.entry

必需
字符串

凭据配置文件中的凭据块名称,该文件包含您的 vCenter 用户账号的用户名和密码。

您可以使用 gkectl update 在现有集群中更新此字段。

如需了解如何更新 vCenter 凭据,请参阅更新集群凭据。

示例:

vCenter:
  credentials:
    fileRef:
      entry: "vcenter-creds"

vCenter.folder

可选
不可变
字符串
默认值:数据中心范围的文件夹

您已创建的 vSphere 文件夹的相对路径。此文件夹将用于存储管理员集群虚拟机。

如果未指定值,则管理员集群虚拟机将放在 /.../DATA_CENTER/vm/ 中。

如果指定值,则相对于 /.../DATA_CENTER/vm/。

该值可以是文件夹的名称。

示例:

vCenter:
  folder: "my-folder"

或者,该值可以是相对路径,其中包含多个文件夹。

示例:

vCenter:
  folder: "folders/folder-1"

vCenter.dataDisk

请勿为此字段提供值。请删除该字段或将其注释掉。

network

必需
不可变

本部分包含有关管理员集群网络的信息。

network.hostConfig

本部分包含有关集群节点虚拟机使用的 NTP 服务器、DNS 服务器和 DNS 搜索网域的信息。

如果配置了 infraConfigFilePath,请移除整个部分。否则,此部分为必需且不可变。

network.hostConfig.dnsServers

如果填写了 network.hostConfig 部分,则此字段是必需的。
不可变
字符串数组。
数组中的元素数量上限为 3。

虚拟机的 DNS 服务器的地址。

示例:

network:
  hostConfig:
    dnsServers:
    - "172.16.255.1"
    - "172.16.255.2"

network.hostConfig.ntpServers

如果填写了 network.hostConfig 部分,则此字段是必需的。
不可变
字符串数组

供虚拟机使用的时间服务器地址。

示例:

network:
  hostConfig:
    ntpServers:
    - "216.239.35.0"

network.hostConfig.searchDomainsForDNS

可选
不可变
字符串数组

供虚拟机使用的 DNS 搜索网域。这些网域会用作网域搜索列表的一部分。

示例:

network:
  hostConfig:
    searchDomainsForDNS:
    - "my.local.com"

network.ipMode.type

不可变
字符串
预填充值:“static”
默认值:“dhcp”

如果您希望集群节点从 DHCP 服务器获取其 IP 地址,请将此设置为 "dhcp"。如果您希望集群节点从您提供的列表中选择静态 IP 地址,请将此设置为 "static"。

在大多数情况下,您应指定 static,因为您必须始终为管理员集群的控制平面节点提供 IP 地址。DHCP 仅在以下情况下用于提供 IP 地址:

  • 如果未在用户集群中启用 enableControlplaneV2,则可以为用户集群的控制平面节点(位于管理员集群中)使用 DHCP。

  • 在 1.16 及更低版本中,非高可用性管理员集群的插件节点可以从 DHCP 获取其 IP 地址。在 1.28 及更高版本中,管理员集群必须是 HA 集群,并且没有插件节点。

示例:

network:
  ipMode:
    type: "static"

network.ipMode.ipBlockFilePath

集群的 IP 地址块文件的绝对路径或相对路径。

如果配置了 infraConfigFilePath,则此字段为必填字段。

在以下情况下,此字段也是必需的:

  • 1.16 及更低版本的非高可用性管理员集群:在 IP 地址块文件中列出控制平面节点和插件节点的 IP 地址。

  • 1.16 及更低版本的高可用性管理员集群:在 IP 地址块文件中列出插件节点的 IP 地址。

  • 1.29 及更低版本的 kubeception 用户集群:在管理员集群 IP 地址块文件中列出用户集群控制平面节点的 IP 地址。

不可变
字符串

示例:

network:
  ipMode:
    ipBlockFilePath: "/my-config-folder/admin-cluster-ipblock.yaml"

network.serviceCIDR

必需
不可变
字符串
可能的最小范围:/24
最大可能范围:/12
预填充值:“10.96.232.0/24”

用于集群中 Service 的 IP 地址范围(采用 CIDR 格式)。

示例:

network:
  serviceCIDR: "10.96.232.0/24"

network.podCIDR

必需
不可变
字符串
最小可能范围:/18
最大可能范围:/8
预填充值:“192.168.0.0/16”

用于集群中 Pod 的 IP 地址范围(采用 CIDR 格式)。

示例:

network:
  podCIDR: "192.168.0.0/16"

Service 范围不得与 Pod 范围重叠。

Service 和 pod 范围不得与您要从集群内部访问的任何集群外部地址重叠。

例如,假设您的 Service 范围为 10.96.232.0/24,您的 Pod 范围为 192.168.0.0/16。从 Pod 发送到上述任一范围中的地址的任何流量都将被视为集群内的流量,并且不会到达集群外部的任何目的地。

具体来说,Service 和 pod 范围不得与以下各项重叠:

  • 任何集群中节点的 IP 地址

  • 负载均衡器使用的 IP 地址

  • 控制平面节点和负载均衡器使用的 VIP 地址

  • vCenter 服务器、DNS 服务器和 NTP 服务器的 IP 地址

我们建议您的 Service 和 Pod 范围位于 RFC 1918 地址空间中。

以下是建议使用 RFC 1918 地址的一个原因。假设您的 Pod 或 Service 范围包含外部 IP 地址。从 Pod 发送到其中一个外部地址的任何流量都将被视为集群内流量,并且不会到达外部目标。

network.vCenter.networkName

您的集群节点所在的 vSphere 网络的名称。

如果配置了 infraConfigFilePath,请移除此字段。否则,此字段为必填字段且不可变。

示例:

network:
  vCenter:
    networkName: "my-network"

如果名称中包含特殊字符,您必须对其使用转义序列。

特殊字符 转义序列
正斜杠 (/) %2f
反斜杠 (\) %5c
百分号 (%) %25

如果网络名称在数据中心内不是唯一的,则可以指定完整路径。

示例:

network:
  vCenter:
    networkName: "/data-centers/data-center-1/network/my-network"

network.controlPlaneIPBlock

管理员集群的控制平面节点的相关网络信息。

如果配置了 infraConfigFilePath,请移除整个部分。否则,此部分为必需且不可变。

network.controlPlaneIPBlock.netmask

必需
不可变
字符串

具有控制平面节点的网络的网络掩码。

示例:

network:
  controlPlaneIPBlock:
    netmask: "255.255.255.0"

network.controlPlaneIPBlock.gateway

必需
不可变
字符串

控制平面节点默认网关的 IP 地址。

示例:

network:
  controlPlaneIPBlock:
    gateway: "172.16.22.1"

network.controlPlaneIPBlock.ips

必需
不可变
包含三个对象的数组,其中每个对象都具有 IP 地址和可选主机名。

这些是将分配给控制平面节点的 IP 地址。 高可用性管理员集群需要提供主机名。

示例:

network:
  controlPlaneIPBlock:
    ips:
    - ip: "172.16.22.6"
      hostname: "admin-cp-vm-1"
    - ip: "172.16.22.7"
      hostname: "admin-cp-vm-2"
    - ip: "172.16.22.8"
      hostname: "admin-cp-vm-3"

infraConfigFilePath

1.31

在此字段中指定路径会启用拓扑网域。

预览版
可选
字符串
可变

指定 vSphere 基础设施配置文件的完整路径。

示例:

infraConfigFilePath: "/my-config-folder/vsphere-infrastructure.yaml"

除了添加路径之外,还需要将 vSphere 基础设施配置文件复制到适用的目录。

如果您向 infraConfigFilePath 添加了路径,则需要对管理员集群和用户集群配置文件进行以下更改。

管理员集群配置文件更改

  • 从管理员集群配置文件中移除以下各项。您可以在每个拓扑网域的 vSphere 基础设施配置文件中配置此信息。

    • vCenter:移除整个 vCenter 部分。
    • network.hostConfig:移除整个 network.hostConfig 部分。
    • network.vCenter.networkName:移除此字段。
  • 在管理员集群配置文件中进行以下更改:

    • network.controlPlaneIPBlock:移除整个部分。请改为在 IP 地址块文件中指定管理员集群控制平面节点的 IP 地址。

    • preparedSecrets:移除此字段。启用拓扑网域后,不支持准备凭据。移除此字段。

  • 以下字段是必填字段:

用户集群配置文件更改

  • 从用户集群配置文件中移除以下各项。您可以在每个拓扑网域的 vSphere 基础设施配置文件中配置此信息。

    • vCenter:移除整个 vCenter 部分。
    • network.hostConfig:移除整个 network.hostConfig 部分。
    • network.vCenter.networkName:移除此字段。
    • masterNode.vsphere:移除整个部分。
    • nodePools[i].vsphere.datastore 和 nodePools[i].vsphere.storagePolicyName:移除这些字段。
  • 在用户集群配置文件中进行以下更改:

    • network.controlPlaneIPBlock:移除整个部分。请改为在 IP 地址块文件中指定管理员集群控制平面节点的 IP 地址。

    • preparedSecrets:移除此字段。启用拓扑网域后,不支持准备好的凭据。

    • nodePools[i].vsphere.hostgroups:移除此字段。在 1.32.200 和 1.33 及更高版本中,使用 topologyDomains[i].compute.hostGroups 在 vSphere 基础架构配置文件中为每个拓扑网域配置 VM 主机亲和性。

    • multipleNetworkInterfaces:将此字段设置为 false。启用拓扑网域后,不支持 Pod 的多个网络接口。

    • storage.vSphereCSIDisabled:将此字段设置为 true 可停用 vSphere CSI 组件的部署

  • 以下字段是必填字段:

1.30 及更低版本

不可用。

loadBalancer

本部分包含有关管理员集群的负载均衡器的信息。

loadBalancer.vips.controlPlaneVIP

必需
不可变
字符串

您选择为管理员集群的 Kubernetes API 服务器在负载均衡器上配置的 IP 地址。

示例:

loadBalancer:
  vips:
    controlplaneVIP: "203.0.113.3"

loadBalancer.kind

指定要使用的负载均衡器的类型。

1.32 及更高版本

必需
不可变
字符串
预填充值:“MetalLB”

您可以使用的负载均衡器类型取决于您是否会将集群设置为使用拓扑网域。如果配置了 infraConfigFilePath 字段,则假定集群使用拓扑网域。

  • 使用拓扑网域:将此项设置为 "ManualLB"。如果您想使用拓扑网域,则必须配置第三方负载均衡器(例如 F5 BIG-IP 或 Citrix)。

  • 不使用拓扑网域:请将此值设置为 "ManualLB" 或 "MetalLB"。 如果您有第三方负载均衡器,请使用 "ManualLB";对于我们的捆绑解决方案,请使用 "MetalLB"。

如果 enableAdvancedCluster 设置为 true(已启用高级集群),控制平面节点的负载均衡器类型由 adminMaster.controlPlaneLoadBalancer 确定。

示例:

loadBalancer:
  kind: "MetalLB"

1.31

必需
不可变
字符串
预填充值:“MetalLB”

您可以使用的负载均衡器类型取决于您是否会将集群设置为使用拓扑网域。如果配置了 infraConfigFilePath 字段,则假定集群使用拓扑网域。

  • 使用拓扑网域:将此项设置为 "ManualLB"。如果您想使用拓扑网域,则必须配置第三方负载均衡器(例如 F5 BIG-IP 或 Citrix)。

  • 不使用拓扑网域:请将此值设置为 "ManualLB" 或 "MetalLB"。 如果您有第三方负载均衡器,请使用 "ManualLB";对于我们的捆绑解决方案,请使用 "MetalLB"。

示例:

loadBalancer:
  kind: "MetalLB"

1.30

必需
不可变
字符串
预填充值:“MetalLB”

请将此设置为 "ManualLB" 或 "MetalLB"。如果您有第三方负载均衡器(例如 F5 BIG-IP 或 Citrix),请使用 "ManualLB";对于我们的捆绑解决方案,请使用 "MetalLB"。

注意与先前版本的以下差异:

  • 在 1.30 及更高版本中,对于新管理员集群,不允许使用值 "F5BigIP"。

  • 在 1.28 及更高版本中,对于新管理员集群,不允许使用值 "Seesaw"。

如果您已有使用这些负载均衡器的集群,请参阅规划将集群迁移到推荐功能。

示例:

loadBalancer:
  kind: "MetalLB"

1.29 和1.28

必需
不可变
字符串
预填充值:“MetalLB”

请将此设置为 "ManualLB"、"F5BigIP" 或 "MetalLB"

如需启用新功能和高级功能,如果您有第三方负载均衡器(例如 F5 BIG-IP 或 Citrix),我们建议您使用 "ManualLB";对于我们的捆绑解决方案,建议使用 "MetalLB"。

在 1.28 及更高版本中,对于新管理员集群,不允许使用值 "Seesaw"。如果您已有使用 Seesaw 负载均衡器的集群,请参阅从 Seesaw 负载均衡器迁移到 MetalLB。

示例:

loadBalancer:
  kind: "MetalLB"

1.16 及更低版本

必需
不可变
字符串
预填充值:“MetalLB”

字符串。请将此设置为 "ManualLB"、"F5BigIP"、"Seesaw" 或 "MetalLB"

如果您将 adminMaster.replicas 设置为 3,则无法使用 Seesaw 负载均衡器。

示例:

loadBalancer:
  kind: "MetalLB"

使用 Google Cloud 控制台、gcloud CLI 或 Terraform 创建用户集群时,管理员集群及其用户集群的负载均衡器类型必须相同。唯一的例外情况是,如果管理员集群使用 Seesaw,则用户集群可以使用 MetalLB。如果您希望管理员集群和用户集群使用不同类型的负载均衡器,则必须使用 gkectl 命令行工具创建用户集群。

loadBalancer.manualLB

如果将 loadbalancer.kind 设置为 "ManualLB",请填写此部分。否则,请移除此部分。
不可变

loadBalancer.manualLB.ingressHTTPNodePort

从配置文件中移除此字段。此字段未在管理员集群中使用。

loadBalancer.manualLB.ingressHTTPSNodePort

从配置文件中移除此字段。此字段未在管理员集群中使用。

loadBalancer.manualLB.konnectivityServerNodePort

从配置文件中移除此字段。此字段未在管理员集群中使用。

loadBalancer.f5BigIP

1.30 及更高版本

在 1.30 及更高版本中,对于新管理员集群,loadbalancer.kind 不允许使用值 "F5BigIP"。如果配置文件中包含 loadBalancer.f5BigIP 部分,请将其移除或注释掉。

您仍然可以将 F5 BIG-IP 负载均衡器与新管理员集群搭配使用,但配置不同。如需了解配置详细信息,请参阅启用手动负载均衡模式。

如果现有集群已配置此部分,则无法升级到 1.32 版。在升级到 1.32 版之前,您必须将集群迁移到推荐的功能。

1.29

如果将 loadbalancer.kind 设置为 "F5BigIP",请填写此部分。 否则,请移除此部分。

如需启用新功能和高级功能,我们建议您为 F5 BIG-IP 负载均衡器配置手动负载均衡。如需启用手动负载均衡,请将 loadbalancer.kind 设置为 "ManualLB",并填写 loadBalancer.manualLB 部分。如需了解详情,请参阅启用手动负载均衡模式。

如果您已有 F5-BIG-IP 负载均衡器,并且集群配置使用此部分,则在升级到 1.29 或更高版本后,我们建议您迁移到手动负载均衡。

1.28 及更低版本

如果将 loadbalancer.kind 设置为 "F5BigIP",请填写此部分。 否则,请移除此部分。

如需启用新功能和高级功能,我们建议您为 F5 BIG-IP 负载均衡器配置手动负载均衡。如需启用手动负载均衡,请将 loadbalancer.kind 设置为 "ManualLB",并填写 loadBalancer.manualLB 部分。如需了解详情,请参阅启用手动负载均衡模式。

loadBalancer.f5BigIP.address

1.30 及更高版本

不允许用于新集群
必需(如果 loadBalancer.kind = "F5BigIp")
不可变
字符串

F5 BIG-IP 负载均衡器的地址。例如:

loadBalancer:
  f5BigIP:
    address: "203.0.113.2"

1.29 及更低版本

必需(如果 loadBalancer.kind = "F5BigIp")
不可变
字符串

F5 BIG-IP 负载均衡器的地址。例如:

loadBalancer:
  f5BigIP:
    address: "203.0.113.2"

loadBalancer.f5BigIP.credentials.fileRef.path

1.30 及更高版本

不允许用于新集群
必需(如果 loadBalancer.kind = "F5BigIp")
可变
字符串

凭据配置文件的路径,该文件包含 Google Distributed Cloud 用于连接到 F5 BIG-IP 负载均衡器的账号的用户名和密码。

用户账号必须拥有有充分权限设置和管理负载均衡器的用户角色。管理员角色或资源管理员角色足够。

您可以使用 gkectl update 在现有集群中更新此字段。

如需了解如何更新 F5 BIG-IP 凭据,请参阅更新集群凭据。

示例:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        path: "my-config-folder/admin-creds.yaml"

1.29 及更低版本

必需(如果 loadBalancer.kind = "F5BigIp")
可变
字符串

凭据配置文件的路径,该文件包含 Google Distributed Cloud 用于连接到 F5 BIG-IP 负载均衡器的账号的用户名和密码。

用户账号必须拥有有充分权限设置和管理负载均衡器的用户角色。管理员角色或资源管理员角色足够。

您可以使用 gkectl update 在现有集群中更新此字段。

如需了解如何更新 F5 BIG-IP 凭据,请参阅更新集群凭据。

示例:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        path: "my-config-folder/admin-creds.yaml"

loadBalancer.f5BigIP.credentialsfileRef.entry

1.30 及更高版本

不允许用于新集群
必需(如果 loadBalancer.kind = "F5BigIp")
可变
字符串

凭据配置文件中的凭据块名称,该文件包含 F5 BIG-IP 账号的用户名和密码。

您可以使用 gkectl update 在现有集群中更新此字段。

如需了解如何更新 F5 BIG-IP 凭据,请参阅更新集群凭据。

示例:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        entry: "f5-creds"

1.29 及更低版本

必需(如果 loadBalancer.kind = "F5BigIp")
可变
字符串

凭据配置文件中的凭据块名称,该文件包含 F5 BIG-IP 账号的用户名和密码。

您可以使用 gkectl update 在现有集群中更新此字段。

如需了解如何更新 F5 BIG-IP 凭据,请参阅更新集群凭据。

示例:

loadBalancer:
  f5BigIP:
    credentials:
      fileRef:
        entry: "f5-creds"

loadBalancer.f5BigIP.partition

1.30 及更高版本

不允许用于新集群
必需(如果 loadBalancer.kind = "F5BigIp")
不可变
字符串

您为管理员集群创建的 BIG-IP 分区的名称。

示例:

loadBalancer:
  f5BigIP:
    partition: "my-f5-admin-partition"

1.29 及更低版本

必需(如果 loadBalancer.kind = "F5BigIp")
不可变
字符串

您为管理员集群创建的 BIG-IP 分区的名称。

示例:

loadBalancer:
  f5BigIP:
    partition: "my-f5-admin-partition"

loadBalancer.f5BigIP.snatPoolName

1.30 及更高版本

不允许用于新集群
可选
相关(如果 loadBalancer.kind = "F5BigIp")
不可变
字符串

如果您使用的是 SNAT,则它是 SNAT 池的名称。如果您不使用 SNAT,请移除此字段。

示例:

loadBalancer:
  f5BigIP:
    snatPoolName: "my-snat-pool"

1.29 及更低版本

可选
相关(如果 loadBalancer.kind = "F5BigIp")
不可变
字符串

如果您使用的是 SNAT,则它是 SNAT 池的名称。如果您不使用 SNAT,请移除此字段。

示例:

loadBalancer:
  f5BigIP:
    snatPoolName: "my-snat-pool"

loadBalancer.seesaw

请勿使用本部分。1.28 版及更高版本中的新管理员集群不支持 Seesaw 负载均衡器。我们建议您为新的管理员集群配置 MetalLB 负载均衡器。如需详细了解如何配置 MetalLB,请参阅使用 MetalLB 进行捆绑式负载均衡。

虽然我们仍然支持为已升级的非 HA 管理员集群使用 Seesaw,但我们建议您迁移到 MetalLB。

antiAffinityGroups.enabled

可选
可变
布尔值
预填充值:true

将此值设为 true 可启用 DRS 规则创建。否则,请将其设置为 false。

如果此字段为 true,则 Google Distributed Cloud 会为您的管理员集群节点创建 VMware 分布式资源调度器 (DRS) 反亲和性规则,使它们分布在数据中心的至少三个物理 ESXi 主机上。

为了使用此功能,您的 vSphere 环境必须满足以下条件:

  • VMware DRS 已启用。VMware DRS 需要 vSphere Enterprise Plus 许可版本。

  • 您的 vSphere 用户账号具有 Host.Inventory.Modify cluster 特权。

  • 至少有四个 ESXi 主机可用。

即使该规则要求群集节点分布在三个 ESXi 主机上,我们强烈建议您至少有四个可用的 ESXi 主机。这样可以防止您丢失管理员集群控制平面。例如,假设您只有三个 ESXi 主机,并且您的管理员集群控制平面节点位于发生故障的 ESXi 主机上。DRS 规则将阻止控制平面节点放置在其余两个 ESXi 主机之一上。

回想一下,如果您拥有 vSphere Standard 许可,则无法启用 VMware DRS。

如果您尚未启用 DRS,或没有至少四个主机可供安排 vSphere 虚拟机,请将 antiAffinityGroups.enabled 设置为 false。

请注意高级集群的以下限制:

  • 1.31 版:如果 enableAdvancedCluster 字段为 true,则高级集群不支持反亲和性规则,您必须将 antiAffinityGroups.enabled 设置为 false。

  • 1.32 版:高级集群支持反亲和性规则。

示例:

antiAffinityGroups:
  enabled: true

adminMaster

不可更改

管理员集群中控制平面节点的配置设置。

adminMaster.controlPlaneLoadBalancer

1.32 及更高版本

(可选)包含此部分,以指定用于管理员集群中控制平面流量的负载均衡器类型。如果您想明确设置要使用的负载均衡器类型,而不是依赖默认值,请在配置文件中添加 adminMaster.controlPlaneLoadBalancer.mode。此外,您还必须在配置文件中设置 loadBalancer.kind,即使该字段在 1.32 及更高版本中不起作用也是如此。

adminMaster.controlPlaneLoadBalancer.mode

可选
不可变
字符串
默认值:取决于集群是否使用拓扑网域

您可以使用的负载均衡器类型取决于您是否会将集群设置为使用拓扑网域。如果配置了 infraConfigFilePath 字段,则假定集群使用拓扑网域。

  • 使用拓扑网域:指定 "manual"(默认值)。如果您想使用拓扑网域,则必须配置第三方负载均衡器(例如 F5 BIG-IP 或 Citrix)。

  • 不含拓扑网域:指定 "manual" 或 "bundled"。 如果您有第三方负载均衡器,请使用 "manual";对于我们的捆绑解决方案,请使用 "bundled",该解决方案使用在三个管理员集群控制平面节点上运行的 keepalived + haproxy。默认值为 "bundled"。

示例:

adminMaster:
  controlPlaneLoadBalancer:
    mode: "manual"

1.31 及更低版本

此部分不可用。请改用 loadBalancer.kind 来指定管理员集群要使用的负载均衡器类型。

adminMaster.cpus

预览版
可选
不可变
整数
预填充值:4
默认值:4

管理员集群中每个控制平面节点的 vCPU 数量。

示例:

adminMaster:
  cpus: 4

adminMaster.memoryMB

预览版
可选
不可变
整数
预填充值:16384
默认值:16384

管理员集群中每个控制平面节点的内存大小(以 MiB 为单位)。

示例:

adminMaster:
  memoryMB: 16384

adminMaster.replicas

1.28 及更高版本

对于新集群是必需的
不可变
整数
可能的值:3

管理员集群中的控制平面节点数量。在 1.28 及更高版本中,新管理员集群必须具有高可用性 (HA)。将此字段设置为 3 可创建包含 3 个控制平面节点的 HA 管理员集群。

示例:

adminMaster:
  replicas: 3

1.16 及更低版本

可选
不可变
整数
可能的值:1 或 3
预填充值:1
默认值:1

管理员集群中的控制平面节点数量。如果要创建高可用性管理员集群,请将此字段设置为 3。否则,请将其设置为 1。

如果您将此项设置为 3,则还必须填写 network.controlPlaneIPBlock 部分和 network.hostConfig 部分。

如果将此字段设置为 3,则无法使用 Seesaw 负载均衡器。

示例:

adminMaster:
  replicas: 3

adminMaster.topologyDomains

1.32 及更高版本

预览版
可选
字符串数组 | 允许一个元素或三个不同的元素
不可变
默认值:vSphereInfraConfig.defaultTopologyDomain(如果在 vSphere 基础设施配置文件中指定)

拓扑网域数组。如果配置了 infraConfigFilePath(这表示集群将使用拓扑网域),请视需要添加此字段。数组中的拓扑网域数量决定了管理员集群控制平面节点的部署方式,如下所示:

  • 一个元素:所有三个管理员集群控制平面节点都将部署在指定的拓扑网域中。
  • 三个元素:每个管理员集群控制层面节点将部署在不同的拓扑网域中(即每个拓扑网域一个节点)。

1.31 及更高版本

仅适用于新集群
预览版
字符串数组 | 仅允许一个元素
可选
不可变
默认值:vSphereInfraConfig.defaultTopologyDomain(如果在 vSphere 基础设施配置文件中指定)

拓扑网域数组。如果配置了 infraConfigFilePath(这表示集群将使用拓扑网域),请视需要添加此字段。管理员集群控制平面节点将部署在指定的拓扑网域中。

1.30 及更低版本

不可用。

addonNode.autoResize.enabled

1.28 及更高版本

创建新集群时,请勿在配置文件中添加此设置。在 1.28 及更高版本中创建的管理员集群必须具有高可用性 (HA),并包含三个控制平面节点。在 1.28 及更高版本中,HA 管理员集群没有插件节点。

1.16 及更低版本

可选
可变
布尔值
预填充值:false
默认值:false

将此值设置为 true 以启用管理员集群中插件节点的自动调整大小。否则,请将其设置为 false。

要更新此字段的值,请使用 gkectl update admin。

示例:

addonNode:
  autoResize:
    enabled: true

proxy

如果您的网络由代理服务器提供支持,请填写此部分。否则,请移除此部分或将其注释掉。 您在此处指定的代理服务器会被此管理员集群管理的用户集群使用。
不可变

proxy.url

如果填写了 proxy 部分,则此字段是必需的。
不可变
字符串

代理服务器的 HTTP 地址。即使端口号与该方案的默认端口相同,也要填写此端口号。

示例:

proxy:
  url: "http://my-proxy.example.local:80"

您在此处指定的代理服务器会被 Google Distributed Cloud 使用。此外,除非您在管理员工作站上设置 HTTPS_PROXY 环境变量,否则您的管理员工作站会自动配置为使用同一代理服务器。

如果您指定 proxy.url,则还必须指定 proxy.noProxy。

设置管理员集群的代理配置后,除非重新构建集群,否则无法修改或删除该配置。

proxy.noProxy

可选
不可变
字符串

不应通过代理服务器的 IP 地址、IP 地址范围、主机名和域名的列表(以英文逗号分隔)。当 Google Distributed Cloud 向这些地址、主机或网域之一发送请求时,系统会直接发送请求。

示例:

proxy:
  noProxy: "10.151.222.0/24,my-host.example.local,10.151.2.1"

privateRegistry

私有容器注册表是指仅授权经过身份验证的用户访问容器映像的注册表。如果您的用户集群需要访问工作负载映像,请填写此部分。当您配置 privateRegistry 部分时,此管理员集群管理的所有用户集群都将从您在此处配置的私有注册表中拉取工作负载映像。

如果您配置了 privateRegistry 部分,则在创建或升级集群之前运行 gkectl prepare 时,gkectl 会将 Google Distributed Cloud 系统映像推送到私有注册表。在创建或升级集群期间,系统映像会从私有注册表中拉取。如果您未配置 privateRegistry 部分,则系统映像会使用组件访问服务账号从 gcr.io/gke-on-prem-release 中拉取。

在以下情况下,您可能需要配置 privateRegistry 部分,以便集群从私有注册表(而不是 gcr.io/gke-on-prem-release)中拉取系统映像:

  • 由于安全问题或法规要求,您需要最大限度地减少与 Google Cloud 的连接。
  • 您的组织要求出站流量通过代理服务器,并且连接到 Google Cloud 的网络速度较慢。

如果您要将 Google 的 Artifact Registry 用作私有注册表,请参阅将 Artifact Registry 用作工作负载映像的私有注册表,了解配置步骤。

privateRegistry.address

必需(对于私有注册表)
不可变
字符串

运行您的私有注册表的机器的 IP 地址或 FQDN(完全限定域名)。

示例:

privateRegistry:
  address: "203.0.113.10"
privateRegistry:
  address: "fqdn.example.com"

privateRegistry.credentials.fileRef.path

必需(对于私有注册表)
可变
字符串

凭据配置文件的路径,该文件包含 Google Distributed Cloud 可用于访问私有注册表的账号的用户名和密码。

示例:

privateRegistry:
  credentials:
    fileRef:
      path: "my-config-folder/admin-creds.yaml"

privateRegistry.credentials.fileRef.entry

必需(对于私有注册表)
可变
字符串

凭据配置文件中的凭据块名称,该文件包含您的私有注册表账号的用户名和密码。

privateRegistry:
  credentials:
    fileRef:
      entry: "private-registry-creds"

privateRegistry.caCertPath

必需(对于私有注册表)
可变
字符串

当容器运行时从您的私有注册表中拉取映像时,该注册表必须通过提供证书来证明其身份。注册表的证书由证书授权机构 (CA) 签名。容器运行时使用 CA 的证书来验证该注册表的证书。

将此字段设置为 CA 证书的路径。

示例:

privateRegistry:
  caCertPath: "my-cert-folder/registry-ca.crt"

componentAccessServiceAccountKeyPath

必需
可变
字符串

组件访问服务账号的 JSON 密钥文件的路径。

示例:

componentAccessServiceAccountKeyPath: "my-key-folder/access-key.json"

gkeConnect

必需
可变

如果填写 gkeConnect 部分,则管理员集群会在创建后自动注册到舰队。本部分包含有关注册集群所需的 Google Cloud 项目和服务账号的信息。

在创建或更新集群期间,系统会在管理员集群上配置多个 RBAC 政策。有了这些 RBAC 政策,您才能在 Google Cloud 控制台中创建用户集群。

gkeConnect.projectID

必需
不可变
字符串

舰队宿主项目的 ID。 对于新集群,此项目 ID 必须与 stackdriver.projectID 和 cloudAuditLogging.projectID 中设置的 ID 相同。如果项目 ID 不同,集群创建将失败。此要求不适用于现有集群。

示例:

gkeConnect:
  projectID: "my-fleet-host-project"

gkeConnect.location

可选
不可变
字符串
默认值:global

每个集群的舰队成员资格由 Fleet 服务 (gkehub.googleapis.com) 和 Connect 服务 (gkeconnect.googleapis.com) 管理。这些服务的位置可以是全球级的,也可以是区域级的。在 1.28 版及更高版本中,您可以视需要指定 Fleet 和 Connect 服务在其中运行的 Google Cloud区域。如果未指定,则使用服务的全球实例。请注意以下几点:

  • 在 1.28 版之前创建的管理员集群由全球舰队和 Connect 服务管理。

  • 对于新集群,如果添加此字段,则您指定的区域必须与 cloudAuditLogging.clusterLocation、stackdriver.clusterLocation 和 gkeOnPremAPI.location 中配置的区域相同。如果区域不相同,集群创建将失败。

示例:

gkeConnect:
  location: "us-central1"

gkeConnect.registerServiceAccountKeyPath

必需
可变
字符串

连接和注册服务账号的 JSON 密钥文件的路径。

示例:

gkeConnect:
  registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"

gkeOnPremAPI

可选

在 1.16 及更高版本中,如果在Google Cloud 项目中启用了 GKE On-Prem API,则该项目中的所有集群都会在 stackdriver.clusterLocation 中配置的区域中自动注册 GKE On-Prem API。

  • 如果您想要在 GKE On-Prem API 中注册项目中的所有集群,请务必执行准备工作中的步骤,以在项目中激活和使用 GKE On-Prem API。

  • 如果您不想在 GKE On-Prem API 中注册集群,请添加此部分并将 gkeOnPremAPI.enabled 设置为 false。如果您不想注册项目中的任何集群,请在项目中停用 gkeonprem.googleapis.com(GKE On-Prem API 的服务名称)。如需查看相关说明,请参阅停用服务。

在 GKE On-Prem API 中注册管理员集群后,您可以使用标准工具( Google Cloud 控制台、Google Cloud CLI 或 Terraform)来升级由管理员集群管理的用户集群。注册集群后,您还可以运行 gcloud 命令来获取集群的相关信息。

添加此部分并创建或更新管理员集群后,如果后续您移除此部分并更新集群,更新将失败。

gkeOnPremAPI.enabled

如果添加了 gkeOnPremAPI 部分,则此字段是必须的。
可变
布尔值
默认值:true

默认情况下,如果项目中启用了 GKE On-Prem API,则集群会在 GKE On-Prem API 中注册。如果您不想注册集群,请设置为 false。

在 GKE On-Prem API 中注册集群后,如果您需要取消注册集群,请进行以下更改然后更新集群:

gkeOnPremAPI:
  enabled: false

gkeOnPremAPI.location

不可变
字符串
默认值:stackdriver.clusterLocation

GKE On-Prem API 在其中运行和存储集群元数据的 Google Cloud 区域。选择一个支持的区域。您必须使用在 cloudAuditLogging.clusterLocation、gkeConnect.location 和 stackdriver.clusterLocation 中配置的同一区域。如果 gkeOnPremAPI.enabled 为 false,请勿添加此字段。

stackdriver

必需
可变

stackdriver.projectID

对于 Logging 和 Monitoring 是必需的
不可变
字符串

舰队宿主项目的 ID。 对于新集群,此项目 ID 必须与 gkeConnect.projectID 和 cloudAuditLogging.projectID 中设置的 ID 相同。如果项目 ID 不同,集群创建将失败。此要求不适用于现有集群。

如果需要,您可以在此项目中配置日志路由器,以将日志路由到另一个项目中的日志存储桶。如需了解如何配置日志路由器,请参阅支持的目标位置。

示例:

stackdriver:
  projectID: "my-fleet-host-project"

stackdriver.clusterLocation

对于 Logging 和 Monitoring 是必需的
不可变
字符串
预填充值:“us-central1”

您要在其中路由和存储 Cloud Monitoring 指标的 Google Cloud 区域。我们建议您选择一个靠近本地数据中心的区域。

您可以在日志路由器配置中指定 Cloud Logging 日志路由和存储位置。如需详细了解日志路由,请参阅路由和存储概览。

Stackdriver Operator (stackdriver-operator) 会将此字段的值附加到每个日志条目和指标,然后再将它们路由到 Google Cloud。这些附加标签可分别用于在 Logs Explorer 和 Metrics Explorer 中过滤日志和指标。

对于新集群,如果您在配置文件中添加 gkeOnPremAPI 和 cloudAuditLogging 部分,则您在此处设置的区域必须与您在 cloudAuditLogging.clusterLocation、gkeConnect.location 和 gkeOnPremAPI.location 中设置的区域相同。如果区域不相同,集群创建将失败。

示例:

stackdriver:
  clusterLocation: "us-central1"

stackdriver.serviceAccountKeyPath

对于 Logging 和 Monitoring 是必需的
可变
字符串

您的日志记录和监控服务账号的 JSON 密钥文件的路径。

如果您在创建集群时将 enableAdvancedCluster 设置为 true(这是设置拓扑网域所必需的),则 stackdriver.serviceAccountKeyPath 必须与 cloudAuditLogging.serviceAccountKeyPath 相同。

如需了解如何更新现有集群中的此字段,请参阅轮替服务账号密钥。

示例:

stackdriver:
  serviceAccountKeyPath: "my-key-folder/log-mon-key.json"

stackdriver.disableVsphereResourceMetrics

可选
可变
相关(对于 Logging 和 Monitoring)
布尔值
预填充值:false
默认值:false

将此属性设置为 true 可停用从 vSphere 收集指标。否则,请将其设置为 false。

如要在 Google Cloud 控制台中管理用户集群的生命周期,则必须在管理员集群中完成此部分的步骤。

示例:

stackdriver:
  disableVsphereResourceMetrics: true

cloudAuditLogging

如果要将集群的 Kubernetes API 服务器中的审核日志与 Cloud Audit Logs 集成,请填写此部分。否则,请移除此部分或将其注释掉。
可变

如果您要使用 GKE On-Prem API 客户端管理用户集群的生命周期,则此部分在管理员集群中是必需的。

cloudAuditLogging.projectID

对于 Cloud Audit Logs 是必需的
不可变
字符串

舰队宿主项目的 ID。对于新集群,此项目 ID 必须与 gkeConnect.projecID 和 stackdriver.projectID 中设置的 ID 相同。如果项目 ID 不同,集群创建将失败。此要求不适用于现有集群。

如果需要,您可以在此项目中配置日志路由器,以将日志路由到另一个项目中的日志存储桶。如需了解如何配置日志路由器,请参阅支持的目标位置。

示例:

cloudAuditLogging:
  projectID: "my-fleet-host-project"

cloudAuditLogging.clusterLocation

对于 Cloud Audit Logs 是必需的
不可变
字符串

您要在其中存储审核日志的 Google Cloud 区域。建议选择一个靠近您的本地数据中心的区域

对于新集群,如果您在配置文件中添加 gkeOnPremAPI 和 stackdriver 部分,则您在此处设置的区域必须与您在 gkeConnect.location、gkeOnPremAPI.location 和 stackdriver.clusterLocation 中设置的区域相同。如果区域不相同,集群创建将失败。

示例:

cloudAuditLogging:
  clusterLocation: "us-central1"

cloudAuditLogging.serviceAccountKeyPath

对于 Cloud Audit Logs 是必需的
可变
字符串

审核日志记录服务账号的 JSON 密钥文件的路径。

如果您在创建集群时将 enableAdvancedCluster 设置为 true(这是设置拓扑网域所必需的),则 cloudAuditLogging.serviceAccountKeyPath 必须与 stackdriver.serviceAccountKeyPath 相同。

如需了解如何更新现有集群中的此字段,请参阅轮替服务账号密钥。

示例:

cloudAuditLogging:
  serviceAccountKeyPath: "my-key-folder/audit-log-key.json"

clusterBackup.datastore

可选
可变
字符串

默认情况下,集群备份 tar 文件会保存到管理员工作站上的 gkectl-workspace/backups 目录。如果您想在 vSphere 中存储集群备份文件,请将此字段设置为您要用于保存备份的 vSphere 数据存储区。

示例:

clusterBackup:
  datastore: "my-datastore"

请注意,此字段的支持情况存在以下差异:

  • 对于高级集群:

    • 1.31 版:从配置文件中移除 clusterBackup.datastore。不支持将集群备份到 vSphere 数据存储区。

    • 版本 1.32:clusterBackup.datastore 处于预览状态

    • 1.33 及更高版本:clusterBackup.datastore 为正式版。

  • 对于非高级集群,clusterBackup.datastore 仍处于预览版阶段。

详情请参阅以下内容:

autoRepair.enabled

可选
可变
布尔值
预填充值:true

将此值设置为 true 以启用节点自动修复。否则,请将其设置为 false。

要更新此字段的值,请使用 gkectl update admin。

示例:

autoRepair:
  enabled: true

secretsEncryption

如果您想加密 Secret 而无需外部 KMS(密钥管理服务)或任何其他依赖项,请填写此部分。否则,请移除此部分或将其注释掉。
不可变

如果您在创建集群时将 enableAdvancedCluster 设置为 true(这是设置拓扑网域所必需的),请移除此部分。高级集群不支持此功能。

secretsEncryption.mode

对于 Secret 加密是必需的
不可变
字符串
可能的值:“GeneratedKey”
预填充值:“GeneratedKey”

Secret 加密模式。

secretsEncryption:
  mode: "GeneratedKey"

secretsEncryption.generatedKey.keyVersion

对于 Secret 加密是必需的
可变
整数
预填充值:1

您选择用于密钥版本号的整数。我们建议您从 1 开始。

示例:

secretsEncryption:
  generatedKey:
    keyVersion: 1

secretsEncryption.generatedKey.disabled

对于 Secret 加密是可选的
可变
布尔值
预填充值:false

将此值设置为 true 以停用 Secret 加密。否则,请将其设置为 false。

示例:

secretsEncryption:
  generatedKey:
    disabled: false

osImageType

可选
可变
字符串
可能的值:对于 1.34 及更早版本:“ubuntu_containerd”“cos”
对于 1.35 及更新版本:“ubuntu_cgv2”“cos_cgv2”
预填充值:“ubuntu_cgv2”
默认值:“ubuntu_containerd”

要在管理员集群节点上运行的操作系统映像的类型。

请注意高级集群的以下限制:

  • 1.31 版:如果 enableAdvancedCluster 字段为 true,则高级集群仅支持 ubuntu-cgroupv2 和 ubuntu_containerd。

  • 版本 1.32:高级集群支持所有操作系统映像类型。

注意:在 1.32 及更低版本中,完整软件包不包含 cgroup v2 操作系统映像。如果您指定了 ubuntu_cgv2 或 cos_cgv2,则必须使用常规软件包。如需了解详情,请参阅 Google Distributed Cloud 软件包简介。

示例:

osImageType: "cos_cgv2"