En esta página, se explican los diferentes campos que puedes usar para configurar el Sincronizador de configuración con la marca --config en el comando apply de Google Cloud CLI y la marca --fleet-default-member-config en el comando enable en el segmento de lanzamiento beta. Ahora, este esquema de campo no se recomienda en el
segmento de lanzamiento alpha del comando enable
, sino que se recomienda el
nuevo esquema de la API
.
El formato de archivo que se usa con estas marcas de la CLI de gcloud es similar al formato del objeto ConfigManagement. Sin embargo, los formatos son diferentes y los dos no son intercambiables.
Configuración común para Config Management
| Clave | Descripción |
|---|---|
spec.version |
Es la versión de Config Management. Si configuras Config Management para un clúster, la versión predeterminada es la versión actual de la instalación de Config Management en dicho clúster. De lo contrario, para la configuración en toda la flota o en ausencia de una instalación existente en el clúster de destino, el valor predeterminado es la versión más reciente. |
Configuración del Sincronizador de configuración
| Clave | Descripción |
|---|---|
spec.cluster |
El nombre del clúster que usa la anotación cluster-name-selector o ClusterSelector del Sincronizador de configuración para aplicar archivos de configuración solo a un subconjunto de clústeres. Configura este campo si la anotación cluster-name-selector o ClusterSelector del Sincronizador de configuración usan un nombre diferente al nombre de la membresía de la flota del clúster. |
spec.upgrades |
(Vista previa) Es el parámetro de configuración de actualización del Sincronizador de configuración.
El valor predeterminado y único admitido es manual.
|
spec.configSync.enabled |
Si es true, instala y administra el Sincronizador de configuración.
Si es false, desinstala cualquier Sincronizador de configuración administrado anteriormente y, luego, ignora el resto de la configuración de .spec.configSync.
Se requiere para la versión 429.0.0 y anteriores de gcloud CLI. Opcional para la versión 430.0.0 y posteriores de la CLI de gcloud Valor predeterminado: true |
spec.configSync.sourceType |
El tipo de fuente desde la que se debe sincronizar el Sincronizador de configuración.
Se acepta git o oci. Valor predeterminado: git. |
spec.configSync.syncRepo |
Es la URL del repositorio de Git, la imagen de OCI o el gráfico de Helm que se usará como fuente de información. Puedes omitir este campo si no tienes un repositorio preparado. |
spec.configSync.syncBranch |
La rama del repositorio de Git desde la que se realiza la sincronización. Este campo se ignora si .spec.configSync.sourceType se establece en oci. Este campo es opcional y el valor predeterminado es master. Recomendamos usar el campo spec.configSync.syncRev para especificar un nombre de rama. Si se usan ambos campos, el campo spec.configSync.syncRev tiene prioridad sobre spec.configSync.syncBranch.
|
spec.configSync.policyDir |
La ruta de acceso en el repositorio de Git o en la imagen de OCI al directorio raíz que contiene la configuración que deseas sincronizar. Configuración predeterminada: El directorio raíz del repositorio |
spec.configSync.syncWait |
Período en segundos entre sincronizaciones consecutivas. Valor predeterminado: 15. |
spec.configSync.syncRev |
Revisión de Git (etiqueta o hash) o rama desde la que se realizará la sincronización. Este campo se ignora si .spec.configSync.sourceType se establece en oci. Este campo es opcional y el valor predeterminado es HEAD. Cuando se usa un hash, debe ser un hash completo, no una forma abreviada.
|
spec.configSync.preventDrift |
Si es true, habilita el webhook de admisión del Sincronizador de configuración para evitar los desvíos mediante el rechazo de los cambios conflictivos que se envían a los clústeres activos. El valor predeterminado es false.
El Sincronizador de configuración siempre soluciona los desvíos, sin importar el valor de este campo. |
spec.configSync.stopSyncing |
Si es true, detiene la sincronización de la configuración de un solo clúster.
La configuración predeterminada es false. |
spec.configSync.secretType |
Es el tipo de Secret configurado para acceder a .spec.configSync.syncRepo.
Si seleccionastegit como el tipo de fuente, el valor debe serssh,cookiefile, gcenode, gcpserviceaccount, token onone.
Si seleccionaste oci como el tipo de fuente, el valor debe ser gcenode, gcpserviceaccount o none.
La validación de este campo distingue entre mayúsculas y minúsculas. Obligatorio. |
spec.configSync.gcpServiceAccountEmail |
La cuenta de servicio Google Cloud que se usa para anotar la cuenta de servicio de Kubernetes del controlador RootSync o RepoSync. Este campo solo se usa
cuando spec.configSync.secretType es gcpserviceaccount. |
spec.configSync.metricsGcpServiceAccountEmail |
Obsoleto: Si Workload Identity Federation for GKE está habilitada, no se requiere Google Cloud Service Account para exportar las métricas del Sincronizador de configuración. En su lugar, usa una cuenta de servicio de Kubernetes. |
spec.configSync.sourceFormat |
Cuando se establece en unstructured, configura un repositorio no jerárquico.
Valor predeterminado: hierarchy. |
spec.configSync.deploymentOverrides |
Es una lista de configuraciones de anulación de recursos para las implementaciones de Config Sync.
El campo solo se aplica a las implementaciones de Config Sync con contenedores que no son un conciliador raíz o de espacio de nombres, como reconciler-manager. Si debes anular un conciliador raíz o de espacio de nombres, usa los
campos rootsync o reposync. Opcional. |
spec.configSync.deploymentOverrides.name |
Es el nombre de la implementación de Config Sync que se anulará. El valor no puede estar vacío. |
spec.configSync.deploymentOverrides.namespace |
Es el espacio de nombres de la implementación del Sincronizador de configuración que se anulará. El valor no puede estar vacío. |
spec.configSync.deploymentOverrides.containers |
Es una lista de anulaciones de configuración para las solicitudes y los límites de los contenedores de Config Sync. Opcional. |
spec.configSync.deploymentOverrides.containers.name |
Nombre del contenedor de Config Sync que se anulará. El valor no puede estar vacío. |
spec.configSync.deploymentOverrides.containers.cpuRequest |
Es la solicitud de CPU para el contenedor. Usa unidades de recursos de CPU en Kubernetes. Opcional. |
spec.configSync.deploymentOverrides.containers.cpuLimit |
Es el límite de CPU para el contenedor. Usa unidades de recursos de CPU en Kubernetes. Opcional. |
spec.configSync.deploymentOverrides.containers.memoryRequest |
Es la solicitud de memoria para el contenedor. Usa unidades de recursos de memoria en Kubernetes. Opcional. |
spec.configSync.deploymentOverrides.containers.memoryLimit |
Es el límite de memoria del contenedor. Usa unidades de recursos de memoria en Kubernetes. Opcional. |
Configuración del proxy para el repositorio de Git
Si las políticas de seguridad de tu organización requieren que enrutes el tráfico a través de un proxy HTTP(S), puedes usar el URI del proxy para configurar el Sincronizador de configuración a fin de que se comunique con tu host de Git. El proxy solo se admite cuando se usa un tipo de autorización de cookiefile, none o token.
| Clave | Descripción |
|---|---|
spec.configSync.httpsProxy |
Define una variable de entorno HTTPS_PROXY que se usa para acceder al repositorio de Git. Por ejemplo, https://proxy.internal.business.co:443.El proxy HTTPS solo acepta URLs https o sin adornos.
Se rechazan las URLs que contienen http://.Si usas una URL sin adornos, asegúrate de que la comunicación entre tu servidor proxy y el host de Git sea segura. |
Ejemplo de gcloud apply spec
applySpecVersion: 1
spec:
configSync:
enabled: true
sourceFormat: unstructured
syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
syncBranch: main
secretType: none
policyDir: config-sync-quickstart/multirepo/root
Ejemplo de gcloud apply spec con anulaciones de recursos de implementación
Si deseas personalizar las solicitudes y los límites de recursos de Config Sync, agrega el campo deploymentOverrides en tu especificación de aplicación. Por ejemplo, el siguiente YAML anula los límites de CPU y memoria para el contenedor reconciler-manager:
applySpecVersion: 1
spec:
configSync:
enabled: true
deploymentOverrides:
- name: reconciler-manager
namespace: config-management-system
containers:
- name: reconciler-manager
cpuRequest: 50m
cpuLimit: 100m
memoryRequest: 256Mi
memoryLimit: 512Mi