Campi per le specifiche dell'applicazione di gcloud

Questa pagina illustra i diversi campi che puoi impostare nel file di configurazione di Anthos Config Management. Utilizza questo file quando configuri i componenti Anthos Config Management con l'interfaccia a riga di comando di Google Cloud. Anche il comando dell'interfaccia a riga di comando gcloud che utilizzi per applicare il file di configurazione ha la documentazione di riferimento.

Il formato file utilizzato con l'interfaccia a riga di comando gcloud è simile al formato dell'oggetto ConfigManagement. Tuttavia, i formati sono diversi e i due non sono intercambiabili.

Configurazione per Config Sync

Chiave Descrizione
spec.configSync.enabled Se true, abilita Config Sync. Il valore predefinito è false.
spec.configSync.syncRepo L'URL del repository Git da utilizzare come fonte di riferimento. Puoi omettere questo campo se non hai preparato un repository Git.
spec.configSync.syncBranch Il ramo del repository da cui eseguire la sincronizzazione. Valore predefinito: master.
spec.configSync.policyDir Il percorso del repository Git verso la directory radice contenente la configurazione che vuoi 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. Valore predefinito: HEAD.
spec.configSync.preventDrift Se true, consente al webhook di ammissione Config Sync di impedire le deviazioni rifiutando il push delle modifiche in conflitto nei cluster attivi. Valori predefiniti: false. Config Sync risolve sempre le deviazioni, indipendentemente dal valore di questo campo. Questo campo è supportato in Anthos Config Management versione 1.10.0 e successiva.
spec.git.auth Il tipo di secret configurato per l'accesso al repository Git. Deve essere ssh, cookiefile, gcenode, gcpserviceaccount, token o none. La convalida di questo campo è sensibile alle maiuscole. Obbligatorio.
spec.git.gcpServiceAccountEmail L'account di servizio Google Cloud utilizzato per annotare l'account di servizio Kubernetes di RootSync o RepoSync. Questo campo viene utilizzato solo quando spec.git.auth è gcpserviceaccount.
spec.configSync.sourceFormat Se impostato su unstructured, configura un repository non gerarchico. Valore predefinito: hierarchy.

Configurazione del proxy per il repository Git

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

Chiave Descrizione
spec.configSync.httpsProxy Definisce una variabile di ambiente HTTPS_PROXY utilizzata per accedere al repository Git.

Configurazione per Policy Controller

Chiave Descrizione
spec.policyController.enabled Se true, abilita Policy 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, abilita il supporto per i vincoli di riferimento. Assicurati di comprendere le attenzioni sulla coerenza finale. Il valore predefinito è false.
spec.policyController.auditIntervalSeconds Periodo in secondi tra controlli consecutivi di 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 dei webhook di ammissione di Policy Controller. Tutte le violazioni vengono comunque segnalate durante il controllo. Il valore predefinito è un elenco vuoto.
spec.policyController.monitoring.backends Elenco di backend di monitoraggio per Policy Controller in cui esportare le metriche. Valore predefinito: [cloudmonitoring, prometheus]. Questo campo è supportato in Anthos Config Management versione 1.12.0 e successiva.

Configurazione per il controller della gerarchia

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

Esempio gcloud apply spec

applySpecVersion: 1
spec:
  configSync:
    enabled: true
    sourceFormat: unstructured
    syncRepo: https://github.com/GoogleCloudPlatform/anthos-config-management-samples
    syncBranch: init
    secretType: none
    policyDir: quickstart/multirepo/root
  policyController:
    enabled: false
  hierarchyController:
    enabled: false