In qualità di amministratore della piattaforma, puoi configurare una strategia di upgrade dei nodi per ottimizzare il modo in cui GKE esegue l'upgrade dei nodi nei tuoi cluster Google Kubernetes Engine (GKE). Per scoprire di più sulle strategie di upgrade dei nodi, consulta Strategie di upgrade dei nodi.
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
inizializzala. Se hai già installato gcloud CLI, scarica l'ultima versione eseguendo
gcloud components update
.
Configura una strategia di upgrade dei nodi
Quando configuri i node pool del cluster, puoi selezionare e configurare una delle strategie di upgrade dei nodi supportate, ovvero surge o blue-green. L'utilizzo di queste strategie di upgrade consente di ottimizzare il processo di upgrade del pool di nodi in base alle esigenze dell'ambiente del cluster.
Configurare gli upgrade di sovraccarico
Gli upgrade inattivi ti consentono di modificare il numero di nodi di cui GKE esegue l'upgrade contemporaneamente e la quantità di interruzioni che un upgrade causa ai tuoi carichi di lavoro.
I flag
max-surge-upgrade
e max-unavailable-upgrade
sono definiti per
ogni pool di nodi. Per saperne di più sulla scelta dei parametri giusti, consulta
Ottimizzare la configurazione dell'upgrade con sovrapprezzo.
Puoi modificare queste impostazioni quando crei o aggiorni un cluster o pool di nodi.
Nei comandi menzionati di seguito vengono utilizzate le seguenti variabili:
CLUSTER_NAME
: il nome del cluster per il pool di nodi.COMPUTE_ZONE
: la zona del cluster.NODE_POOL_NAME
: il nome del pool di nodi.NUMBER_NODES
: il numero di nodi nel pool di nodi in ciascuna delle zone del cluster.SURGE_NODES
: il numero di nodi aggiuntivi (picco) da creare a ogni upgrade del pool di nodi.UNAVAILABLE_NODES
: il numero di nodi che possono non essere disponibili contemporaneamente a ogni upgrade del pool di nodi.
Creazione di un cluster con parametri di picco specifici
Per creare un cluster con impostazioni specifiche per gli upgrade di picco, utilizza i flag max-surge-upgrade
e max-unavailable-upgrade
.
gcloud container clusters create CLUSTER_NAME \ --max-surge-upgrade=SURGE_NODES --max-unavailable-upgrade=UNAVAILABLE_NODES
Creazione di un cluster con l'upgrade controllato disabilitato
Per creare un cluster senza upgrade di picco, imposta il valore del flag max-surge-upgrade
su 0
.
gcloud container clusters create CLUSTER_NAME \ --max-surge-upgrade=0 --max-unavailable-upgrade=1
Creazione di un pool di nodi con parametri di picco specifici
Per creare un pool di nodi in un cluster esistente con impostazioni specifiche per
gli upgrade controllati, utilizza i flag max-surge-upgrade
e
max-unavailable-upgrade
.
gcloud container node-pools create NODE_POOL_NAME \ --num-nodes=NUMBER_NODES --cluster=CLUSTER_NAME \ --max-surge-upgrade=SURGE_NODES --max-unavailable-upgrade=UNAVAILABLE_NODES
Modifica le impostazioni di upgrade di sovraccarico per un pool di nodi esistente
Per aggiornare le impostazioni di upgrade di un pool di nodi esistente, utilizza i flag max-surge-upgrade
e
max-unavailable-upgrade
. Se imposti max-surge-upgrade
su un valore maggiore di
0
, GKE crea nodi di picco. Se imposti max-surge-upgrade
su 0
, GKE non crea nodi di picco.
gcloud container node-pools update NODE_POOL_NAME \ --cluster=CLUSTER_NAME \ --max-surge-upgrade=SURGE_NODES --max-unavailable-upgrade=UNAVAILABLE_NODES
Verifica se gli upgrade controllati sono abilitati in un pool di nodi
Per verificare se gli upgrade inattivi sono abilitati in un pool di nodi, utilizza gcloud
per descrivere
i parametri del cluster:
gcloud container node-pools describe NODE_POOL_NAME \ --cluster=CLUSTER_NAME
Se gli upgrade inattivi sono abilitati nel pool di nodi, la strategia elencata è SURGE
.
Configura gli upgrade blu/verde
Con gli upgrade del pool di nodi blu/verde, puoi controllare:
BATCH_NODE_COUNT
oBATCH_PERCENT
: le dimensioni dei batch di nodi che GKE svuota alla volta, il che significa che i pod vengono rimossi dai nodi. Il valore predefinito èBATCH_NODE_COUNT=1
. Se una di queste impostazioni è impostata su 0, GKE ignora questa fase e passa alla fase Pool di nodi di test di lunga durata.BATCH_SOAK_DURATION
: il tempo che intercorre tra ogni batch di nodi in fase di svuotamento.NODE_POOL_SOAK_DURATION
: il tempo di soak per convalidare il carico di lavoro nella nuova configurazione del nodo.
Per scoprire di più su come funzionano le fasi degli upgrade blu/verde, consulta Le fasi degli upgrade blu/verde.
Le seguenti variabili vengono utilizzate nei comandi elencati nelle sezioni successive:
CLUSTER_NAME
: il nome del cluster per il node pool.NODE_POOL_NAME
: il nome del pool di nodi.NUMBER_NODES
: il numero di nodi nel pool di nodi in ciascuna delle zone del cluster.BATCH_NODE_COUNT
: il numero di nodi blu da svuotare in un batch durante la fase di svuotamento del pool blu. Il valore predefinito è 1. Se il valore è impostato su 0, la fase di svuotamento del pool blu verrà ignorata.BATCH_PERCENT
: la percentuale di nodi blu da svuotare in un batch durante la fase di svuotamento del pool blu, espressa come numero decimale compreso tra 0 e 1, inclusi. GKE arrotonda per difetto al nodo più vicino, fino a un valore minimo di 1 nodo, se la percentuale non è un numero intero di nodi. Se il valore è impostato su 0, la fase di svuotamento del pool blu verrà ignorata.BATCH_SOAK_DURATION
: la durata in secondi da attendere dopo lo svuotamento di ogni batch. Il valore predefinito è 0.NODE_POOL_SOAK_DURATION
: la durata in secondi da attendere dopo aver completato lo svuotamento di tutti i batch. Il valore predefinito è 3600 secondi.
Creazione di un pool di nodi con la strategia di upgrade blu/verde
Crea un pool di nodi con i parametri predefiniti per l'upgrade blu/verde
Per creare un pool di nodi in un cluster esistente con la strategia di upgrade blue-green con i parametri predefiniti, utilizza il seguente comando:
gcloud container node-pools create NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-blue-green-upgrade
Crea un pool di nodi con upgrade blu/verde utilizzando dimensioni batch di conteggio nodi assoluto
Per creare un pool di nodi con impostazioni di upgrade blu/verde personalizzate, utilizza i flag dei parametri con il comando di creazione del pool di nodi.
Questo comando crea un pool di nodi con la seguente configurazione blue-green personalizzata, utilizzando un conteggio assoluto dei nodi per gli svuotamenti batch:
BATCH_NODE_COUNT
= 2BATCH_SOAK_DURATION
= 10sNODE_POOL_SOAK_DURATION
= 600s
gcloud container node-pools create NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-blue-green-upgrade \
--standard-rollout-policy=batch-node-count=2,batch-soak-duration=10s \
--node-pool-soak-duration=600s
Crea un pool di nodi con upgrade blu/verde utilizzando dimensioni batch basate sulla percentuale
Questo comando crea un pool di nodi con la seguente configurazione blue-green personalizzata, utilizzando una percentuale per gli svuotamenti batch:
BATCH_PERCENTAGE
= 25% (delle dimensioni del pool di nodi)BATCH_SOAK_DURATION
= 10sNODE_POOL_SOAK_DURATION
= 1800
gcloud container node-pools create NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-blue-green-upgrade \
--standard-rollout-policy=batch-percent=0.25,batch-soak-duration=10s \
--node-pool-soak-duration=1800s
Aggiornamento di una strategia di upgrade blu/verde di un pool di nodi esistente
Aggiorna un pool di nodi con i parametri predefiniti di upgrade blu/verde
Per aggiornare un pool di nodi esistente alla strategia di upgrade blu/verde, utilizza il seguente comando:
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-blue-green-upgrade
Aggiorna un pool di nodi con l'upgrade blu/verde utilizzando dimensioni batch di conteggio nodi assoluto
Per aggiornare un pool di nodi esistente alla strategia di upgrade blu/verde con impostazioni personalizzate, utilizza i flag dei parametri con il comando di creazione del pool di nodi.
Questo comando aggiorna un pool di nodi in modo che utilizzi la seguente configurazione blue-green personalizzata, utilizzando un conteggio assoluto dei nodi per gli svuotamenti batch:
BATCH_NODE_COUNT
= 2BATCH_SOAK_DURATION
= 10sNODE_POOL_SOAK_DURATION
= 600s
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-blue-green-upgrade \
--standard-rollout-policy=batch-node-count=2,batch-soak-duration=10s \
--node-pool-soak-duration=600s
Aggiorna un pool di nodi con l'upgrade blu/verde utilizzando dimensioni batch basate sulla percentuale
Questo comando crea un pool di nodi con la seguente configurazione blue-green personalizzata, utilizzando una percentuale per gli svuotamenti batch:
BATCH_PERCENTAGE
= 25% (delle dimensioni del pool di nodi)BATCH_SOAK_DURATION
= 10sNODE_POOL_SOAK_DURATION
= 1800
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-blue-green-upgrade \
--standard-rollout-policy=batch-percent=0.25,batch-soak-duration=10s \
--node-pool-soak-duration=1800s
Tornare agli upgrade di sovraccarico
Puoi modificare il comportamento degli upgrade blu/verde con le impostazioni e controllare la procedura di upgrade con i comandi.
Tuttavia, se vuoi utilizzare gli upgrade improvvisi, esegui il seguente comando per tornare a questo tipo di upgrade:
gcloud container node-pools update NODE_POOL_NAME \
--cluster=CLUSTER_NAME \
--enable-surge-upgrade
Esamina le impostazioni di upgrade di un pool di nodi
Per esaminare le impostazioni di upgrade attuali di un pool di nodi, puoi utilizzare il seguente comando per descrivere il pool di nodi:
gcloud container node-pools describe NODE_POOL_NAME \
--cluster=CLUSTER_NAME
Il seguente snippet è un output di esempio del comando. Il campo strategy
indica la strategia di upgrade in uso: SURGE indica che la strategia di upgrade
surge è attivata, mentre BLUE_GREEN indica che la strategia di upgrade
blu/verde è attivata.
upgradeSettings:
blueGreenSettings:
nodePoolSoakDuration: 1800s
standardRolloutPolicy:
batchNodeCount: 1
batchSoakDuration: 10s
strategy: BLUE_GREEN
Questo comando mostra anche la fase attuale di un upgrade blue-green in corso. Scopri di più su come controllare le impostazioni di upgrade di un node pool.
Passaggi successivi
- Scopri di più sulle strategie di upgrade dei nodi.
- Scopri come eseguire l'upgrade manuale dei node pool.