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 unico 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 di livello Enterprise in un parco risorse durante la creazione dei cluster. Questo perché questi cluster GKE Enterprise "nati nel parco risorse" vengono creati con le impostazioni predefinite a livello di parco risorse che hai scelto per una serie di funzionalità aziendali e con i log e le metriche consigliati già abilitati. Per saperne di più, consulta le seguenti guide:

Puoi anche registrare i cluster di livello standard durante la creazione utilizzando queste istruzioni, ma i cluster non riceveranno 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 relative alla creazione di un cluster Autopilot, regionale standard o di zona standard dalla console Google Cloud.

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

  4. Compila le sezioni rimanenti.

  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 successive.

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

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

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

    Sostituisci CLUSTER_NAME con un nome univoco per il cluster che stai creando. che diventerà 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 per GKE abilitata, esegui il seguente 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. Questo sarà anche il nome 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ò abilita 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, la federazione delle identità per i carichi di lavoro per GKE è abilitata 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 per essere il 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.

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

Per creare e registrare un nuovo cluster, aggiungi i seguenti blocchi nella 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 tuoi 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, la federazione delle identità per i carichi di lavoro per GKE è abilitata 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 tuo 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 i comandi attivano la federazione delle identità per i carichi di lavoro del parco risorse per il cluster se in questo è 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 progetto, esegui il seguente 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. Prima di eseguire questo comando, assicurati di aver configurato le autorizzazioni necessarie per la registrazione tra progetti.

    gcloud container clusters update CLUSTER_NAME --fleet-project=PROJECT_ID_OR_NUMBER
    
    • Sostituisci CLUSTER_NAME con il nome del cluster che stai registrando. che diventerà anche il nome appartenenza del cluster.
    • Sostituisci PROJECT_ID_OR_NUMBER con l'ID o il numero del progetto host della flotta 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 seguente blocco alla configurazione della risorsa 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 Workload Identity Federation for 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 hai installato il componente aggiuntivo Config Connector, puoi utilizzare Config Connector per registrare i cluster GKE. 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 nella documentazione di riferimento di Config Connector.

Registra un cluster GKE

Per registrare il cluster, specifica innanzitutto dove vuoi creare le risorse seguendo le istruzioni nella guida di Config Connector configurazione. Quindi, crea un file YAML per registrare e (se vuoi) creare un cluster, come segue:

Crea e registra un cluster GKE

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

    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 scelta per il provisioning della risorsa del cluster GKE. 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 altro progetto

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 è necessario specificare il nome completo del cluster.

Abilita Workload Identity Federation for 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