gcloud 配置字段行为

--config 标志在 update 命令上接受用于配置 成员集群上 Config Sync 行为的字段。--fleet-default-member-config 标志在 updateenable 命令中接受同一组字段,用于配置 舰队默认 Config Sync 行为。

--config 命令中的 apply 标志(用于定义底层配置 API 字段的 Google Cloud CLI 表示法 )不同,--config--fleet-default-member-config 标志在 update 命令中分别直接采用 Spec API 字段MembershipSpec API 字段的 架构。 enable 命令中的 --fleet-default-member-config 标志同样已从 Google Cloud CLI 表示法 迁移到 alpha 发布轨道中的 MembershipSpec API 字段架构,但为了实现向后 兼容性,系统支持之前的表示法。

本页面介绍了在 --config--fleet-default-member-config 标志将配置字段发送到 API 之前,API 字段架构中配置字段的额外 gcloud CLI 特定处理方式。

默认字段值

字段 说明
configSync.enabled 如果用户指定了 configSync 字段, configSync.enabled 默认为 true
version 对于 --config 标志,Config Sync 版本默认为成员配置中的现有值;如果未配置,则默认为成员集群上安装的 Config Sync 版本。您可以使用 describe 命令查看这些值。如果成员集群上未安装 Config Sync,则 gcloud CLI 会在 API 请求中将版本保留为未设置状态。对于 --config--fleet-default-member-config,请分别参阅 Spec API 字段MembershipSpec API 字段version 子字段的说明,以确定 API 的默认 Config Sync 版本行为。

不受支持的字段

如果设置了任何旧版字段, updateenable 命令中的 --config--fleet-default-member-config 标志会出错。如需避免设置这些字段, 请按照其 API 字段说明中的解决方法操作,这些说明分别在 以下 API 字段 下定义:--config 标志的 Spec API 字段和 API 字段 的 MembershipSpec API 字段。--fleet-default-member-config

以下是旧版字段的列表:

  • configSync.metricsGcpServiceAccountEmail
  • policyController
  • hierarchyController
  • binauthz
  • management

配置文件示例

本部分提供了可传递给 --config--fleet-default-member-config 标志的 updateenable 命令的配置示例。

命令页面上的示例相比, 以下配置不包含applySpecVersionspec字段。 apply对于 apply 命令,configSync.deploymentOverrides[].deploymentName 字段为 spec.configSync.deploymentOverrides[].name。 其他字段(包括以下示例中未包含的字段)的名称也不同。

以下示例展示了一个基本配置:

configSync:
  enabled: true
  sourceFormat: unstructured
  git:
    syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    syncBranch: main
    secretType: none
    policyDir: config-sync-quickstart/multirepo/root

以下示例展示了一个更复杂的配置:

configSync:
  enabled: true
  stopSyncing: true
  sourceFormat: unstructured
  git:
    syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    syncBranch: main
    secretType: none
    policyDir: config-sync-quickstart/multirepo/root
  deploymentOverrides:
  - deploymentName: reconciler-manager
    deploymentNamespace: config-management-system
    containers:
    - containerName: reconciler-manager
      cpuRequest: 50m
      cpuLimit: 100m
      memoryRequest: 256Mi
      memoryLimit: 512Mi