Configura un cluster da gestire tramite l'API GKE On-Prem

L'API GKE On-Prem è un'API ospitata da Google Cloud che ti consente di gestire il ciclo di vita dei cluster on-premise utilizzando strumenti standard: la Google Cloud console, Google Cloud CLI o Terraform. Quando crei un cluster utilizzando uno di questi strumenti, l'API archivia i metadati sullo stato del cluster nella Google Cloud regione che hai specificato durante la creazione del cluster. Questi metadati ti consentono di gestire il ciclo di vita del cluster utilizzando gli strumenti standard. Se vuoi utilizzare questi strumenti per visualizzare i dettagli del cluster o gestire il ciclo di vita dei cluster creati utilizzando gkectl, devi registrare i cluster nell'API GKE On-Prem.

Terminologia

La registrazione di un cluster ti consente di gestirne il ciclo di vita utilizzando la console, gcloud CLI o Terraform.

La registrazione di un cluster è un processo distinto dalla registrazione di un cluster in un parco risorse. Un parco risorse è un raggruppamento logico di cluster Kubernetes che puoi gestire insieme. Tutti i cluster Google Distributed Cloud vengono registrati in un parco risorse al momento della creazione del cluster. Quando crei un cluster utilizzando gkectl, il cluster viene registrato nel Google Cloud progetto che specifichi nel gkeConnect.projectID campo nel file di configurazione del cluster. Questo progetto è denominato progetto host del parco risorse. Per saperne di più sui parchi risorse, inclusi casi d'uso, best practice ed esempi, consulta la documentazione sulla gestione dei parchi risorse.

Visualizzare i cluster registrati

Tutti i cluster del parco risorse vengono visualizzati nelle pagine Cluster GKE della console. In questo modo, puoi avere una panoramica dell'intero parco risorse e, per Google Distributed Cloud, vedere quali cluster sono gestiti dall'API GKE On-Prem.

Per visualizzare i cluster del parco risorse:

  1. Nella console, vai alla pagina Cluster GKE.
    Vai ai cluster GKE
  2. Seleziona il Google Cloud progetto.
    • Se nella colonna Tipo viene visualizzato VMware, il cluster è gestito dall'API GKE On-Prem.
    • Se nella colonna Tipo viene visualizzato Esterno, il cluster non è gestito dall'API GKE On-Prem.

Requisiti

  • I cluster utente devono essere della versione 1.11 o successive.
  • I cluster di amministrazione devono essere della versione 1.13 o successive.

  • Se non sei il proprietario del progetto, devi avere almeno il ruolo Identity and Access Management roles/gkeonprem.admin per il progetto. Per i dettagli sulle autorizzazioni incluse in questo ruolo, consulta Ruoli GKE on-prem nella documentazione di IAM.

Prima di iniziare

  1. Configura gcloud CLI, se necessario.

    1. Se devi installare gcloud CLI, consulta la documentazione di gcloud CLI.

    2. Aggiorna i componenti di gcloud CLI, se necessario:

      gcloud components update
      
  2. Segui questi passaggi per attivare e utilizzare l'API GKE On-Prem:

    1. Abilita l'API nel tuo progetto:

      gcloud services enable \
          --project PROJECT_ID \
          gkeonprem.googleapis.com
      

      Sostituisci PROJECT_ID con l'ID progetto del progetto host del parco risorse. Questo è l'ID progetto configurato nella sezione gkeconnect del file di configurazione del cluster di amministrazione o del cluster utente.

      Se ricevi un errore PERMISSION_DENIED, controlla l'ID progetto che hai inserito. Se l'ID progetto è corretto, esegui gcloud auth login per accedere a Google Cloud CLI con l'account che ha accesso al progetto.

    2. Se è la prima volta che abiliti l'API GKE On-Prem nel tuo progetto, devi inizializzarla. Puoi farlo chiamando un comando gcloud CLI che visualizza le versioni disponibili che puoi utilizzare per creare un cluster:

      gcloud container vmware clusters query-version-config \
          --project=PROJECT_ID \
          --location=REGION
      

      Sostituisci REGION con us-west1 o un'altra regione supportata.

  3. Se la tua organizzazione ha configurato una lista consentita che consente al traffico proveniente dalle API di Google e da altri indirizzi di passare attraverso il server proxy, aggiungi quanto segue alla lista consentita:

    • gkeonprem.googleapis.com
    • gkeonprem.mtls.googleapis.com

    Questi sono i nomi dei servizi per l'API GKE On-Prem.

Registrare un cluster utente

gcloud CLI

  1. Elenca le appartenenze al parco risorse dei cluster registrati:

    gcloud container fleet memberships list \
        --project=PROJECT_ID
    

    Sostituisci PROJECT_ID con l'ID progetto del progetto host del parco risorse.

    Prendi nota della regione in cui il cluster di amministrazione che gestisce il cluster utente è un membro, perché ti servirà nel passaggio successivo.

  2. Registra il cluster nell'API GKE On-Prem:

    gcloud container vmware clusters enroll USER_CLUSTER_NAME \
        --project=<var>PROJECT_ID</var> \
        --admin-cluster-membership=projects/PROJECT_ID/locations/MEMBERSHIP_REGION/memberships/ADMIN_CLUSTER_NAME \
        --location=REGION
    

    Sostituisci quanto segue:

    • USER_CLUSTER_NAME: il nome del cluster utente che vuoi registrare.

    • PROJECT_ID: l'ID progetto del progetto host del parco risorse.

    • MEMBERSHIP_REGION: la regione in cui il cluster di amministrazione che gestisce il cluster utente è un membro. Può essere global o una Google Cloud regione.

    • ADMIN_CLUSTER_NAME: il nome del cluster di amministrazione che gestisce il cluster utente.

      ADMIN_CLUSTER_NAME, MEMBERSHIP_REGION e PROJECT_ID formano il nome del cluster completamente specificato per il flag --admin-cluster-membership.

    • REGION: la Google Cloud regione in cui l'API GKE On-Prem viene eseguita e archivia i metadati del cluster. Specifica us-west1 o un'altra regione supportata. La regione non può essere modificata dopo la registrazione del cluster.

gkectl

Segui questi passaggi sulla workstation di amministrazione.

  1. Aggiungi la seguente sezione al file di configurazione del cluster utente:

    gkeOnPremAPI:
      enabled:true
      location:REGION
    

    Sostituisci REGION con la Google Cloud regione in cui l'API GKE On-Prem viene eseguita e archivia i metadati del cluster. Specifica us-west1 o un'altra regione supportata. La regione non può essere modificata dopo la registrazione del cluster.

  2. Aggiorna il cluster:

    gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG_FILE
    

    Sostituisci quanto segue:

    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

    • USER_CLUSTER_CONFIG_FILE: il percorso del file di configurazione del cluster utente.

Registrare un cluster di amministrazione

gcloud CLI

  1. Elenca le appartenenze al parco risorse dei cluster registrati:

    gcloud container fleet memberships list \
        --project=PROJECT_ID
    

    Sostituisci PROJECT_ID con l'ID progetto del progetto host del parco risorse.

    Prendi nota della regione in cui il cluster di amministrazione è un membro, perché ti servirà nel passaggio successivo.

  2. Registra il cluster di amministrazione nell'API GKE On-Prem:

    gcloud container vmware admin-clusters enroll ADMIN_CLUSTER_NAME \
        --project=PROJECT_ID \
        --admin-cluster-membership=projects/PROJECT_ID/locations/MEMBERSHIP_REGION/memberships/ADMIN_CLUSTER_NAME \
        --location=REGION
    

Sostituisci quanto segue:

  • ADMIN_CLUSTER_NAME: il nome del cluster di amministrazione che vuoi registrare.

  • PROJECT_ID: l'ID progetto del progetto host del parco risorse.

  • MEMBERSHIP_REGION: la regione in cui il cluster di amministrazione è un membro. Può essere global o una Google Cloud regione.

    ADMIN_CLUSTER_NAME, MEMBERSHIP_REGION e PROJECT_ID formano il nome del cluster completamente specificato per il flag --admin-cluster-membership.

  • REGION: la Google Cloud regione in cui l'API GKE On-Prem viene eseguita e archivia i metadati del cluster. Specifica us-west1 o un'altra regione supportata. Ti consigliamo di utilizzare la stessa regione configurata in stackdriver.clusterLocation nel file di configurazione del cluster di amministrazione. La regione non può essere modificata dopo la registrazione del cluster.

gkectl

Segui questi passaggi sulla workstation di amministrazione.

  1. Aggiungi la seguente sezione al file di configurazione del cluster di amministrazione:

    gkeOnPremAPI:
      enabled:true
      location:REGION
    

    Sostituisci REGION con la Google Cloud regione in cui l'API GKE On-Prem viene eseguita e archivia i metadati del cluster. Specifica us-west1 o un'altra regione supportata. Ti consigliamo di utilizzare la stessa regione configurata in stackdriver.clusterLocation. La regione non può essere modificata dopo la registrazione del cluster.

  2. Aggiorna il cluster:

    gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG_FILE
    

    Sostituisci quanto segue:

    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

    • ADMIN_CLUSTER_CONFIG_FILE: il percorso del file di configurazione del cluster di amministrazione.

Ottenere informazioni sul cluster

Dopo aver registrato il cluster, puoi utilizzare i seguenti comandi per ottenere informazioni sui cluster:

Cluster utente

  • Per descrivere un cluster utente:
gcloud container vmware clusters describe USER_CLUSTER_NAME \
  --project=PROJECT_ID \
  --location=REGION
  • Per elencare i cluster utente:
gcloud container vmware clusters list \
  --project=PROJECT_ID \
  --location=-

Quando imposti --location=-, significa elencare tutti i cluster in tutte le regioni. Se devi ridurre l'ambito dell'elenco, imposta --location sulla regione specificata durante la registrazione del cluster.

Cluster di amministrazione

  • Per descrivere un cluster di amministrazione:
gcloud container vmware admin-clusters describe ADMIN_CLUSTER_NAME \
  --project=PROJECT_ID \
  --location=REGION
  • Per elencare i cluster di amministrazione:
gcloud container vmware admin-clusters list \
  --project=PROJECT_ID \
  --location=-

Quando imposti --location=-, significa elencare tutti i cluster in tutte le regioni. Se devi ridurre l'ambito dell'elenco, imposta --location sulla regione specificata durante la registrazione del cluster.

Connettiti al cluster

Dopo aver registrato il cluster con l'API GKE On-Prem, devi scegliere e configurare un metodo di autenticazione per poter gestire il cluster dalla Google Cloud console. Il metodo di autenticazione selezionato controlla anche l'accesso al cluster dalla riga di comando. Per ulteriori informazioni, consulta le seguenti risorse: