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 una singola 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 dei cluster.

Confronto tra 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 sarà disponibile in caso di interruzione a livello di zona.

I nodi di un cluster multi-zona vengono eseguiti in più zone, ma ha 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 maggiore disponibilità 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 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 quindi initialize gcloud CLI. Se hai già installato gcloud CLI, ottieni la versione più recente eseguendo gcloud components update.
  • I cluster multi-zona utilizzano più risorse rispetto ai cluster a zona singola. Se crei un cluster multi-zona, assicurati di avere quotas adeguate.
  • Assicurati di disporre delle autorizzazioni corrette per creare i cluster. Come minimo, dovresti essere un amministratore di cluster Kubernetes Engine.
  • Se vuoi registrare il nuovo cluster in un parco risorse (solo accesso limitato), assicurati di disporre delle API e delle autorizzazioni necessarie.

Creazione di un cluster di zona

Puoi creare un cluster a livello 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 seguenti comandi.

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, specificato dal flag --zone. Per i cluster di zona, --node-locations deve contenere la zona principale del cluster.

Quando crei un cluster, facoltativamente, puoi utilizzare il flag --service-account per specificare un account di servizio IAM diverso che i nodi nel primo pool di nodi del cluster utilizzano al posto dell'account di servizio predefinito di Compute Engine. Ti consigliamo di creare e utilizzare un account di servizio con privilegi minimi.

Usare 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

Utilizzo di 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 devi 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 sono presenti 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 a 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 del cluster.
    2. Per Tipo di località, seleziona A livello di zona, quindi seleziona la zona per il cluster.
    3. Se stai creando un cluster multi-zona, seleziona la casella di controllo Specifica le località dei nodi predefinite, quindi scegli le zone aggiuntive in cui eseguire i pool di nodi.

    4. Scegli un canale di rilascio. Facoltativamente, puoi selezionare Nessun canale dall'elenco a discesa, ma ti consigliamo di esaminare quando non registrare il cluster in un canale di rilascio prima di scegliere questa opzione. GKE esegue automaticamente l'upgrade dei cluster che non si trovano in un canale di rilascio con versioni provenienti dal 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 per creare e registrare 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 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 la 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 tipo di macchina, consulta il listino prezzi dei tipi di macchine.

  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) Dal 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) da utilizzare per le applicazioni quando chiami le API Google Cloud. Ti consigliamo di utilizzare un account di servizio con privilegi minimi anziché utilizzare l'account di servizio predefinito.

  14. Fai clic su Crea.

Terraform

Per creare un cluster di zona con un pool di nodi a zona singola utilizzando Terraform, consulta l'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, consulta l'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 scoprire di più sull'utilizzo di Terraform, consulta Supporto 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 supportati in precedenza per i cluster. Questi modelli sono stati rimossi dalla console Google Cloud, ma sono ancora accessibili dai 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