Campos de gcloud apply spec
En esta página, se explican los diferentes campos que puedes establecer en el archivo de configuración para el Sincronizador de configuración. Usa este archivo cuando configures los componentes del Sincronizador de configuración con Google Cloud CLI. El comando de la CLI de gcloud que usas para aplicar el archivo de configuración también tiene una documentación de referencia.
Con estos comandos, también se puede configurar el controlador de políticas, pero se recomienda que uses los comandos de Policy Controller gcloud
en su lugar.
El formato de archivo que se usa con 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 del Sincronizador de configuración
Clave | Descripción |
---|---|
spec.upgrades |
(Vista previa) La configuración de actualización del Sincronizador de configuración.
Si se establece en auto , la versión del Sincronizador de configuración se actualiza de forma automática. Para obtener información sobre cómo funcionan las actualizaciones automáticas, consulta Actualiza el Sincronizador de configuración.
Configúralo en manual para actualizar de forma manual la versión del Sincronizador de configuración.
El valor predeterminado es manual . Esta marca solo es compatible con
clústeres de GKE en Google Cloud.
|
spec.configSync.enabled |
Si es true , se habilita el Sincronizador de configuración.
Si es false , se inhabilita el Sincronizador de configuración.
Obligatorio para la versión 429.0.0 y anteriores de gcloud CLI. Opcional para
la versión 430.0.0 y posteriores de gcloud CLI. 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 |
La URL del repositorio de Git, la imagen de OCI o el gráfico de Helm para 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 . A partir de la versión 1.17.0 del Sincronizador de configuración, se recomienda usar el campo spec.configSync.syncRev para especificar el nombre de la rama y, así, simplificar el proceso. Si se especifican los campos spec.configSync.syncRev y spec.configSync.syncBranch , 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) desde la que se sincroniza. Este campo se ignora si .spec.configSync.sourceType se establece en oci . Este campo es opcional, y el valor predeterminado es HEAD . A partir de la versión 1.17.0 del Sincronizador de configuración, también puedes especificar el nombre de una rama en el campo spec.configSync.syncRev . Cuando se usa un hash en la versión 1.17.0 o posterior, debe ser un hash completo y 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.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 de 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 |
El correo electrónico de la cuenta de servicio de Google Cloud (GSA) que se usó para exportar las métricas del Sincronizador de configuración a Cloud Monitoring. GS debe tener el rol de IAM de escritor de métricas de supervisión (roles/monitoring.metricWriter ). La cuenta de servicio de Kubernetes default en el espacio de nombres config-management-monitoring debe estar vinculada a GSA. |
spec.configSync.sourceFormat |
Cuando se establece en unstructured , configura un repositorio no jerárquico.
Valor predeterminado: hierarchy . |
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 https o URLs 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. |
Configuración del controlador de políticas
Clave | Descripción |
---|---|
spec.policyController.enabled |
Si es true , se habilita Policy Controller.
La configuración predeterminada es false . |
spec.policyController.templateLibraryInstalled |
Si es true , se instala una biblioteca de plantillas de restricciones para tipos de políticas comunes. La configuración predeterminada es true . |
spec.policyController.referentialRulesEnabled |
Si es true , se habilita la compatibilidad con restricciones referenciales. Asegúrate de comprender las advertencias sobre la coherencia eventual.
La configuración predeterminada es false . |
spec.policyController.auditIntervalSeconds |
Período en segundos entre auditorías consecutivas de incumplimientos de restricción. Configúralo en 0 para inhabilitar la auditoría. Predeterminado: 60. |
spec.policyController.logDeniesEnabled |
Si es true , registra todos los rechazos y las fallas de ejecución de prueba. La configuración predeterminada es false . |
spec.policyController.mutationEnabled |
Si es true , habilita la compatibilidad con mutaciones. La configuración predeterminada es false . |
spec.policyController.exemptableNamespaces |
Una lista de espacios de nombres para quitar de la aplicación del webhook de admisión del controlador de políticas. Cualquier incumplimiento aún se informa en la auditoría. La configuración predeterminada es una lista vacía. |
spec.policyController.monitoring.backends |
Una lista de backends de supervisión para el controlador de políticas a los que se exportarán las métricas. Valor predeterminado: [cloudmonitoring, prometheus] . |
Configuración del controlador de jerarquía
Clave | Descripción |
---|---|
spec.hierarchyController.enabled |
Si es true , se habilita el controlador de jerarquía.
La configuración predeterminada es false . |
spec.hierarchyController.enableHierarchicalResourceQuota |
Si es true , se habilitan las cuotas de recursos jerárquicas.
La configuración predeterminada es false . |
spec.hierarchyController.enablePodTreeLabels |
Si es true , se habilita la observación jerárquica de cargas de trabajo.
La configuración predeterminada es false . |
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
hierarchyController:
enabled: false