Crea cluster e pool di nodi con nodi ARM


Questa pagina spiega come creare un cluster GKE Standard o un pool di nodi con nodi Arm, in modo da poter eseguire carichi di lavoro ARM su Google Kubernetes Engine (GKE). Per scoprire come eseguire il deployment dei carichi di lavoro ARM sui cluster Autopilot, consulta Eseguire il deployment dei carichi di lavoro Autopilot sull'architettura ARM.

La serie di macchine Tau T2A è la prima serie di macchine basata su Arm disponibile con Google Cloud. Per saperne di più sui vantaggi di ARM e scegliere la serie di macchine migliore per i tuoi carichi di lavoro, consulta Arm VM on Compute.

Con GKE, puoi creare un cluster con pool di nodi con un tipo di architettura (ad esempio Arm) o più tipi di architettura (ad esempio Arm e x86). Quando esegui nodi con più tipi di architettura, puoi eseguire il deployment di carichi di lavoro su architetture nello stesso cluster.

Per saperne di più sull'utilizzo dei nodi Arm con i tuoi cluster GKE, consulta Carichi di lavoro Arm su GKE.

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.

Crea un cluster con un pool di nodi ARM

Le istruzioni seguenti spiegano come creare un nuovo cluster con un pool di nodi che esegue nodi Arm della serie di macchine Tau T2A.

Puoi utilizzare gcloud CLI, la console Google Cloud o Terraform per creare il cluster.

gcloud

Crea un nuovo cluster di zona con il pool di nodi predefinito utilizzando i nodi ARM:

gcloud container clusters create CLUSTER_NAME \
    --zone ZONE  \
    --node-locations NODE_LOCATIONS \
    --machine-type T2A_MACHINE_TYPE \
    --num-nodes NUM_NODES

Sostituisci quanto segue:

  • CLUSTER_NAME: il nome del nuovo cluster con un pool di nodi Arm.
  • ZONE: la zona per il tuo cluster, ad esempio us-central1-a. La zona deve essere una delle zone disponibili per la serie di macchine Tau T2A. Per creare un cluster a livello di regione, utilizza il flag --region=REGION. La regione deve essere una delle regioni disponibili per la serie di macchine Tau T2A.
  • NODE_LOCATIONS: le zone del pool di nodi, ad esempio us-central1-a. Devi scegliere tra le zone disponibili per la serie di macchine Tau T2A, altrimenti la creazione del pool di nodi potrebbe non riuscire.
  • T2A_MACHINE_TYPE: una delle forme di macchina T2A disponibili, ad esempio t2a-standard-16.
  • NUM_NODES: il numero di nodi per il pool di nodi Arm.

Se vuoi configurare impostazioni aggiuntive per il cluster, consulta il riferimento gcloud container clusters create per un elenco completo delle impostazioni disponibili per la creazione del cluster.

Console

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

    Vai a Google Kubernetes Engine

  2. Fai clic su Crea.

  3. Configura il cluster come preferisci. Per ulteriori informazioni, consulta le istruzioni per creare un cluster di zona o creare un cluster a livello di regione.

  4. Scegli una località in cui sono disponibili i nodi Arm.

    1. Nella sezione Impostazioni di base del cluster, in Tipo di località, scegli a livello di zona o a livello di regione:
    2. Nel menu a discesa, scegli una zona o una regione in cui sono disponibili i nodi ARM.
    3. Seleziona la casella Specifica le località dei nodi predefinite. Seleziona le zone in cui sono disponibili i nodi Arm.
  5. Per selezionare un tipo di macchina ARM, nella sottosezione Nodi, in Configura le impostazioni del nodo > Configurazione macchina > Famiglia di macchine, seleziona GENERALE-SCOPO. Nel menu a discesa Serie, seleziona T2A. Nel menu a discesa Tipo di macchina, scegli tra le opzioni disponibili.

  6. Fai clic su Crea.

Terraform

Per creare un cluster di zona con il pool di nodi predefinito utilizzando i nodi Arm utilizzando Terraform, fai riferimento all'esempio seguente:

resource "google_container_cluster" "default" {
  name               = "gke-standard-zonal-arm-cluster"
  location           = "us-central1-a"
  node_locations     = ["us-central1-b", "us-central1-f"]
  initial_node_count = 2

  node_config {
    machine_type    = "t2a-standard-1"
    service_account = google_service_account.default.email
  }

  # 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.

Aggiungi un pool di nodi Arm a un cluster GKE

Puoi aggiungere un nuovo pool di nodi a un cluster GKE Standard utilizzando gcloud CLI, la console Google Cloud o Terraform.

Come best practice per la creazione di un cluster GKE utilizzando qualsiasi tipo di nodi, ti consigliamo di creare e utilizzare un account di servizio Identity and Access Management (IAM) con privilegi minimi per i pool di nodi al posto dell'account di servizio predefinito di Compute Engine. Per istruzioni sulla creazione di un account di servizio con privilegi minimi, consulta Protezione della sicurezza del cluster.

gcloud

Aggiungi un pool di nodi Arm a un cluster esistente:

gcloud container node-pools create NODE_POOL_NAME \
    --cluster CLUSTER_NAME \
    --zone ZONE \
    --node-locations NODE_LOCATIONS \
    --machine-type T2A_MACHINE_TYPE \
    --num-nodes NUM_NODES \
    --service-account SERVICE_ACCOUNT

Sostituisci quanto segue:

  • NODE_POOL_NAME: il nome del nuovo pool di nodi ARM per il cluster esistente.
  • ZONE: la zona del cluster esistente. Per un cluster a livello di regione, utilizza il flag --region=REGION con la regione del cluster.
  • CLUSTER_NAME: il nome del cluster a cui vuoi aggiungere un pool di nodi Arm.
  • NODE_LOCATIONS: le zone del pool di nodi, ad esempio us-central1-a. Devi scegliere tra le zone disponibili per la serie di macchine Tau T2A, altrimenti la creazione del pool di nodi potrebbe non riuscire.
  • T2A_MACHINE_TYPE: una delle forme di macchina T2A disponibili, ad esempio t2a-standard-16.
  • NUM_NODES: il numero di nodi per il pool di nodi Arm.
  • SERVICE_ACCOUNT: il nome dell'account di servizio IAM che i nodi devono utilizzare. Se omesso, il pool di nodi utilizza l'account di servizio predefinito di Compute Engine.

Se vuoi configurare impostazioni aggiuntive per il pool di nodi, consulta il riferimento gcloud container node-pools create per un elenco completo delle impostazioni disponibili per la creazione del pool di nodi.

Console

Per aggiungere un pool di nodi Arm a un cluster esistente, segui questi passaggi:

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

    Vai a Google Kubernetes Engine

  2. Nell'elenco dei cluster, fai clic sul nome del cluster da modificare.

  3. Fai clic su Aggiungi pool di nodi.

  4. Configura il pool di nodi.

  5. Scegli le località dei nodi in cui sono disponibili i nodi Arm.

    1. Nella sezione Dettagli del pool di nodi, seleziona la casella Specifica le località dei nodi.
    2. Seleziona le zone in cui sono disponibili i nodi Arm.
  6. Per selezionare un tipo di macchina ARM, nella sottosezione Nodi, in Configura le impostazioni del nodo > Configurazione macchina > Famiglia di macchine, seleziona SCOPO GENERALE. Nel menu a discesa Serie, seleziona T2A. Nel menu a discesa Tipo di macchina, scegli tra le opzioni disponibili.

  7. Nel menu di navigazione, fai clic su Sicurezza.

  8. Nel menu a discesa Account di servizio, seleziona l'account di servizio IAM che verrà utilizzato dal pool di nodi. Per impostazione predefinita, il pool di nodi utilizza l'account di servizio predefinito di Compute Engine.

  9. Fai clic su Crea per aggiungere il pool di nodi.

Terraform

Per aggiungere un pool di nodi che utilizza nodi ARM a un cluster esistente utilizzando Terraform, fai riferimento all'esempio seguente:

resource "google_container_node_pool" "default" {
  name           = "gke-standard-zonal-arm-node-pool"
  cluster        = google_container_cluster.default.id
  node_locations = ["us-central1-a"]
  node_count     = 1

  node_config {
    machine_type = "t2a-standard-1"

    service_account = google_service_account.default.email
  }
}

Sostituisci google_container_cluster.default.id con il nome del cluster.

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

Passaggi successivi