Registra un cluster su Google Cloud nel tuo parco risorse

Questa pagina mostra come aggiungere un cluster GKE su Google Cloud al tuo parco risorse. A seconda del progetto e del caso d'uso, puoi utilizzare la console Google Cloud, Terraform, Config Connector o Google Cloud CLI per la registrazione. Puoi anche creare e registrare un nuovo cluster in un solo passaggio utilizzando Google Cloud CLI, la console Google Cloud o Terraform.

Prima di iniziare

Assicurati di aver seguito i prerequisiti generali per la registrazione di un cluster.

A seconda del caso d'uso, le registrazioni del cluster GKE su Google Cloud potrebbero richiedere anche quanto segue:

Registra il tuo cluster GKE su Google Cloud

Come hai visto nei prerequisiti, ti consigliamo di registrare i tuoi cluster GKE con la federazione delle identità per i carichi di lavoro per GKE abilitata, che fornisce alle applicazioni un modo coerente per autenticarsi alle API e ai servizi Google Cloud. Per scoprire di più sui vantaggi dell'attivazione della federazione delle identità per i carichi di lavoro del parco risorse per GKE, consulta Utilizzare la federazione delle identità per i carichi di lavoro del parco risorse per GKE. La registrazione dei cluster utilizzando una delle seguenti opzioni ti consente di attivare la federazione delle identità per i carichi di lavoro del parco risorse per GKE, se necessario.

Puoi scegliere se registrare un nuovo cluster durante la creazione o un cluster esistente.

Registra un nuovo cluster

Se hai abilitato GKE Enterprise, ti consigliamo vivamente di registrare nuovi cluster in un parco risorse durante la creazione del cluster. Questo perché questi cluster "nati nel parco risorse" vengono creati con le impostazioni predefinite a livello di parco risorse scelte per una serie di funzionalità aziendali e con i log e le metriche consigliati già abilitati. Per saperne di più, consulta le seguenti guide:

Se non hai attivato GKE Enterprise, puoi comunque registrare i cluster durante la loro creazione utilizzando queste istruzioni, ma non riceverai alcuna configurazione predefinita a livello di parco risorse.

Console

  1. Nella console Google Cloud, vai alla pagina di creazione del cluster pertinente.

  2. Segui le istruzioni nella documentazione di GKE per completare le sezioni per la creazione di una Autopilot, Standard regionale o Cluster di zona standard dalla console Google Cloud.

  3. Nella sezione Registrazione del parco veicoli, seleziona la casella di controllo Registra in un parco veicoli. Per impostazione predefinita, il nome del parco risorse si basa sull'ID progetto.

  4. Compila le restanti sezioni.

  5. Se hai scelto di creare un cluster standard e vuoi che il cluster registrato utilizzi la federazione delle identità per i carichi di lavoro del parco risorse (opzione consigliata), fai clic su Sicurezza nel riquadro di navigazione e assicurati che l'opzione Abilita la federazione delle identità per i carichi di lavoro per GKE sia selezionata. Questa funzionalità è abilitata per impostazione predefinita nei cluster Autopilot.

  6. Dopo aver esaminato i dettagli del cluster, fai clic su Crea per creare e registrare il cluster in un parco risorse.

gcloud

Questi comandi richiedono gcloud CLI versione 450.0.0 o successiva.

La registrazione di un cluster mediante Google Cloud CLI fornisce al cluster una località di appartenenza a livello di regione per impostazione predefinita.

  • Per creare e registrare un nuovo cluster GKE Autopilot, esegui questo comando:

    gcloud container clusters create-auto CLUSTER_NAME --enable-fleet
    

    Sostituisci CLUSTER_NAME con un nome univoco per il cluster che stai creando. Questo sarà anche il nome appartenenza del cluster. Se esiste già un cluster con questo nome nel parco scelto, il comando restituirà un errore.

  • Per creare e registrare un nuovo cluster GKE Standard con la federazione delle identità per i carichi di lavoro abilitata per GKE, esegui questo comando:

    gcloud container clusters create CLUSTER_NAME --enable-fleet \
    --workload-pool=PROJECT_ID.svc.id.goog
    

    Sostituisci quanto segue:

    • CLUSTER_NAME: un nome univoco per il cluster che stai creando. Diventerà anche il nome di appartenenza del cluster. Se esiste già un cluster con questo nome nel parco scelto, il comando restituirà un errore.
    • PROJECT_ID: l'ID progetto Google Cloud del progetto che sarà proprietario del nuovo cluster.

    Se stai creando un cluster standard, ti consigliamo di creare il cluster con la federazione delle identità per i carichi di lavoro per GKE abilitata, in quanto ciò consente la federazione delle identità per i carichi di lavoro del parco risorse per il cluster registrato. Tuttavia, puoi omettere il flag --workload-pool se non vuoi utilizzare questa funzionalità. Nei cluster Autopilot è abilitata la federazione delle identità per i carichi di lavoro per GKE per impostazione predefinita.

A seconda del cluster che vuoi creare, puoi anche specificare una delle altre opzioni per creare un cluster Standard di zona, Standard a livello di area geografica o Autopilot. Potresti anche dover specificare una zona Compute Engine se non hai configurato una zona predefinita per Google Cloud CLI e un progetto Google Cloud che sia proprietario del cluster se non hai configurato un progetto predefinito.

Scopri di più sulla creazione di diversi tipi di cluster GKE nella documentazione di GKE.

Terraform

Puoi creare e registrare i cluster GKE con Terraform utilizzando il provider google. Puoi trovare un riferimento completo per la risorsa google_container_cluster utilizzata per gestire un cluster GKE nel registro Terraform.

Assicurati di aver creato un account di servizio per Terraform da utilizzare come descritto nei prerequisiti prima di seguire queste istruzioni.

Per creare e registrare un nuovo cluster, aggiungi i seguenti blocchi alla configurazione di Terraform.

  1. Specifica il fornitore google come fornitore obbligatorio:

    terraform {
      required_providers {
        google = {
          source = "hashicorp/google"
          version = "VERSION"
        }
      }
    }
    

    Sostituisci VERSION con 5.6.0 o versioni successive.

  2. Crea e registra un nuovo cluster:

    resource "google_container_cluster" "TF_CLUSTER_RESOURCE_NAME" {
      provider = google
      name               = "CLUSTER_NAME"
      location           = "ZONE"
      initial_node_count = 1
      fleet {
        project = "FLEET_HOST_PROJECT"
      }
    }
    

    Sostituisci quanto segue:

    • TF_CLUSTER_RESOURCE_NAME: un nome univoco per la nuova risorsa google_container_cluster che stai creando.
    • CLUSTER_NAME: un nome univoco per il nuovo cluster GKE che vuoi creare e registrare.
    • ZONE: la zona per la risorsa del cluster GKE. Ad esempio: us-central1-a.
    • FLEET_HOST_PROJECT: l'ID del progetto Google Cloud in cui stai creando e registrando il cluster. Se non è impostato, il cluster non verrà registrato in un parco risorse. Specifica un ID progetto diverso se vuoi registrare il cluster in un parco risorse in un altro progetto.

Registra un cluster esistente

Utilizza una delle seguenti opzioni per registrare i cluster esistenti nel parco risorse del proprio progetto o in un parco risorse di un altro progetto (tutte le opzioni tranne la console Google Cloud). Puoi anche scegliere di registrare alcuni o tutti i cluster esistenti durante l'upgrade a GKE Enterprise.

Per registrare un cluster GKE esistente:

Console

Se vuoi che il cluster utilizzi la federazione delle identità per i carichi di lavoro del parco risorse (opzione consigliata), assicurati che la federazione delle identità per i carichi di lavoro per GKE sia abilitata sul cluster prima di seguire queste istruzioni. Nei cluster Autopilot è abilitata la federazione delle identità per i carichi di lavoro per GKE per impostazione predefinita. I cluster con la federazione delle identità per i carichi di lavoro per GKE hanno automaticamente abilitata la federazione delle identità per i carichi di lavoro del parco risorse quando li registri dalla console Google Cloud.

  1. Nella console Google Cloud, vai alla pagina Cluster GKE.

    Vai alla pagina Cluster GKE

  2. Fai clic su Registra accanto al cluster non registrato che vuoi aggiungere al parco risorse.

  3. Fai di nuovo clic su Registrati nella finestra di dialogo di conferma visualizzata.

gcloud

Questi comandi richiedono gcloud CLI versione 450.0.0 o successive.

La registrazione di un cluster utilizzando Google Cloud CLI assegna al cluster una posizione di appartenenza a livello di regione per impostazione predefinita.

Entrambi questi comandi abilitano la federazione delle identità per i carichi di lavoro del parco risorse per il cluster se nel cluster è già abilitata la federazione delle identità per i carichi di lavoro per GKE.

  • Per registrare un cluster GKE esistente su Google Cloud nel parco risorse del relativo progetto, esegui questo comando:

    gcloud container clusters update CLUSTER_NAME --enable-fleet
    

    Sostituisci CLUSTER_NAME con il nome del cluster che stai registrando. Questo sarà anche il nome appartenenza del cluster.

  • Per registrare il cluster in un parco risorse in un altro progetto, utilizza il flag --fleet-project, come mostrato di seguito. Assicurati di aver configurato le autorizzazioni necessarie per la registrazione tra progetti prima di eseguire questo comando.

    gcloud container clusters update CLUSTER_NAME --fleet-project=PROJECT_ID_OR_NUMBER
    
    • Sostituisci CLUSTER_NAME con il nome del cluster che stai registrando. Diventerà anche il nome di appartenenza del cluster.
    • Sostituisci PROJECT_ID_OR_NUMBER con l'ID o il numero del progetto host del parco risorse che hai scelto.

Terraform

Puoi registrare i cluster GKE con Terraform utilizzando il provider google. Puoi trovare un riferimento completo per la risorsa google_container_cluster utilizzata per gestire un cluster GKE nel registro Terraform.

Prima di seguire queste istruzioni, assicurati di aver creato un account di servizio da utilizzare per Terraform come descritto nei prerequisiti.

Registra un cluster esistente

Per registrare un cluster esistente, aggiungi il blocco seguente alla configurazione delle risorse google_container_cluster del cluster:

fleet {
        project = "FLEET_HOST_PROJECT"
      }

Sostituisci FLEET_HOST_PROJECT con l'ID progetto Google Cloud a cui appartiene il cluster o con un ID progetto diverso se vuoi registrare il cluster in un parco risorse di un altro progetto.

Abilita la federazione delle identità per i carichi di lavoro per GKE su un cluster registrato

Puoi utilizzare Terraform per abilitare Workload Identity Federation for GKE per un cluster.

Per attivare la federazione delle identità per i carichi di lavoro per GKE per il tuo cluster nuovo o esistente, aggiungi il seguente blocco nella configurazione della risorsa google_container_cluster del cluster pertinente:

  workload_identity_config {
    workload_pool = "PROJECT_ID.svc.id.goog"
  }
  ```

 Replace <code><var>PROJECT_ID</var></code> with the Google Cloud project ID for your Terraform resources.

Config Connector

Se disponi del componente aggiuntivo Config Connector installato, puoi utilizzare Config Connector per registrare GKE cluster. Assicurati di avere una versione di Config Connector successiva alla 1.47.0 e di aver creato un account di servizio come descritto nei prerequisiti.

Puoi trovare un riferimento completo per la risorsa GKEHubMembership nel documentazione di riferimento di Config Connector.

Registra un cluster GKE

Per registrare il cluster, devi prima specificare dove vuoi creare le risorse, seguendo le istruzioni riportate nella guida di Config Connector. Quindi, crea un file YAML da registrare e (facoltativamente) crea un cluster, come segue:

Crea e registra un cluster GKE

  1. Crea un cluster GKE, come nel semplice esempio seguente:

    apiVersion: container.cnrm.cloud.google.com/v1beta1
    kind: ContainerCluster
    metadata:
      name: CLUSTER_NAME
    spec:
      location: LOCATION
      initialNodeCount: 1
    

    Sostituisci quanto segue:

    • CLUSTER_NAME: il nome che hai scelto per rappresentare in modo univoco il cluster creato con Config Connector.
    • LOCATION: la zona o la regione in cui hai scelto di eseguire il provisioning del cluster GKE risorsa. Ad esempio: us-central1-a.

    Per un elenco completo delle opzioni disponibili durante la creazione di un cluster GKE con Config Connector, consulta la documentazione di Config Connector.

  2. Registra un'appartenenza per il cluster GKE.

    apiVersion: gkehub.cnrm.cloud.google.com/v1beta1
    kind: GKEHubMembership
    metadata:
      name: MEMBERSHIP_NAME
    spec:
      location: MEMBERSHIP_LOCATION
      endpoint:
        gkeCluster:
          resourceRef:
            name: CLUSTER_NAME
    

    Sostituisci quanto segue:

    • MEMBERSHIP_NAME: il nome dell'appartenenza che hai scelto per rappresentare in modo univoco il cluster registrato nel parco risorse.
    • MEMBERSHIP_LOCATION: la posizione del servizio Fleet di cui vuoi gestire l'appartenenza del cluster. Può trattarsi della posizione del cluster (opzione consigliata) o di global. Scopri di più nella sezione Località dell'abbonamento al parco veicoli. Non puoi specificare una località diversa da quella del cluster: in questo caso, la registrazione non va a buon fine.
    • CLUSTER_NAME: il nome che hai scelto per rappresentare in modo univoco il cluster creato con Config Connector.

Registra il cluster in un progetto diverso

Aggiungi quanto segue al campo metadata della risorsa GKEHubMembership per registrare un cluster in un parco risorse in un altro progetto.

   metadata:
     annotations:
       cnrm.cloud.google.com/project-id: FLEET_PROJECT_ID

Sostituisci quanto segue:

  • FLEET_PROJECT_ID: il progetto host del parco risorse che hai scelto per registrare il cluster GKE.

Registra un cluster esistente

Utilizza la seguente configurazione se vuoi registrare un cluster esistente, indipendentemente da come è stato creato. In questo caso, devi specificare il nome completo della risorsa del cluster in modo che Config Connector possa trovarlo. Sostituisci il campo resourceRef della risorsa GKEHubMembership con:

   resourceRef:
     external: //container.googleapis.com/CLUSTER_RESOURCE_NAME

Sostituisci quanto segue:

  • CLUSTER_RESOURCE_NAME: il nome della risorsa Google Cloud per il cluster GKE. Ad esempio: projects/my-project/zones/us-west1-a/clusters/my-cluster.

Se il cluster è stato creato con Config Connector, non devi specificare il nome completo del cluster.

Abilita la federazione delle identità per i carichi di lavoro per GKE su un cluster registrato

L'attivazione di Workload Identity Federation per GKE utilizza la stessa configurazione della registrazione di un cluster, con i seguenti passaggi aggiuntivi.

  1. Abilita la federazione delle identità per i carichi di lavoro per GKE aggiungendo quanto segue nel spec campo della risorsa ContainerCluster. Devi eseguire questa operazione sia per i cluster nuovi che per quelli esistenti.

    spec:
      workloadIdentityConfig:
        workloadPool: PROJECT_ID.svc.id.goog
    

    Sostituisci quanto segue:

  2. Abilita la federazione delle identità per i carichi di lavoro del parco risorse aggiungendo quanto segue nel spec campo del blocco di risorse GKEHubMembership.

    spec:
      authority:
        issuer: https://container.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_NAME
    }
    

    Sostituisci quanto segue:

    • PROJECT_ID: il progetto predefinito che hai scelto tramite l'annotazione dello spazio dei nomi per creare la risorsa del cluster GKE.
    • LOCATION: la zona o la regione scelta per il provisioning della risorsa del cluster GKE. Ad esempio: us-central1-a.
    • CLUSTER_NAME: il nome che hai scelto per rappresentare in modo univoco il cluster che hai creato.

Risoluzione dei problemi

Se riscontri problemi durante la configurazione, consulta la nostra guida alla risoluzione dei problemi.

Passaggi successivi