Comportamiento del campo de configuración de gcloud

La marca --config en el update comando acepta campos para configurar el comportamiento del Sincronizador de configuración en los clústeres de membresía. La marca --fleet-default-member-config en los comandos update y enable acepta el mismo conjunto de campos para configurar el comportamiento predeterminado del Sincronizador de configuración de la flota.

A diferencia de la marca --config en el apply comando, que define una representación de Google Cloud CLI de los campos de la API de configuración subyacente, las marcas --config y --fleet-default-member-config en el comando update adoptan directamente el esquema del campo de la API de Spec y el campo de la API de MembershipSpec, respectivamente. La marca --fleet-default-member-config en el enable comando también migró de la representación de Google Cloud CLI al esquema del campo de la API de MembershipSpec en el alpha segmento de lanzamiento, pero la representación anterior es compatible con versiones anteriores.

En esta página, se documenta el manejo adicional específico de gcloud CLI de los campos de configuración en el esquema del campo de la API antes de que las marcas --config y --fleet-default-member-config los envíen a la API.

Valores de campo predeterminados

Campo Descripción
configSync.enabled Si el usuario especifica el campo configSync, configSync.enabled se establece de forma predeterminada en true.
version Para la marca --config, la versión del Sincronizador de configuración se establece de forma predeterminada en su valor existente en la configuración de la membresía o, si no está configurada, en la versión del Sincronizador de configuración instalada en el clúster de membresía. Usa el describe comando para ver estos valores. Si el Sincronizador de configuración no está instalado en el clúster de membresía, gcloud CLI deja la versión sin configurar en la solicitud de la API. Para --config y --fleet-default-member-config, consulta la descripción del subcampo version en el campo de la API de Spec y el campo de la API de MembershipSpec, respectivamente, para determinar el comportamiento predeterminado de la versión del Sincronizador de configuración de la API.

Campos no admitidos

Las marcas --config y --fleet-default-member-config en los update y enable comandos muestran un error si se establece algún campo heredado. Para evitar configurar esos campos, sigue las soluciones alternativas en sus descripciones de campos de la API, que se definen en el campo de la API de Spec para la marca --config y el campo de la API de MembershipSpec para la marca --fleet-default-member-config.

La siguiente es una lista de campos heredados:

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

Archivos de configuración de ejemplo

En esta sección, se proporcionan ejemplos de configuraciones que se pueden pasar a las --config y --fleet-default-member-config marcas en los update y enable comandos.

En comparación con los ejemplos de la página del comando apply, las siguientes configuraciones no contienen los campos applySpecVersion y spec. El campo configSync.deploymentOverrides[].deploymentName es spec.configSync.deploymentOverrides[].name para el comando apply. Otros campos, incluidos los que no están en los siguientes ejemplos, también tienen nombres diferentes.

En el siguiente ejemplo, se muestra una configuración básica:

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

En el siguiente ejemplo, se muestra una configuración más compleja:

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