Installare Config Sync come impostazione predefinita del parco risorse

Puoi installare Config Sync come impostazione predefinita del parco risorse in modo che tutti i nuovi cluster aggiunti al parco risorse abbiano automaticamente Config Sync abilitato con le impostazioni che preferisci. Se configuri i valori predefiniti a livello di parco risorse, contribuisci a garantire che ogni nuovo cluster GKE su Google Cloud registrato nel parco risorse erediti una configurazione standard di Config Sync, inclusi la versione e le connessioni alla tua fonte attendibile. Questo processo semplifica il provisioning dei cluster e contribuisce a mantenere una baseline di gestione della configurazione uniforme.

Questa pagina spiega quanto segue:

  • Come configurare queste impostazioni predefinite a livello di parco risorse utilizzando Google Cloud CLI, la console Google Cloud o Terraform.
  • Come applicare le impostazioni predefinite ai cluster esistenti.
  • Come disattivare la configurazione predefinita del parco risorse, se necessario.

Per informazioni generali sulle configurazioni predefinite del parco risorse, vedi Gestire le funzionalità a livello di parco risorse.

Prima di iniziare

Prima di installare Config Sync, prepara la fonte attendibile e un cluster adatto.

Concedi a Config Sync l'accesso alla tua unica fonte di verità

Per sincronizzare la configurazione da una fonte attendibile ai tuoi cluster, Config Sync richiede l'accesso di sola lettura al tuo repository. Per autorizzare Config Sync a leggere le tue configurazioni, completa i seguenti passaggi:

Esamina i requisiti del cluster

Prima di creare un cluster, esamina i requisiti del cluster.

Limitazioni

  • La configurazione di Helm come tipo di origine non è supportata come impostazione predefinita del parco risorse.
  • La console Google Cloud non supporta la connessione a un'origine attendibile come impostazione predefinita. Devi invece utilizzare la funzionalità Deploy packages dopo aver creato un cluster.

Configura i valori predefiniti a livello di parco risorse per un repository Git

Per configurare i valori predefiniti a livello di parco risorse per Config Sync, completa i seguenti passaggi:

gcloud

  1. Crea un file manifest denominato apply-spec.yaml con i seguenti contenuti. Se hai già creato un file manifest, non devi crearne uno nuovo.

    applySpecVersion: 1
    spec:
      configSync:
        enabled: true
        sourceType: git
        sourceFormat: unstructured
        syncRepo: REPO
        syncRev: REVISION
        secretType: SECRET_TYPE
        # only required if gcpserviceaccount is the secretType
        # gcpServiceAccountEmail: EMAIL
        metricsGcpServiceAccountEmail: METRICS_EMAIL
        preventDrift: false
    

    Sostituisci quanto segue:

    • REPO: l'URL del repository Git, ad esempio https://github.com/GoogleCloudPlatform/anthos-config-management-samples. Utilizza il formato HTTPS per l'URL o il formato SSH se ssh è sourceType.
    • REVISION: la revisione Git (tag o hash) o il nome del ramo da sincronizzare. Quando utilizzi un hash, deve essere un hash completo e non una forma abbreviata.
    • SECRET_TYPE: il metodo di autenticazione utilizzato per connettersi al repository Git. Per i repository pubblici, utilizza none. Per i repository privati, utilizza uno dei seguenti metodi:

      • ssh: utilizza una coppia di chiavi SSH.
      • cookiefile: utilizza un cookiefile.
      • token: utilizza un token.
      • gcpserviceaccount: utilizza un account di servizio Google se Workload Identity Federation for GKE è abilitato. Solo Secure Source Manager o Cloud Source Repositories.
      • gcenode: utilizza un account di servizio Google se Workload Identity Federation for GKE non è abilitato. Solo Secure Source Manager o Cloud Source Repositories.
      • githubapp: utilizza un'app GitHub per l'autenticazione a un repository GitHub.

      Per ulteriori informazioni su come connettere il repository Git a Config Sync, vedi Concedere l'accesso di Config Sync a Git.

    • EMAIL: se gcpserviceaccount è secretType, rimuovi il commento da questo campo e aggiungi l'indirizzo email del service account Google, ad esempio config-sync@PROJECT_ID.iam.gserviceaccount.com.

    • METRICS_EMAIL: l'email del Google Cloud service account (GSA) utilizzato per esportare le metriche di Config Sync in Cloud Monitoring. Per ulteriori informazioni sulla configurazione dell'esportazione delle metriche, vedi Monitorare Config Sync.

    Per un elenco completo dei campi che puoi aggiungere al manifest apply-spec, consulta Campi per le specifiche dell'applicazione di gcloud.

  2. Applica il file apply-spec con le impostazioni predefinite del parco risorse eseguendo il seguente comando:

    gcloud beta container fleet config-management enable \
        --fleet-default-member-config=apply-spec.yaml
    

Console

  1. Nella console Google Cloud , vai alla pagina Feature Manager.

    Vai a Gestore funzionalità

  2. Nel riquadro Config Sync, fai clic su Configura.

  3. Rivedi le impostazioni a livello di parco risorse. Tutti i nuovi cluster che crei nel parco risorse ereditano queste impostazioni.

  4. (Facoltativo) Per modificare le impostazioni predefinite, fai clic su Personalizza le impostazioni del parco risorse. Nella finestra di dialogo visualizzata, procedi nel seguente modo:

    1. Seleziona la versione di Config Sync che vuoi utilizzare.
    2. Fai clic su Salva modifiche.
  5. Fai clic su Configura.

  6. Nella finestra di dialogo di conferma Configurazione delle impostazioni della flotta, fai clic su Conferma. Se non hai abilitato Config Sync in precedenza, facendo clic su Conferma viene abilitata anche l'API anthosconfigmanagement.googleapis.com.

Anche se non puoi configurare le impostazioni della fonte di riferimento come impostazione predefinita del parco dalla console Google Cloud , puoi selezionare più cluster quando utilizzi la funzionalità Esegui il deployment di un pacchetto.

Terraform

Per abilitare Config Sync come impostazione predefinita del parco risorse, consulta il seguente esempio:

resource "google_gke_hub_feature" "default" {
  name     = "configmanagement"
  location = "global"

  fleet_default_member_config {
    configmanagement {
      config_sync {
        # The field `enabled` was introduced in Terraform version 5.41.0, and
        # needs to be set to `true` explicitly to install Config Sync.
        enabled = true
        git {
          sync_repo   = "REPO"
          sync_branch = "BRANCH"
          policy_dir  = "DIRECTORY"
          secret_type = "SECRET"
        }
      }
    }
  }
}

Sostituisci quanto segue:

  • REPO: l'URL del repository Git che contiene i file di configurazione.
  • BRANCH: il ramo del repository, ad esempio main.
  • DIRECTORY: il percorso all'interno del repository Git che rappresenta il livello superiore del repository che vuoi sincronizzare.
  • SECRET: il tipo di autenticazione del secret.

Per ulteriori informazioni sull'utilizzo di Terraform, consulta Esegui il provisioning delle risorse Config Sync con Terraform.

Configura i valori predefiniti a livello di parco risorse per un'immagine OCI

Per configurare i valori predefiniti a livello di parco risorse per Config Sync, completa i seguenti passaggi:

gcloud

  1. Crea un file manifest denominato apply-spec.yaml con i seguenti contenuti. Se hai già creato un file manifest, non devi crearne uno nuovo.

    applySpecVersion: 1
    spec:
      configSync:
        enabled: true
        sourceType: oci
        sourceFormat: unstructured
        syncRepo: REPO
        secretType: SECRET_TYPE
        # only required if gcpserviceaccount is the secretType
        # gcpServiceAccountEmail: EMAIL
        metricsGcpServiceAccountEmail: METRICS_EMAIL
        preventDrift: false
    

    Sostituisci quanto segue:

    • REPO: l'URL dell'immagine OCI nel formato LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME. Per impostazione predefinita, l'immagine viene estratta dal tag latest, ma puoi estrarre le immagini in base a TAG o DIGEST. Specifica TAG o DIGEST in PACKAGE_NAME:

      • Per estrarre per TAG: LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME:TAG
      • Per estrarre per DIGEST: LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME/PACKAGE_NAME@sha256:DIGEST
    • SECRET_TYPE: il metodo di autenticazione utilizzato per connettersi all'immagine OCI. Per le immagini pubbliche, utilizza none come valore. Per le immagini private, utilizza uno dei seguenti metodi:

      • gcpserviceaccount: solo Secure Source Manager o Cloud Source Repositories. Utilizza un account di servizio Google se Workload Identity Federation for GKE è abilitata.
      • gcenode: solo Secure Source Manager o Cloud Source Repositories. Utilizza un account di servizio Google se Workload Identity Federation for GKE non è abilitato.

      Per ulteriori informazioni su come connettere l'immagine OCI a Config Sync, consulta Concedere a Config Sync l'accesso a OCI o Helm.

    • EMAIL: se gcpserviceaccount è secretType, rimuovi il commento da questo campo e aggiungi l'indirizzo email del service account Google, ad esempio config-sync@PROJECT_ID.iam.gserviceaccount.com.

    • METRICS_EMAIL: l'email del Google Cloud service account (GSA) utilizzato per esportare le metriche di Config Sync in Cloud Monitoring. Per ulteriori informazioni sulla configurazione dell'esportazione delle metriche, vedi Monitorare Config Sync.

    Per un elenco completo dei campi che puoi aggiungere al manifest apply-spec, consulta Campi per le specifiche dell'applicazione di gcloud.

  2. Applica il file apply-spec con le impostazioni predefinite del parco risorse eseguendo il seguente comando:

    gcloud beta container fleet config-management enable \
        --fleet-default-member-config=apply-spec.yaml
    

Console

  1. Nella console Google Cloud , vai alla pagina Feature Manager.

    Vai a Gestore funzionalità

  2. Nel riquadro Config Sync, fai clic su Configura.

  3. Rivedi le impostazioni a livello di parco risorse. Tutti i nuovi cluster che crei nel parco risorse ereditano queste impostazioni.

  4. (Facoltativo) Per modificare le impostazioni predefinite, fai clic su Personalizza le impostazioni del parco risorse. Nella finestra di dialogo visualizzata, procedi nel seguente modo:

    1. Seleziona la versione di Config Sync che vuoi utilizzare.
    2. Fai clic su Salva modifiche.
  5. Fai clic su Configura.

  6. Nella finestra di dialogo di conferma Configurazione delle impostazioni della flotta, fai clic su Conferma. Se non hai abilitato Config Sync in precedenza, facendo clic su Conferma viene abilitata anche l'API anthosconfigmanagement.googleapis.com.

Anche se non puoi configurare le impostazioni della fonte di riferimento come impostazione predefinita del parco dalla console Google Cloud , puoi selezionare più cluster quando utilizzi la funzionalità Esegui il deployment di un pacchetto.

Terraform

Per abilitare Config Sync come impostazione predefinita del parco risorse, consulta il seguente esempio:

resource "google_gke_hub_feature" "configmanagement_feature_member" {
  name     = "configmanagement"
  location = "global"

  fleet_default_member_config {
    configmanagement {
      config_sync {
        # The field `enabled` was introduced in Terraform version 5.41.0, and
        # needs to be set to `true` explicitly to install Config Sync.
        enabled = true
        oci {
          sync_repo   = "REPO"
          policy_dir  = "DIRECTORY"
          secret_type = "SECRET"
        }
      }
    }
  }
}

Sostituisci quanto segue:

  • REPO: l'URL del repository di immagini OCI che contiene i file di configurazione.
  • DIRECTORY: il percorso assoluto della directory contenente le risorse da sincronizzare. Per utilizzare la directory principale, lascia vuoto questo campo.
  • SECRET: il tipo di autenticazione del secret.

Per ulteriori informazioni sull'utilizzo di Terraform, consulta Esegui il provisioning delle risorse Config Sync con Terraform.

Aggiornare i cluster esistenti per ereditare i valori predefiniti del parco risorse

Per aggiornare i cluster esistenti in modo che utilizzino le impostazioni predefinite di Config Sync, puoi utilizzare la console Google Cloud o gcloud CLI per sincronizzare i cluster del parco risorse selezionati con le impostazioni predefinite del parco risorse. In alternativa, puoi configurare manualmente ogni cluster con le stesse impostazioni utilizzando Terraform e seguendo le istruzioni per l'installazione di Config Sync nella sezione precedente. Se in precedenza hai utilizzato Terraform per specificare i valori predefiniti del parco risorse, utilizza lo stesso blocco configmanagement e config_sync che hai utilizzato per impostare i valori predefiniti per configurare i cluster che hai scelto.

Per sincronizzare le impostazioni predefinite di Config Sync nel tuo parco risorse:

gcloud

  1. Sincronizza un abbonamento esistente con la configurazione predefinita del parco risorse:

    gcloud beta container fleet config-management apply \
        --origin=FLEET \
        --membership=MEMBERSHIP_NAME
    

    Sostituisci MEMBERSHIP_NAME con il nome dell'appartenenza al parco risorse del cluster che vuoi sincronizzare con la configurazione predefinita del parco risorse.

  2. Verifica che le configurazioni dell'abbonamento siano sincronizzate con il valore predefinito della flotta:

    gcloud beta container fleet config-management status
    

    L'output di questo comando dovrebbe essere visualizzato come Yes per lo stato Synced_to_Fleet_Default dell'abbonamento che hai sincronizzato.

console

  1. Vai a Gestore funzionalità:

    Vai a Gestore funzionalità: Config Sync

  2. Nella tabella dei cluster, seleziona i cluster che vuoi sincronizzare con le impostazioni del parco risorse.

  3. Fai clic su Sincronizza con le impostazioni del parco risorse.

Disattivare le impostazioni predefinite del parco risorse

Per disattivare le impostazioni predefinite di Config Sync nel tuo parco risorse, segui questi passaggi:

  1. Per disattivare la configurazione predefinita del parco risorse, esegui questo comando:

    gcloud beta container fleet config-management disable --fleet-default-member-config
    
  2. Verifica che la configurazione predefinita del parco risorse sia disattivata:

    gcloud beta container fleet config-management status
    

Passaggi successivi