Crea un cluster Autopilot


Questa pagina spiega come creare un cluster Google Kubernetes Engine (GKE) in modalità Autopilot. Autopilot è una modalità operativa di GKE che ti consente di concentrarti su servizi e applicazioni, mentre GKE gestisce i nodi e l'infrastruttura. Quando esegui il deployment dei carichi di lavoro, GKE esegue il provisioning, la configurazione e la gestione delle risorse e dell'hardware, anche durante la scalabilità.

Prima di iniziare

Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:

  • Attiva l'API Google Kubernetes Engine.
  • Attiva l'API Google Kubernetes Engine
  • Se vuoi utilizzare Google Cloud CLI per questa attività, installa e poi inizializza gcloud CLI. Se hai già installato gcloud CLI, ottieni la versione più recente eseguendo gcloud components update.

Configurare gli account di servizio IAM per GKE

GKE utilizza service account IAM collegati ai tuoi nodi per eseguire attività di sistema come il logging e il monitoraggio. Come minimo, questi account di servizio dei nodi devono avere il ruolo Account di servizio dei nodi predefinito di Kubernetes Engine (roles/container.defaultNodeServiceAccount) nel progetto. Per impostazione predefinita, GKE utilizza l'account di servizio predefinito di Compute Engine, creato automaticamente nel progetto, come account di servizio del nodo.

Per concedere il ruolo roles/container.defaultNodeServiceAccount all'account di servizio predefinito di Compute Engine, completa i seguenti passaggi:

console

  1. Vai alla pagina Welcome (Ti diamo il benvenuto):

    Vai a Benvenuto

  2. Nel campo Numero progetto, fai clic su Copia negli appunti.
  3. Vai alla pagina IAM:

    Vai a IAM

  4. Fai clic su Concedi accesso.
  5. Nel campo Nuove entità, specifica il seguente valore:
    PROJECT_NUMBER-compute@developer.gserviceaccount.com
    Sostituisci PROJECT_NUMBER con il numero del progetto che hai copiato.
  6. Nel menu Seleziona un ruolo, seleziona il ruolo Account di servizio del nodo predefinito Kubernetes Engine.
  7. Fai clic su Salva.

gcloud

  1. Trova il numero del tuo progetto Google Cloud:
    gcloud projects describe PROJECT_ID \
        --format="value(projectNumber)"

    Sostituisci PROJECT_ID con l'ID progetto.

    L'output è simile al seguente:

    12345678901
    
  2. Concedi il ruolo roles/container.defaultNodeServiceAccount all'account di servizio predefinito Compute Engine:
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" \
        --role="roles/container.defaultNodeServiceAccount"

    Sostituisci PROJECT_NUMBER con il numero del progetto del passaggio precedente.

Crea un cluster Autopilot

Le informazioni minime che devi specificare quando crei un nuovo cluster Autopilot sono un nome, un progetto (di solito quello corrente) e una regione (di solito la regione predefinita per gli strumenti a riga di comando). Tuttavia, esistono molte altre impostazioni di configurazione possibili, alcune delle quali non possono essere modificate dopo la creazione del cluster. Assicurati di comprendere quali impostazioni non possono essere modificate dopo la creazione del cluster e di scegliere l'impostazione corretta quando crei un cluster se non vuoi doverlo creare di nuovo.

Puoi visualizzare una panoramica delle opzioni di configurazione del cluster in Informazioni sulle scelte di configurazione del cluster e un elenco completo delle possibili opzioni nelle guide di riferimento di gcloud container clusters create-auto e Terraform google_container_cluster.

Puoi creare un cluster Autopilot utilizzando Google Cloud CLI, la console Google Cloud o Terraform:

gcloud

Esegui questo comando:

gcloud container clusters create-auto CLUSTER_NAME \
    --location=LOCATION \
    --project=PROJECT_ID

Sostituisci quanto segue:

  • CLUSTER_NAME: il nome del nuovo cluster Autopilot.
  • LOCATION: la regione per il tuo cluster.
  • PROJECT_ID: il tuo ID progetto.

Ti consigliamo vivamente di specificare un account di servizio IAM con privilegi minimi che i tuoi nodi possano utilizzare al posto dell'account di servizio predefinito di Compute Engine. Per imparare a creare un account di servizio con privilegi minimi, consulta Utilizzare un account di servizio con privilegio minimo minimi.

Per specificare un account di servizio personalizzato in gcloud CLI, aggiungi il seguente flag al comando:

--service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

Sostituisci SERVICE_ACCOUNT_NAME con il nome del tuo account di servizio con privilegi minimi.

Per un elenco di altre opzioni che puoi specificare, consulta la documentazione di riferimento di gcloud container clusters create-auto.

Console

Esegui le seguenti attività:

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud.

    Vai a Google Kubernetes Engine

  2. Fai clic su Crea.

  3. Nella sezione Nozioni di base sul cluster, completa quanto segue:

  4. Inserisci il nome del cluster.

  5. Seleziona una regione per il cluster.

    1. (Facoltativo, disponibile con GKE Enterprise) Se vuoi registrare il nuovo cluster in un parco risorse, vai alla sezione Registrazione del parco risorse e segui le istruzioni della console Google Cloud per creare e registrare un nuovo cluster per completare la registrazione del cluster.
  6. Per la sezione Networking, consulta Personalizzare l'isolamento della rete per le istruzioni di configurazione.

  7. Se vuoi, specifica un account di servizio IAM personalizzato per i tuoi nodi:
    1. Nella pagina Impostazioni avanzate, espandi la sezione Sicurezza.
    2. Nel menu Account di servizio, seleziona l'account di servizio che preferisci.

    Ti consigliamo vivamente di specificare un account di servizio IAM con privilegi minimi che i tuoi nodi possano utilizzare al posto dell'account di servizio predefinito di Compute Engine. Per imparare a creare un account di servizio con privilegi minimi, consulta Utilizzare un account di servizio con privilegio minimo minimi.

  8. Se vuoi, configura altre impostazioni, ad esempio i periodi di manutenzione e le funzionalità di sicurezza avanzate.

  9. Fai clic su Crea.

Terraform

Per creare un cluster Autopilot utilizzando Terraform, consulta il seguente esempio:

resource "google_container_cluster" "default" {
  name     = "gke-autopilot-basic"
  location = "us-central1"

  enable_autopilot = true

  # Set `deletion_protection` to `true` will ensure that one cannot
  # accidentally delete this instance by use of Terraform.
  deletion_protection = false
}

Per scoprire di più sull'utilizzo di Terraform, consulta la pagina Assistenza di Terraform per GKE.

Creare un cluster Autopilot con una versione e un canale di rilascio specifici

Per impostazione predefinita, GKE registra i nuovi cluster Autopilot nel canale di rilascio normale con la versione GKE predefinita nel canale. Puoi cambiare il canale di rilascio quando crei un cluster Autopilot utilizzando gcloud CLI, la console Google Cloud o Terraform.

Puoi anche impostare una versione specifica di GKE quando crei un cluster utilizzando la gcloud CLI. L'impostazione della versione del cluster è utile solo se hai un requisito specifico per la versione. Per impostare la versione del cluster, specifica il flag --cluster-version nel comando gcloud container clusters create-auto. La versione specificata deve essere una versione GKE disponibile.

Le seguenti istruzioni per impostare il canale di rilascio e la versione sono facoltative. A meno che tu non abbia bisogno di una versione GKE specifica, ti consigliamo di mantenere l'impostazione del canale di rilascio predefinito.

gcloud

Esegui questo comando:

gcloud container clusters create-auto CLUSTER_NAME \
    --location=LOCATION \
    --release-channel=RELEASE_CHANNEL

Sostituisci RELEASE_CHANNEL con il nome del canale di rilascio per il cluster. Il valore predefinito è Regular.

Se vuoi, specifica --cluster-version=CLUSTER_VERSION, sostituendo CLUSTER_VERSION con la versione GKE per il cluster, ad esempio 1.29.4-gke.1043002. La versione specificata viene applicata finché una versione più recente non diventa predefinita nel canale di rilascio. GKE poi esegue automaticamente l'upgrade del tuo cluster alla nuova versione predefinita. Se ometti questo flag, GKE imposta la versione sulla versione predefinita del canale di rilascio.

Per controllare le versioni disponibili, consulta Quali versioni sono disponibili in un canale?. Puoi eseguire qualsiasi versione minore nel canale selezionato o scegliere un sottoinsieme di versioni patch di altri canali.

Console

Per impostare il canale di rilascio quando crei un cluster Autopilot, procedi nel seguente modo:

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud.

    Vai a Google Kubernetes Engine

  2. Fai clic su Crea.

  3. In Autopilot, fai clic su Configura.

  4. Nella sezione Nozioni di base sul cluster, completa quanto segue:

    1. Specifica un nome.
    2. Seleziona una Regione.
  5. Nella sezione Impostazioni avanzate, scegli un canale di rilascio.

  6. Fai clic su Crea.

Terraform

Per impostare il canale di rilascio e la versione del cluster quando crei un cluster Autopilot utilizzando Terraform, fai riferimento al seguente esempio:

resource "google_container_cluster" "default" {
  name     = "gke-autopilot-release-channel"
  location = "us-central1"

  enable_autopilot = true

  release_channel {
    channel = "REGULAR"
  }

  # Set `deletion_protection` to `true` will ensure that one cannot
  # accidentally delete this instance by use of Terraform.
  deletion_protection = false
}

Per scoprire di più sull'utilizzo di Terraform, consulta la pagina Assistenza di Terraform per GKE.

Puoi anche modificare il canale di rilascio e la versione di GKE per i cluster esistenti. Per istruzioni, consulta la sezione Eseguire l'upgrade manuale di un piano di controllo e Selezionare un nuovo canale di rilascio.

Connettiti al cluster

gcloud

gcloud container clusters get-credentials CLUSTER_NAME \
    --location=LOCATION \
    --project=PROJECT_ID

Questo comando configura kubectl in modo che utilizzi il cluster che hai creato.

Console

  1. Nell'elenco dei cluster, accanto al cluster a cui vuoi connetterti, fai clic su Azioni e poi su Connetti.

  2. Fai clic su Esegui in Cloud Shell quando richiesto. Il comando generato viene copiato in Cloud Shell, ad esempio:

    gcloud container clusters get-credentials autopilot-cluster --location=us-central1 --project=autopilot-test
    
  3. Premi Invio per eseguire il comando.

Verifica la modalità del cluster

Puoi verificare che il tuo cluster sia un cluster Autopilot utilizzando gcloud CLI o la console Google Cloud.

gcloud

Per verificare che il cluster sia stato creato in modalità Autopilot, esegui il seguente comando:

gcloud container clusters describe CLUSTER_NAME \
    --location=LOCATION

L'output contiene quanto segue:

autopilot:
  enabled: true

Console

Per verificare che il cluster sia stato creato in modalità Autopilot, procedi nel seguente modo:

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud.

    Vai a Google Kubernetes Engine

  2. Individua il tuo cluster nell'elenco dei cluster. In Modalità, dovrebbe essere visualizzata la dicitura Autopilot.

Passaggi successivi