1.9 版。如 Anthos 版本支持政策中所述,提此版本是受支持的版本,提供影响 VMware 上的 Anthos 集群 (GKE On-Prem) 的安全漏洞、威胁和问题的最新补丁程序和更新。如需了解详情,请参阅版本说明。这是最新版本。

用户集群配置文件

本页面介绍 VMware 上的 Anthos 集群 (GKE On-Prem) 用户集群配置文件中的字段。

生成配置文件模板

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

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

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

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

替换以下内容:

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

VERSION:所需的版本号。例如:gkectl create-config cluster --gke-on-prem-version=1.9.0-gke.8

模板

填写配置文件

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

name

字符串。您为用户集群选择的名称。例如:

name: "my-user-cluster"

gkeOnPremVersion

字符串。用户集群的 Anthos clusters on VMware 版本。例如:

gkeOnPremVersion: "1.9.0-gke.1"

vCenter

如果您希望 vCenter 环境的所有方面都与您为管理员集群指定的内容相同,请移除此部分或将其注释掉。

如果您希望 vCenter 环境的某些方面与您为管理员集群指定的内容不同,请填写此部分中的相关字段。您在 vCenter 部分中设置的任何字段都将替换管理员集群配置文件中的相应字段。

vCenter.datacenter

字符串。用户集群的 vCenter 数据中心的名称。如果未指定,则系统会在管理员集群数据中心创建集群。

例如:

vCenter:
  datascenter: "MY-USER-DATACENTER"

如果指定,则还必须包含 vCenter.datastorevCenter.networkName 字段,并且必须指定 vCenter.clustervCenter.resourcePool。请参阅在单独的数据中心创建用户集群

vCenter.resourcePool

字符串。用户集群的 vCenter 资源池的名称。如果您使用的是非默认资源池,请提供您的 vCenter 资源池的名称。例如:

vCenter:
  resourcePool: "MY-USER-POOL"

如果您使用的是默认资源池,请提供以下值:

vCenter:
  resourcePool: "VCENTER_CLUSTER/Resources"

VCENTER_CLUSTER 替换为您的 vCenter 集群的名称。

请参阅为独立主机指定根资源池

如果未指定,并且如果您指定了 vCenter.datacenter,则必须为 vCenter.cluster 提供一个值。

vCenter.datastore

字符串。用户集群的 vCenter 数据存储区的名称。例如:

vCenter:
  datastore: "MY-USER-DATASTORE"

vCenter.cluster

字符串。vCenter 中的集群的名称。

例如:

vCenter:
  cluster: USER_CLUSTER

如果未指定 vCenter.cluster,则必须为 vCenter.resourcePool 指定值。

vCenter.folder

字符串。vCenter.datacenter 下的文件夹的名称。

例如:

vCenter:
  folder: USER_FOLDER

vCenter.caCertPath

字符串。当客户端(如 GKE On-Prem)向您的 vCenter 服务器发送请求时,服务器必须通过提供证书或证书软件包来向客户端证明其身份。为了验证证书或软件包,GKE On-Prem 必须具有信任链中的根证书。

vCenter.caCertPath 设置为根证书的路径。例如:

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

VMware 安装的证书授权机构 (CA) 会向您的 vCenter 服务器颁发证书。信任链中的根证书是由 VMware 创建的自签名证书。

如果您不想使用默认的 VMWare CA,则可以将 VMware 配置为使用其他证书授权机构。

如果您的 vCenter 服务器使用默认 VMware CA 颁发的证书,请按如下方式下载该证书:

curl -k "https://SERVER_ADDRESS/certs/download.zip" > download.zip

SERVER_ADDRESS 替换为您的 vCenter 服务器的地址。

安装 unzip 命令并解压缩证书文件:

sudo apt-get install unzip
unzip downloads.zip

如果 unzip 命令首次执行失败,请再次输入该命令。

certs/lin 中可找到证书文件。

如果您的证书发生变化,您可以更新对新证书的引用

vCenter.credentials.fileRef.path

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

vCenter:
  credentials:
    fileRef:
      path: "my-config-directory/user-creds.yaml"

vCenter.credentials.fileRef.entry

字符串。凭据配置文件中的凭据块名称,该文件包含您的 vCenter 用户帐号的用户名和密码。例如:

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

vCenter.folder

字符串。您的集群虚拟机所在的 vCenter 文件夹的名称。例如:

vCenter:
  folder: "MY-FOLDER"

network

本部分包含有关用户集群网络的信息。

network.hostConfig

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

如果您为以下一个或两个字段提供了值,请填写此部分。否则,请移除此部分。

  • loadBalancer.seesaw.ipBlockFilePath
  • network.ipMode.ipBlockFilePath

network.hostConfig.dnsServers

字符串数组。供主机使用的 DNS 服务器地址。例如:

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

network.hostConfig.ntpServers

字符串数组。供主机使用的时间服务器地址。例如:

network:
  hostConfig:
    ntpServers:
    - "216.239.35.0"

network.hostConfig.searchDomainsForDNS

字符串数组。供主机使用的 DNS 搜索网域。这些网域会被用作网域搜索列表的一部分。例如:

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

network.ipMode.type

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

network:
  ipMode:
    type: "static"

network.ipMode.ipBlockFilePath

如果将 ipMode.type 设置为 "static",请填写此字段。 如果您将 ipMode.type 设置为 "dhcp",请移除此字段。

字符串。集群的 IP 地址块文件的路径。例如:

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

network.serviceCIDRnetwork.podCIDR

字符串。用户集群必须拥有用于 Service 的 IP 地址范围以及用于 pod 的 IP 地址范围。这些范围由 network.serviceCIDRnetwork.podCIDR 字段指定。这些字段会填充默认值。您也可以将填充值更改为您选择的值。

Service 和 pod 范围不得重叠。此外,Service 和 pod 范围不得与任何集群中节点的 IP 地址重叠。

示例:

network:
  serviceCIDR: "10.96.232.0/24"
  podCIDR: "192.168.0.0/16"

network.vCenter.networkName

字符串。您的用户集群节点所在的 vSphere 网络的名称。

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

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

如果网络名称不唯一,则可以指定网络的路径,例如 /DATACENTER/network/NETWORK_NAME。

例如:

network:
  vCenter:
    networkName: "MY-USER-CLUSTER-NETWORK"

loadBalancer

本部分包含有关用户集群的负载平衡器的信息。

loadBalancer.vips.controlPlaneVIP

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

loadBalancer:
  vips:
    controlplaneVIP: "203.0.113.3"

loadBalancer.vips.ingressVIP

您已选择在负载平衡器上为入站流量配置的 IP 地址。例如:

loadBalancer:
  vips:
    ingressVIP: "203.0.113.4"

loadBalancer.kind

字符串。请将此设置为 "Seesaw""F5BigIP""ManualLB"。例如:

loadBalancer:
  kind: "Seesaw"

loadBalancer.manualLB

如果将 loadbalancer.kind 设置为 "manualLB",请填写此部分。否则,请移除此部分或将其注释掉。

loadBalancer.manualLB.ingressHTTPNodePort

整数。用户集群中的 Ingress 服务实现为 LoadBalancer 类型的 Kubernetes Service。该 Service 具有用于 HTTP 的 ServicePort。您必须为 HTTP ServicePort 选择 nodePort 值。

将此字段设置为 nodePort 值。例如:

loadBalancer:
  manualLB:
    ingressHTTPNodePort: 32527

loadBalancer.manualLB.ingressHTTPSNodePort

整数。用户集群中的 Ingress 服务实现为 LoadBalancer 类型的 Service。该 Service 具有用于 HTTPS 的 ServicePort。您必须为 HTTPS ServicePort 选择 nodePort 值。

将此字段设置为 nodePort 值。例如:

loadBalancer:
  manualLB:
    ingressHTTPSNodePort: 30139

loadBalancer.manualLB.controlPlaneNodePort

整数。管理员集群中的 Kubernetes API 服务器实现为 NodePort 类型的 Service。您必须为 Service 选择 nodePort 值。

将此字段设置为 nodePort 值。例如:

loadBalancer:
  manualLB:
    controlPlaneNodePort: 30968

loadBalancer.manualLB.addonsNodePort

删除该字段。在用户集群中不使用它。

loadBalancer.f5BigIP

如果将 loadbalancer.kind 设置为 "f5BigIP",请填写此部分。否则,请移除此部分或将其注释掉。

loadBalancer.f5BigIP.address

字符串。F5 BIG-IP 负载平衡器的地址。例如:

loadBalancer:
  f5BigIP:
      address: "203.0.113.2"

loadBalancer.f5BigIP.fileRef.path

字符串。凭据配置文件的路径,该文件包含 Anthos clusters on VMware 可用于连接到 F5 BIG-IP 负载均衡器的帐号的用户名和密码。例如:

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

loadBalancer.f5BigIP.fileRef.entry

字符串。凭据配置文件中的凭据块名称,该文件包含 F5 BIG-IP 帐号的用户名和密码。例如:

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

loadBalancer.f5BigIP.partition

字符串。您为管理员集群创建的 BIG-IP 分区的名称。例如:

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

loadBalancer.f5BigIP.snatPoolName

字符串。如果您使用的是 SNAT,则它是 SNAT 池的名称。如果您未使用 SNAT,请移除此字段或将其注释掉。例如:

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

loadBalancer.seesaw

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

如需了解如何设置 Seesaw 负载均衡器,请参阅 Seesaw 负载均衡器快速入门使用 Seesaw 进行捆绑式负载均衡

loadBalancer.seesaw.ipBlockFilePath

字符串。将此项设置为 Seesaw 虚拟机的 IP 地址块文件路径。例如:

loadBalancer:
  seesaw:
    ipBlockFilePath: "config-folder/admin-seesaw-ipblock.yaml"

loadBalancer.seesaw.vrid

整数。您的 Seesaw 虚拟机的虚拟路由器标识符。此标识符(您选择的整数)在 VLAN 中必须是唯一的。有效范围为 1-255。例如:

loadBalancer:
  seesaw:
    vrid: 125

loadBalancer.seesaw.masterIP

字符串。主 Seesaw 虚拟机上配置的虚拟 IP 地址。例如:

loadBalancer:
  seesaw:
    masterIP: 172.16.20.21

loadBalancer.seesaw.cpus

整数。每个 Seesaw 虚拟机的 CPU 数量。例如:

loadBalancer:
  seesaw:
    cpus: 8

loadBalancer.seesaw.memoryMB

整数。每个 Seesaw 虚拟机的内存大小(以 MB 为单位)。例如:0

loadBalancer:
  seesaw:
    memoryMB: 8192

loadBalancer.seesaw.vCenter.networkName

字符串。包含 Seesaw 虚拟机的 vCenter 网络的名称。例如:

loadBalancer:
  seesaw:
    vCenter:
      networkName: "my-seesaw-network"

loadBalancer.seesaw.enableHA

布尔值。如果要创建可用性高的 Seesaw 负载平衡器,请将此值设置为 true。否则,请将其设置为 false。高可用性 Seesaw 负载均衡器使用(主备)虚拟机对。例如:

loadBalancer:
  seesaw:
    enableHA: true

loadBalancer.seesaw.disableVRRPMAC

布尔值。如果将此值设置为 true,则 Seesaw 负载均衡器不会使用 MAC 学习进行故障切换,而是会使用免费 ARP。如果将其设置为 false,则 Seesaw 负载均衡器会使用 MAC 学习。我们建议您将此值设置为 true。如果您使用的是 vSphere 7 或更高版本,并且具有高可用性 Seesaw 负载均衡器,则必须将此值设置为 true。例如:

loadBalancer:
  seesaw:
    disableVRRPMAC: true

enableDataplaneV2

布尔值。如果您要启用 Dataplane V2,请将此字段设置为 true。否则,请将其设置为 false。例如:

enableDataplaneV2: true

Dataplane V2 仅在用户集群中可用。

如需了解问题排查步骤,请参阅数据平面 V2 问题排查

enableWindowsDataplaneV2

布尔值。预览版。

如果要为具有 Windows 节点的集群启用 Windows Dataplane V2,请将此字段设置为 true。否则,请将其设置为 false。例如:

enableWindowsDataplaneV2: true

Windows Dataplane V2 仅在用户集群中可用。

如需了解问题排查步骤,请参阅数据平面 V2 问题排查。 如需设置包含 Windows Server 操作系统节点的节点池,请参阅 Windows Server 操作系统节点池用户指南

enableAnthosNetworkGateway

布尔值。预览版。

如果要启用 Anthos 网络网关,请将此值设置为 true。否则,请将其设置为 false。如果要配置出站 NAT 网关,则必须将其设置为 true。例如:

enableAnthosNetworkGateway: true

masterNode

本部分包含有关管理员集群中节点(用作用户集群的控制层面节点)的信息。

masterNode.vsphere.datastore

字符串。此用户集群的用户控制层面节点的数据存储区。例如:

masterNode:
   vsphere:
      datastore: USER_MASTER_DATASTORE

默认情况下,如果未指定,则当用户集群使用管理员集群数据中心时,此值默认为用户集群数据存储区。

如果用户集群使用其他数据中心,则此字段为必填字段,并且不会应用默认值。

masterNode.cpus

整数。用作此用户集群控制层面的各管理员集群节点的 CPU 数。例如:

masterNode:
  cpus: 8

masterNode.memoryMB

整数。用作此用户集群控制层面的各管理员集群节点的内存大小(以 MB 为单位)。例如:

masterNode:
  memoryMB: 8192

masterNode.replicas

整数。此用户集群的控制层面节点数量。将此字段设置为 1 或 3。例如:

masterNode:
  replicas: 3

masterNode.autoResize.enabled

布尔值。将此字段设置为 true 以启用用户集群控制层面节点的自动大小调整功能。请注意,用户集群的控制层面节点位于管理员集群中。例如:

masterNode:
  autoResize:
    enabled: true

masterNode.vsphere.datastore

字符串。将在其中创建主节点的数据存储区。例如:

masterNode:
  vSphere:
    datastore: "MY-DATASTORE"

nodePools

对象数组,其中每个对象都描述一个节点池。

nodePools[i].name

字符串。您为节点池选择的名称。例如:

nodePools:
- name: "my-node-pool"

nodePools[i].cpus

整数。池中每个节点的 CPU 数量。例如:

nodePools"
- name: "my-node-pool"
  cpus: 8

nodePools[i].memoryMB

整数。池中每个节点的内存大小(以 MB 为单位)。例如:

nodePools"
- name: "my-node-pool"
  memoryMB: 8192

nodePools[i].replicas

整数。池中的节点数。例如:

nodePools:
- name: "my-node-pool"
  replicas: 5

nodePools[i].bootDiskSizeGB

整数。池中每个节点的启动磁盘的大小(以千兆字节为单位)。从 Anthos clusters on VMware 1.5.0 版开始可以使用此配置。例如:

nodePools
- name: "my-node-pool"
  bootDiskSizeGB: 40

nodePools[i].osImageType

字符串。要在节点池中的虚拟机上运行的操作系统映像类型。可能的值为“ubuntu_containerd”、“ubuntu”和“cos”。例如:

nodePools
- name: "my-node-pool"
  osImageType: "ubuntu_containerd"

nodePools[i].labels

映射。要应用于池中每个节点的标签。例如:

nodePools:
- name: "my-node-pool"
  labels:
    environment: "production"
    tier: "cache"

nodePools[i].taints

对象数组,其中每个对象都描述了一个污点。例如:

nodePools:
- name: "my-node-pool"
  taints:
  - key: "staging"
    value: "true"
    effect: "NoSchedule"

nodePools[i].vsphere.datastore

字符串。将在其中创建池中每个节点的 vCenter 数据存储区的名称。例如:

nodePools:
- name: "my-node-pool"
  vsphere:
    datastore: "my-datastore"

nodePools[i].vsphere.tags

对象的数组,其中每个对象都描述了要放置在节点池中的虚拟机的 vSphere 标记。每个标记都有一个类别和名称。例如:

nodePools:
- name: "my-node-pool"
  vsphere:
    tags:
    - category: "purpose"
      name: "testing"

如果要将标记附加到节点池中的所有虚拟机,您的 vCenter 用户帐号必须具有以下 vSphere 标记权限

  • vSphere 标记。分配或取消分配 vSphere 标记
  • vSphere 标记。在对象上分配或取消分配 vSphere 标记 (vSphere 7)

nodePools[i].autoscaling

预览版。

如果要为节点池启用自动扩缩功能,请填写此部分。否则,请移除此部分。

nodePools[i].autoscaling.minReplicas

整数。自动扩缩器可以为池设置的最小节点数。不得低于 1。 例如:

nodePools:
- name: "my-node-pool"
  autoscaling:
    minReplicas: 5

nodePools.autoscaling.maxReplicas

整数。自动扩缩器可以为池设置的最大节点数。

nodePools:
- name: "my-node-pool"
  autoscaling:
    maxReplicas: 10

antiAffinityGroups.enabled

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

antiAffinityGroups:
  enabled true

Anthos clusters on VMware 会自动为您的用户集群节点创建 VMware 分布式资源调度器 (DRS) 反亲和性规则,使其分布到数据中心内的至少三个物理主机上。

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

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

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

  • 至少有三个物理主机可用。

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

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

enableVMTracking

enableVMTracking: true

authentication

本部分包含有关如何对集群用户进行身份验证和授权的信息。

authentication.oidc

如果要使用 OpenID Connect (OIDC) 管理对此集群的访问权限,请填写此部分。否则,请移除此部分或将其注释掉。

authentication.oidc.issuerURL

字符串。OpenID 提供商的网址。客户端应用(如 gcloud CLI 和 Cloud Console)向此网址发送授权请求。Kubernetes API 服务器使用此网址来发现用于验证令牌的公钥。必须使用 HTTPS。例如:

authentication:
  oidc:
    issuerURL: "https://example.com/adfs"

authentication.oidc.kubectlRedirectURL

字符串。gcloud CLI 的重定向网址。例如:

authentication:
  oidc:
    kubectlRedirectURL: "https://localhost:1025/callback"

authentication.oidc.clientID

字符串。向 OpenID 提供商发出身份验证请求的客户端应用的 ID。gcloud CLI 和 Cloud Console 都使用此 ID。例如:

authentication:
  oidc:
    clientID: "my-big-hex-string"

authentication.oidc.clientSecret

字符串。客户端应用的 Secretgcloud CLI 和 Cloud Console 都使用此 Secret。例如:

authentication:
  oidc:
    clientSecret: "N3i&JlLZoD!W"

authentication.oidc.username

字符串。要用作用户名的 JWT 声明。默认值为 sub,该值应为最终用户的唯一标识符。您可以选择其他声明,例如 emailname,具体取决于 OpenID 提供商。不过,email 以外的声明会以颁发者网址作为前缀,以防止命名与其他插件冲突。例如:

authentication:
  oidc:
    username: "sub"

authentication.oidc.usernamePrefix

字符串。附加到用户名声明前面的前缀,以防止与现有名称冲突。如果您未提供此字段,并且 usernameemail 以外的值,则前缀默认为 issuerurl#。您可以使用值 - 停用所有前缀。例如:

authentication:
  oidc:
    usernamePrefix: "my-prefix"

authentication.oidc.group

字符串。提供商将用于返回安全群组的 JWT 声明。例如:

authentication:
  oidc:
    group: "sec-groups"

authentication.oidc.groupPrefix

字符串。附加到群组声明前面的前缀,以防止与现有名称冲突。例如,给定一个组 foobar 和一个前缀 gid-,则格式为 gid-foobar。默认情况下,此值为空,且无前缀。例如:

authentication:
  oidc:
    groupPrefix: "gid-"

authentication.oidc.scopes

字符串。要发送到 OpenID 提供商的其他范围列表(以英文逗号分隔)。例如:

authentication:
  oidc:
    scopes: "offline-access"

对于 Microsoft Azure 或 OKta 的身份验证,请将此值设置为 offline_access

authentication.oidc.extraParams

字符串。要发送到 OpenID 提供商的其他键值对参数列表(以英文逗号分隔)。

  • 如需查看身份验证参数的列表,请参阅身份验证 URI 参数

  • 如果您要向群组授权,请将此字段设置为 "resource=token-groups-claim"

  • 如果您的授权服务器提示是否同意,请将此字段设置为 "prompt=consent"

例如:

authentication:
  oidc:
    extraparams: "prompt=consent"

authentication.oidc.deployCloudConsoleProxy

字符串。指定是否在集群中部署反向代理,以允许 Google Cloud Console 访问本地 OIDC 提供商来验证用户身份。必须是字符串:"true""false"。如果无法通过公共互联网访问您的身份提供商,并且您希望使用 Google Cloud Console 进行身份验证,则必须将此字段设置为 "true"。如果留空,则此字段默认为 "false"

authentication.oidc.caPath

字符串。证书授权机构 (CA)(负责颁发身份提供商 Web 证书)颁发的证书路径。此值可能不是必需的。例如,如果您的身份提供商证书是由知名公共 CA 颁发的,那么您无需在此提供值。但是,如果 deployCloudConsoleProxy"true",则您必须提供此值,即使证书是由知名的公共 CA 颁发的,也是如此。

例如:

authentication:
  oidc:
    caPath: "my-cert-folder/provider-root-cert.pem"

authentication.sni

如果要为集群的 Kubernetes API 服务器提供其他服务证书,请填写此部分。否则,请移除此部分或将其注释掉。

authentication.sni.certPath

字符串。Kubernetes API 服务器服务证书的路径。例如:

authentication:
  sni:
    certPath: "my-cert-folder/example.com.crt"

authentication.sni.keyPath

字符串。证书私钥文件的路径。例如:

authentication:
  sni:
    keyPath: "my-cert-folder/example.com.key"

stackdriver

本部分包含您要用于存储日志和指标的 Google Cloud 项目和服务帐号的相关信息。

stackdriver.projectID

字符串。要在其中查看日志的 Google Cloud 项目的 ID。例如:

stackdriver:
  projectID: "my-logs-project"

stackdriver.clusterLocation

字符串。您要在其中存储日志的 Google Cloud 地区。建议选择一个靠近您的本地数据中心的地区。例如:

stackdriver:
  clusterLocation: "us-central1"

stackdriver.enableVPC

布尔值。如果集群的网络由 VPC 控制,请将此字段设置为 true。这样可以确保所有遥测流都通过 Google 的受限 IP 地址。否则,请将此字段设置为 false。例如:

stackdriver:
  enableVPC: false

stackdriver.serviceAccountKeyPath

字符串。您的日志记录和监控服务帐号的 JSON 密钥文件的路径。例如:

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

stackdriver.disableVsphereResourceMetrics

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

stackdriver:
  disableVsphereResourceMetrics: true

gkeConnect

本部分包含您要用于将集群连接到 Google Cloud 的 Google Cloud 项目和服务帐号的相关信息。 本部分为必需内容。

gkeConnect.projectID

字符串。您要用于将集群连接到 Google Cloud 的 Cloud 项目的 ID。例如:

gkeConnect:
  projectID: "my-connect-project-123"

gkeConnect.registerServiceAccountKeyPath

字符串。连接和注册服务帐号的 JSON 密钥文件的路径。例如:

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

usageMetering

如果要为集群启用用量计量功能,请填写此部分。否则,请移除此部分或将其注释掉。

usageMetering.bigQueryProjectID

字符串。您要在其中存储用量计量数据的 Google Cloud 项目的 ID。例如:

usageMetering:
  bigQueryProjectID: "my-bq-project"

usageMetering.bigQueryDatasetID

字符串。您要在其中存储用量计量数据的 BigQuery 数据集的 ID。例如:

usageMetering:
  bigQueryDatasetID: "my-bq-dataset"

usageMetering.bigQueryServiceAccountKeyPath

字符串。BigQuery 服务帐号的 JSON 密钥文件的路径。例如:

usageMetering:
  bigQueryServiceAccountKeyPath: "my-key-folder/bq-key.json"

usageMetering.enableConsumptionMetering

布尔值。如果要启用基于消耗量的计量功能,请将此值设置为 true。否则,请将其设置为 false。例如:

usageMetering:
  enableConsumptionMetering: true

cloudAuditLogging

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

cloudAuditLogging.projectID

字符串。要在其中存储审核日志的 Google Cloud 项目的 ID。例如:

cloudAuditLogging:
  projectID: "my-audit-project"

cloudAuditLogging.clusterLocation

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

cloudAuditLogging:
  clusterLocation: "us-central1"

cloudAuditLogging.serviceAccountKeyPath

字符串。审核日志记录服务帐号的 JSON 密钥文件的路径。例如:

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

autoRepair.enabled

布尔值。将此属性设置为 true 以启用节点自动修复。否则,请将其设置为 false。例如:

autoRepair:
  enabled: true

secretsEncryption

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

secretsEncryption.mode

字符串。Secret 加密模式。将此项设置为 "GeneratedKey"

secretsEncryption:
  mode: "GeneratedKey"

secretsEncryption.generatedKey.keyVersion

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

secretsEncryption:
  generatedKey:
    keyVersion: 1