Configurazione di un cluster GKE

Questa pagina spiega come configurare un cluster GKE esistente con le opzioni richieste da Anthos Service Mesh. Se vuoi aggiungere ad Anthos Service Mesh i cluster di progetti Google Cloud diversi, devono trovarsi in un VPC (Virtual Private Cloud) condiviso. Per ulteriori informazioni, consulta Configurazione dei cluster con un VPC condiviso.

Prima di iniziare

Prima di iniziare a configurare un cluster, assicurati di avere:

Configurazione di un cluster esistente

  1. Crea le seguenti variabili di ambiente:

    • Imposta il nome del cluster:

      export CLUSTER_NAME=YOUR_CLUSTER_NAME

    • Imposta CLUSTER_LOCATION sulla zona o sulla regione del cluster:

      export CLUSTER_LOCATION=YOUR_ZONE_OR_REGION

    • Imposta il pool di carichi di lavoro:

      export WORKLOAD_POOL=${PROJECT_ID}.svc.id.goog

    • Imposta l'ID mesh:

      export MESH_ID="proj-${FLEET_PROJECT_NUMBER}"

  2. Imposta la zona o la regione predefinita per Google Cloud CLI. Se non imposti il valore predefinito qui, assicurati di specificare l'opzione --zone o --region nei comandi gcloud container clusters in questa pagina.

    • Se hai un cluster a zona singola, imposta la zona predefinita:

      gcloud config set compute/zone ${CLUSTER_LOCATION}
    • Se hai un cluster a livello di regione, imposta la regione predefinita:

      gcloud config set compute/region ${CLUSTER_LOCATION}

    Suggerimento: per semplificare la configurazione dell'ambiente shell in futuro, puoi copiare e incollare le istruzioni export per ogni variabile di ambiente in un semplice script shell che source quando avvii una nuova shell. Puoi anche aggiungere i comandi gcloud che impostano i valori predefiniti allo script. In alternativa, puoi utilizzare gcloud init per creare e attivare una configurazione gcloud denominata.

  3. Imposta l'etichetta mesh_id sul cluster. Se nel cluster esistono già etichette che vuoi conservare, devi includerle quando aggiungi l'etichetta mesh_id.

    1. Per verificare se il cluster ha etichette esistenti:

      gcloud container clusters describe ${CLUSTER_NAME} \
        --project ${PROJECT_ID}

      Cerca il campo resourceLabels nell'output. Ogni etichetta viene archiviata in una riga separata sotto il campo resourceLabels, ad esempio:

      resourceLabels:
        csm: ''
        env: dev
        release: stable

      Se l'etichetta csm è presente nell'output, non è necessario conservarla. L'etichetta mesh_id sostituisce l'etichetta csm.

      Per praticità, puoi aggiungere le etichette a una variabile di ambiente. Nel seguente, sostituisci YOUR_EXISTING_LABELS con un elenco separato da virgole delle etichette esistenti sul tuo cluster nel formato KEY=VALUE, ad esempio: env=dev,release=stable

      export EXISTING_LABELS="YOUR_EXISTING_LABELS"
    2. Imposta l'etichetta mesh_id:

      • Se nel cluster esistono etichette che vuoi conservare, aggiorna il cluster con mesh_id e le etichette esistenti:

        gcloud container clusters update ${CLUSTER_NAME} \
          --project ${PROJECT_ID} \
          --update-labels=mesh_id=${MESH_ID},${EXISTING_LABELS}
      • Se il cluster non ha etichette esistenti, aggiorna il cluster solo con l'etichetta mesh_id:

        gcloud container clusters update ${CLUSTER_NAME} \
          --project=${PROJECT_ID} \
          --update-labels=mesh_id=${MESH_ID}
  4. Attiva Workload Identity:

    gcloud container clusters update ${CLUSTER_NAME} \
       --project=${PROJECT_ID} \
       --workload-pool=${WORKLOAD_POOL}

    L'abilitazione di Workload Identity può richiedere da 10 a 15 minuti.

  5. Abilita Cloud Monitoring e Cloud Logging su GKE:

    gcloud container clusters update ${CLUSTER_NAME} \
       --project=${PROJECT_ID} \
       --enable-stackdriver-kubernetes

Che cosa vuoi fare dopo?