Aggiorna le etichette e le incompatibilità dei nodi Kubernetes per i node pool

Questo documento fornisce istruzioni su come aggiornare le etichette dei nodi Kubernetes e i taint dei nodi di un pool di nodi esistente in un cluster Google Kubernetes Engine (GKE) Standard utilizzando l'API GKE. Le etichette dei nodi Kubernetes sono diverse dalle etichette dei cluster e dei nodi GKE.

Le incompatibilità e le etichette dei nodi si trovano nei metadati degli oggetti dei nodi Kubernetes. Le etichette Kubernetes vengono utilizzate per pianificare i pod su nodi specifici. Al contrario, le incompatibilità possono essere utilizzate per allontanare i pod da nodi particolari. Per maggiori informazioni, consulta Configurare la separazione dei workload in GKE.

Utilizzando l'API GKE, puoi applicare aggiornamenti alle etichette dei nodi Kubernetes e ai taint dei nodi di un pool di nodi GKE esistente senza ricreare il pool di nodi e interrompere i carichi di lavoro in esecuzione. La configurazione aggiornata del node pool viene conservata in GKE, in modo che i futuri upgrade pool di nodi e i nuovi nodi di cui viene eseguito il provisioning nel pool di nodi utilizzino la nuova configurazione.

Per saperne di più su come le modifiche influiscono sul funzionamento di un cluster GKE, consulta Gestire le modifiche del ciclo di vita del cluster per ridurre al minimo le interruzioni. Per informazioni dettagliate sulle modifiche specifiche, consulta la sezione Tipi di modifiche a un cluster GKE.

Sintassi delle etichette

Le etichette Kubernetes devono soddisfare tutti i seguenti requisiti:

  • Le chiavi e i valori delle etichette devono soddisfare i requisiti di sintassi e set di caratteri.
  • La lunghezza del valore specificato nel flag --node-labels della gcloud CLI deve essere inferiore o uguale a 1024 caratteri.

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à, installala e poi inizializza gcloud CLI. Se hai già installato gcloud CLI, scarica l'ultima versione eseguendo il comando gcloud components update. Le versioni precedenti di gcloud CLI potrebbero non supportare l'esecuzione dei comandi in questo documento.

Aggiornamento delle etichette dei nodi

Per aggiornare le etichette dei nodi per un pool di nodi, utilizza il seguente comando:

gcloud container node-pools update NODEPOOL_NAME \
    --node-labels=[NODE_LABEL,...] \
    --cluster=CLUSTER_NAME
    --location=CONTROL_PLANE_LOCATION
    [GCLOUD_WIDE_FLAG ]

Sostituisci quanto segue:

  • NODEPOOL_NAME: il nome del pool di nodi da aggiornare.
  • [NODE_LABEL,...]: le nuove etichette dei nodi (ad esempio, label1=value1,label2=value2).
  • CLUSTER_NAME: il nome del cluster.
  • CONTROL_PLANE_LOCATION: la posizione di Compute Engine del control plane del tuo cluster. Fornisci una regione per i cluster regionali o una zona per i cluster zonali.

Aggiornamento delle incompatibilità dei nodi

Per aggiornare i taint dei nodi per un pool di nodi, utilizza il seguente comando:

gcloud container node-pools update NODEPOOL_NAME \
    --node-taints=[NODE_TAINT,...] \
    --cluster=CLUSTER_NAME
    --location=CONTROL_PLANE_LOCATION
    [GCLOUD_WIDE_FLAG ]

Sostituisci quanto segue:

  • NODEPOOL_NAME: il nome del pool di nodi da aggiornare.
  • [NODE_TAINT,...]: i nuovi taint del nodo (ad esempio key1=val1:NoSchedule,key2=val2:PreferNoSchedule)
  • CLUSTER_NAME: il nome del cluster.
  • CONTROL_PLANE_LOCATION: la posizione di Compute Engine del control plane del tuo cluster. Fornisci una regione per i cluster regionali o una zona per i cluster zonali.