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
.
- Assicurati di disporre delle autorizzazioni corrette per creare cluster. Come minimo, devi essere un amministratore del cluster Kubernetes Engine.
- Se vuoi registrare il nuovo cluster in un parco risorse, assicurati di disporre delle API e delle autorizzazioni necessarie.
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
- Vai alla pagina Welcome (Ti diamo il benvenuto):
- Nel campo Numero progetto, fai clic su Copia negli appunti.
- Vai alla pagina IAM:
- Fai clic su Concedi accesso.
- Nel campo Nuove entità, specifica il seguente valore:
SostituisciPROJECT_NUMBER-compute@developer.gserviceaccount.com
PROJECT_NUMBER
con il numero del progetto che hai copiato. - Nel menu Seleziona un ruolo, seleziona il ruolo Account di servizio del nodo predefinito Kubernetes Engine.
- Fai clic su Salva.
gcloud
- 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
- 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
.
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à:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Fai clic su add_box Crea.
Nella sezione Nozioni di base sul cluster, completa quanto segue:
Inserisci il nome del cluster.
Seleziona una regione per il cluster.
- (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.
Per la sezione Networking, consulta Personalizzare l'isolamento della rete per le istruzioni di configurazione.
- Se vuoi, specifica un account di servizio IAM personalizzato per i tuoi nodi:
- Nella pagina Impostazioni avanzate, espandi la sezione Sicurezza.
- 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.
Se vuoi, configura altre impostazioni, ad esempio i periodi di manutenzione e le funzionalità di sicurezza avanzate.
Fai clic su Crea.
Terraform
Per creare un cluster Autopilot utilizzando Terraform, consulta il seguente esempio:
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.
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:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Fai clic su add_box Crea.
In Autopilot, fai clic su Configura.
Nella sezione Nozioni di base sul cluster, completa quanto segue:
- Specifica un nome.
- Seleziona una Regione.
Nella sezione Impostazioni avanzate, scegli un canale di rilascio.
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:
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
Nell'elenco dei cluster, accanto al cluster a cui vuoi connetterti, fai clic su more_vert Azioni e poi su Connetti.
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
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:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Individua il tuo cluster nell'elenco dei cluster. In Modalità, dovrebbe essere visualizzata la dicitura Autopilot.