gcloud 構成フィールドの動作

update コマンドの --config フラグは、メンバーシップ クラスタでの Config Sync の動作を構成するフィールドを受け入れます。update コマンドと enable コマンドの --fleet-default-member-config フラグは、fleet-default の Config Sync の動作を構成するために同じフィールドのセットを受け入れます。

基盤となる構成 API フィールドの Google Cloud CLI 表現を定義する apply コマンドの --config フラグとは異なり、update コマンドの --config フラグと --fleet-default-member-config フラグは、それぞれ 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 フィールドを指定すると、Config Sync のインストールはデフォルトで true になります。
version --config フラグの場合、Config Sync のバージョンは、メンバーシップ構成の既存の値にデフォルト設定されます。構成されていない場合は、メンバーシップ クラスタにインストールされている Config Sync のバージョンにデフォルト設定されます。これらの値を表示するには、describe コマンドを使用します。Config Sync がメンバーシップ クラスタにインストールされていない場合、gcloud CLI は API リクエストでバージョンを未設定のままにします。--config--fleet-default-member-config の両方で configSync.enabledtrue の場合、API は Config Sync バージョンをデフォルトで最新バージョンに設定します。

サポートされていないフィールド

update コマンドと enable コマンドの --config フラグと --fleet-default-member-config フラグは、次のいずれかのレガシー フィールドが設定されている場合、エラーを返します。

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

構成ファイルの例

このセクションでは、update コマンドと enable コマンドの --config フラグと --fleet-default-member-config フラグに渡すことができる構成の例を示します。これらのフラグは camelCasesnake_case の両方をサポートしています。

apply コマンドのページにある例と比較して、次の構成には applySpecVersion フィールドと spec フィールドが含まれていません。configSync.deploymentOverrides[].deploymentName フィールドは、apply コマンドの 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