Creazione di un cluster di zona


Questo documento mostra come creare un cluster di zona standard con le funzionalità predefinite abilitate in Google Kubernetes Engine (GKE). I cluster di zona hanno un singolo piano di controllo in un'unica zona. A seconda dei requisiti di disponibilità, puoi scegliere di distribuire i nodi per il cluster di zona in una singola zona o in più zone.

Per saperne di più sui diversi tipi di disponibilità dei cluster, consulta Informazioni sulle scelte di configurazione del cluster.

Zona singola e multi-zona

Un cluster a zona singola ha un singolo piano di controllo in esecuzione in una zona. Questo piano di controllo gestisce i carichi di lavoro sui nodi in esecuzione nella stessa zona. Se esegui un carico di lavoro in una singola zona, questo carico di lavoro non è disponibile in caso di interruzione di una zona.

I nodi di un cluster multi-zona vengono eseguiti in più zone, ma hanno solo una singola replica del piano di controllo. Se esegui un carico di lavoro in più zone e si verifica un'interruzione a livello di zona, il carico di lavoro viene interrotto in quella zona, ma rimane disponibile in altre zone.

Se hai bisogno di una disponibilità maggiore per il piano di controllo, valuta la possibilità di creare un cluster a livello di regione. In un cluster a livello di regione, il piano di controllo viene replicato in più zone all'interno di una regione.

Prima di iniziare

Prima di iniziare, assicurati di aver eseguito le seguenti attività:

  • Abilita l'API Google Kubernetes Engine.
  • Abilita l'API Google Kubernetes Engine
  • Se vuoi utilizzare Google Cloud CLI per questa attività, installa e initialize gcloud CLI. Se hai già installato gcloud CLI, scarica la versione più recente eseguendo gcloud components update.
  • I cluster multi-zona utilizzano più risorse dei cluster a zona singola. Se stai creando un cluster multi-zona, assicurati di disporre di quotas adeguate.
  • Assicurati di disporre delle autorizzazioni corrette per creare i cluster. Come minimo, dovresti essere un amministratore del cluster Kubernetes Engine.
  • Se vuoi registrare il nuovo cluster in un parco risorse (solo con accesso limitato), assicurati di disporre delle API e autorizzazioni necessarie.

Creazione di un cluster di zona

Puoi creare un cluster di zona utilizzando gcloud CLI, la console Google Cloud o Terraform.

Se stai sviluppando applicazioni GKE con Cloud Code for VS Code, prova a creare cluster con Cloud Code.

gcloud

Per creare un cluster di zona con gcloud CLI, utilizza uno dei comandi seguenti.

Sostituisci quanto segue:

  • CLUSTER_NAME: il nome del nuovo cluster.
  • CHANNEL: il tipo di canale di rilascio, che può essere rapid, regular, stable o None. Per impostazione predefinita, il cluster è registrato nel canale di rilascio regular, a meno che non venga specificato almeno uno dei seguenti flag: --cluster-version, --release-channel, --no-enable-autoupgrade e --no-enable-autorepair.
  • COMPUTE_ZONE: la zona di computing per il piano di controllo del cluster.
  • VERSION: la versione che vuoi specificare per il cluster.
  • COMPUTE_ZONE,COMPUTE_ZONE1,[...]: le zone in cui vengono creati i nodi. Puoi specificare tutte le zone necessarie per il tuo cluster. Tutte le zone devono trovarsi nella stessa regione del piano di controllo del cluster, specificata dal flag --zone. Per i cluster di zona, --node-locations deve contenere la zona principale del cluster.

Nei comandi seguenti, puoi facoltativamente utilizzare il flag --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com per specificare un account di servizio IAM diverso che viene utilizzato dai nodi nel primo pool di nodi del cluster al posto dell'account di servizio predefinito di Compute Engine. Questo flag è facoltativo, ma ti consigliamo vivamente di creare e utilizzare un account di servizio con privilegi minimi in modo che i nodi non abbiano i privilegi necessari.

Utilizzare un canale di rilascio specifico:

Per creare un nuovo cluster utilizzando un canale di rilascio specifico, esegui questo comando:

gcloud container clusters create CLUSTER_NAME \
    --release-channel CHANNEL \
    --zone COMPUTE_ZONE \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Con una versione specifica:

Per creare un nuovo cluster utilizzando una versione specifica del cluster, esegui questo comando:

gcloud container clusters create CLUSTER_NAME \
    --cluster-version VERSION \
    --zone COMPUTE_ZONE \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Utilizzo della versione predefinita per i cluster non registrati in un canale di rilascio:

Per creare un nuovo cluster utilizzando la versione predefinita per i cluster non registrati in un canale di rilascio, non è necessario specificare una versione del cluster, ma devi impostare il canale di rilascio su None:

gcloud container clusters create CLUSTER_NAME \
    --release-channel None \
    --zone COMPUTE_ZONE \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Esempio

Il comando seguente crea un cluster multi-zona denominato example-cluster, in cui il piano di controllo del cluster si trova nella zona us-central-a e in tre località dei nodi. Il cluster è registrato nel canale di rilascio regular.

Se il flag --num-nodes viene omesso, il numero predefinito di nodi per zona creati dal cluster è tre. Poiché sono state specificate tre zone, questo comando crea un cluster di nove nodi con tre nodi ciascuno in us-central1-a, us-central1-b e us-central1-c.

gcloud container clusters create example-cluster \
    --zone us-central1-a \
    --node-locations us-central1-a,us-central1-b,us-central1-c

Console

Per creare un cluster di zona con la console Google Cloud, esegui queste 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 Impostazioni di base del cluster, completa quanto segue:

    1. Inserisci il nome per il cluster.
    2. In Tipo di località, seleziona A livello di zona e poi la zona per il tuo cluster.
    3. Se stai creando un cluster multi-zona, seleziona la casella di controllo Specifica le località dei nodi predefinite, quindi scegli altre zone in cui vuoi che vengano eseguiti i pool di nodi.

    4. Scegli un canale di rilascio. Facoltativamente, puoi selezionare Nessun canale dall'elenco a discesa. Tuttavia, prima di scegliere questa opzione, ti consigliamo di verificare quando non registrare il cluster in un canale di rilascio. GKE esegue automaticamente l'upgrade dei cluster non presenti in un canale di rilascio con le versioni del canale stabile.

    5. (Facoltativo) Specifica una versione del piano di controllo dall'elenco a discesa Versione.

  4. 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 relative a Crea e registra un nuovo cluster per completare la registrazione del cluster.

  5. Nel riquadro di navigazione, in Pool di nodi, fai clic su default-pool.

  6. Nella sezione Dettagli del pool di nodi, completa quanto segue:

    1. Inserisci un Nome per il Pool di nodi predefinito.
    2. (Facoltativo) Scegli la versione del nodo.
    3. Inserisci il numero di nodi da creare nel cluster. Devi disporre di una quota di risorse disponibile per i nodi e le relative risorse (come le route firewall).
    4. Facoltativo: puoi scegliere di disabilitare gli upgrade automatici dei nodi, ma ti consigliamo di esaminare le considerazioni prima di disabilitare gli upgrade automatici dei nodi prima di scegliere questa opzione.
  7. Nel riquadro di navigazione, in Pool di nodi, fai clic su Nodi.

  8. Dall'elenco a discesa Tipo di immagine, seleziona l'immagine del nodo.

  9. Scegli l'opzione Configurazione macchina predefinita da utilizzare per le istanze. Ogni tipo di macchina viene fatturato in modo diverso. Il tipo di macchina predefinito è e2-medium. Per informazioni sui prezzi dei tipi di macchina, consulta il listino prezzi del tipo di macchina.

  10. Dall'elenco a discesa Tipo di disco di avvio, seleziona il tipo di disco.

  11. Inserisci le Dimensioni del disco di avvio.

  12. (Facoltativo) Nel riquadro di navigazione, in Pool di nodi, fai clic su Sicurezza.

  13. (Facoltativo) Dall'elenco a discesa Account di servizio, seleziona un account di servizio Identity and Access Management (IAM) per le tue applicazioni da utilizzare per le chiamate alle API Google Cloud. Ti consigliamo di utilizzare un account di servizio con privilegi minimi invece di utilizzare l'account di servizio predefinito, in modo che i nodi non abbiano i privilegi aggiuntivi necessari.

  14. Fai clic su Crea.

Terraform

Per creare un cluster di zona con un pool di nodi a zona singola utilizzando Terraform, fai riferimento all'esempio seguente:

resource "google_container_cluster" "default" {
  name               = "gke-standard-zonal-single-zone"
  location           = "us-central1-a"
  initial_node_count = 1

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

Per creare un cluster di zona con un pool di nodi multizona utilizzando Terraform, fai riferimento all'esempio seguente:

resource "google_container_cluster" "default" {
  name               = "gke-standard-regional-multi-zone"
  location           = "us-central1"
  node_locations     = ["us-central1-b", "us-central1-c"]
  initial_node_count = 2

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

Per saperne di più sull'utilizzo di Terraform, consulta il documento sul supporto di Terraform per GKE.

Interagire con un cluster utilizzando kubectl

Dopo aver creato un cluster, devi configurare kubectl prima di poter interagire con il cluster dalla riga di comando.

Modelli di cluster

Modelli GKE precedentemente supportati per i cluster. Questi modelli sono stati rimossi dalla console Google Cloud, ma sono ancora accessibili tramite i seguenti link:

Passaggi successivi

Provalo

Se non hai mai utilizzato Google Cloud, crea un account per valutare le prestazioni di GKE in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.

Prova GKE gratuitamente