Campi per le specifiche dell'applicazione di gcloud

Questa pagina spiega i diversi campi che puoi impostare nel file di configurazione per Anthos Config Management. Utilizza questo file quando configuri i componenti Anthos Config Management con Google Cloud CLI. Il comando dell'interfaccia a riga di comando gcloud utilizzato per applicare il file di configurazione include anche la documentazione di riferimento.

Il formato file utilizzato con gcloud CLI è simile al formato dell'oggetto ConfigManagement. Tuttavia, i formati sono diversi e i due elementi non sono intercambiabili.

Configurazione per Config Sync

Chiave Descrizione
spec.configSync.enabled Se true, abilita Config Sync. Il valore predefinito è false.
spec.configSync.sourceType Il tipo di origine da cui eseguire la sincronizzazione di Config Sync. Accetta git o oci. Questo campo è supportato in Anthos Config Management versione 1.12.0 e successive. Valore predefinito: git.
spec.configSync.syncRepo L'URL del repository Git o dell'immagine OCI da utilizzare come fonte di riferimento. Puoi omettere questo campo se non hai preparato un repository.
spec.configSync.syncBranch Il ramo del repository Git da cui eseguire la sincronizzazione. Questo campo viene ignorato se .spec.configSync.sourceType è impostato su oci. Valore predefinito: master.
spec.configSync.policyDir Il percorso del repository Git o dell'immagine OCI che rimanda alla directory radice che contiene la configurazione da sincronizzare. Valore predefinito: la directory radice del repository.
spec.configSync.syncWait Periodo in secondi tra sincronizzazioni consecutive. Valore predefinito: 15.
spec.configSync.syncRev Revisione Git (tag o hash) da estrarre. Questo campo viene ignorato se .spec.configSync.sourceType è impostato su oci. Valore predefinito: HEAD.
spec.configSync.preventDrift Se true, abilita il webhook di ammissione di Config Sync per impedire le deviazioni rifiutando il push delle modifiche in conflitto nei cluster attivi. Valori predefiniti: false. Config Sync risolve sempre i deviazioni, indipendentemente dal valore di questo campo. Questo campo è supportato in Anthos Config Management versione 1.10.0 e successive.
spec.configSync.secretType Il tipo di secret configurato per l'accesso a .spec.configSync.syncRepo. Se hai selezionato git come tipo di origine, il valore deve essere ssh, cookiefile, gcenode, gcpserviceaccount, token o none. Se hai selezionato oci come tipo di origine, il valore deve essere gcenode, gcpserviceaccount o none. La convalida di questo campo è sensibile alle maiuscole. Obbligatorio.
spec.configSync.gcpServiceAccountEmail L'account di servizio Google Cloud utilizzato per annotare l'account di servizio Kubernetes del controller RootSync o RepoSync. Questo campo viene utilizzato solo quando spec.configSync.secretType è gcpserviceaccount.
spec.configSync.sourceFormat Se è impostato su unstructured, configura un repository non gerarchico. Valore predefinito: hierarchy.

Configurazione proxy per il repository Git

Se i criteri di sicurezza della tua organizzazione richiedono di indirizzare il traffico tramite un proxy HTTPS, puoi utilizzare l'URI del proxy per configurare Config Sync per comunicare con l'host Git. Il proxy è supportato solo quando utilizzi un tipo di autorizzazione di cookiefile, none o token.

Chiave Descrizione
spec.configSync.httpsProxy Definisce una variabile di ambiente HTTPS_PROXY utilizzata per accedere al repository Git. Ad esempio: https://proxy.internal.business.co:443. Se il protocollo https non viene fornito nell'URI del proxy, assicurati che la comunicazione tra il server proxy e l'host Git sia sicura.

Configurazione per Policy Controller

Chiave Descrizione
spec.policyController.enabled Se true, abilita Controller controller. Il valore predefinito è false.
spec.policyController.templateLibraryInstalled Se true, installa una libreria di modelli di vincolo per i tipi di criteri comuni. Il valore predefinito è true.
spec.policyController.referentialRulesEnabled Se true, viene attivato il supporto per i vincoli di riferimento. Assicurati di comprendere le cautele in merito alla coerenza finale. Il valore predefinito è false.
spec.policyController.auditIntervalSeconds Periodo in secondi tra controlli consecutivi delle violazioni dei vincoli. Imposta su 0 per disabilitare il controllo. Valore predefinito: 60.
spec.policyController.logDeniesEnabled Se true, registra tutti i rifiuti e gli errori di prova. Il valore predefinito è false.
spec.policyController.mutationEnabled Se true, abilita il supporto per le mutazioni. Il valore predefinito è false.
spec.policyController.exemptableNamespaces Un elenco di spazi dei nomi da rimuovere dall'applicazione del webhook di ammissione di Policy Controller. Eventuali violazioni vengono comunque segnalate durante il controllo. Il valore predefinito è un elenco vuoto.
spec.policyController.monitoring.backends Un elenco di backend di monitoraggio da cui Policy Controller può esportare le metriche. Valore predefinito: [cloudmonitoring, prometheus]. Questo campo è supportato in Anthos Config Management versione 1.12.0 e successive.

Configurazione per il controller della gerarchia

Chiave Descrizione
spec.hierarchyController.enabled Se true, abilita Controller gerarchia. Il valore predefinito è false.
spec.hierarchyController.enableHierarchicalResourceQuota Se true, abilita le quote gerarchiche delle risorse. Il valore predefinito è false.
spec.hierarchyController.enablePodTreeLabels Se true, abilita l'osservazione gerarchica dei carichi di lavoro. Il valore predefinito è false.

Esempio di 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
  policyController:
    enabled: false
  hierarchyController:
    enabled: false