Questa pagina spiega come ridimensionare manualmente i cluster Google Kubernetes Engine (GKE) Standard. Puoi ridimensionare un cluster per aumentare o diminuire il numero di nodi nel cluster. In alternativa, puoi scalare automaticamente il cluster, in modo che GKE ridimensioni automaticamente i node pool in risposta alle mutevoli condizioni, ad esempio le modifiche ai carichi di lavoro e all'utilizzo delle risorse.
Queste istruzioni non si applicano ai cluster GKE Autopilot, che vengono ridimensionati automaticamente in base al numero di pod nel cluster.
Quando aggiungi o rimuovi nodi nel cluster, GKE aggiunge o rimuove
le istanze di macchine virtuali (VM) associate dai
gruppi di istanze gestite (MIG) di Compute Engine sottostanti di cui è stato eseguito il provisioning per
i tuoi pool di nodi. Per rimuovere i nodi, non utilizzare kubectl delete node
, in quanto
non elimina l'istanza VM Compute Engine nel gruppo di istanze gestite sottostante del pool di nodi. Utilizza il gestore della scalabilità automatica del cluster o riduci manualmente le dimensioni del cluster.
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
.
Aumentare le dimensioni del cluster
Quando aumenti le dimensioni di un cluster, si verificano le seguenti modifiche:
- Le nuove istanze dei nodi vengono create utilizzando la stessa configurazione delle istanze esistenti.
- I nuovi pod possono essere pianificati sulle nuove istanze.
I pod esistenti non vengono spostati nelle nuove istanze.
gcloud
Per aumentare le dimensioni dei pool di nodi di un cluster, esegui il comando gcloud container clusters resize
:
gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \ --num-nodes NUM_NODES
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del cluster da ridimensionare.POOL_NAME
: il nome del pool di nodi da ridimensionare.NUM_NODES
: il numero di nodi nel pool in un cluster zonale. Se utilizzi cluster multizona o regionali,NUM_NODES
è il numero di nodi per ogni zona in cui si trova il pool di nodi.
Ripeti questo comando per ogni pool di nodi. Se il cluster ha un solo pool di nodi, ometti il flag --node-pool
.
Console
Per aumentare le dimensioni dei pool di nodi di un cluster:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud .
Accanto al cluster che vuoi modificare, fai clic su more_vert Azioni, poi su Modifica.
Fai clic sulla scheda Nodi accanto alla scheda Dettagli.
Nella sezione Pool di nodi, fai clic sul nome del pool di nodi che vuoi aumentare di dimensioni.
Fai clic su edit Ridimensiona.
Nel campo Numero di nodi, inserisci il numero di nodi che vuoi nel pool di nodi, quindi fai clic su Ridimensiona.
Ripeti l'operazione per ogni pool di nodi in base alle tue esigenze.
Ridurre le dimensioni del cluster
Quando riduci le dimensioni di un cluster, si verificano le seguenti modifiche:
- GKE termina normalmente i nodi che vengono eliminati utilizzando
il processo di svuotamento
per rimuovere i pod dall'istanza.
PodDisruptionBudget
eterminationGracePeriodSeconds
vengono rispettati entrambi per un massimo di un'ora. - I pod gestiti da un controller di replica vengono ripianificati dal controller per essere eseguiti sulle istanze rimanenti.
- I pod non gestiti da un controller di replica non vengono riavviati.
Il gruppo di istanze gestite non distingue tra istanze che eseguono pod e istanze senza pod. La riduzione delle dimensioni rimuove le istanze in modo casuale.
Per scoprire come aggiungere pool di nodi e gestire quelli esistenti, consulta Aggiunta e gestione di node pool.
gcloud
Per ridurre le dimensioni dei node pool di un cluster, esegui il comando gcloud container clusters resize
:
gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \ --num-nodes NUM_NODES
Sostituisci quanto segue:
CLUSTER_NAME
: il nome del cluster da ridimensionare.POOL_NAME
: il nome del pool di nodi da ridimensionare.NUM_NODES
: il numero di nodi nel pool in un cluster zonale. Se utilizzi cluster multizona o regionali,NUM_NODES
è il numero di nodi per ogni zona in cui si trova il pool di nodi.
Ripeti questo comando per ogni pool di nodi. Se il cluster ha un solo pool di nodi, ometti il flag --node-pool
.
Console
Per ridurre le dimensioni dei pool di nodi di un cluster:
Vai alla pagina Google Kubernetes Engine nella console Google Cloud .
Accanto al cluster che vuoi modificare, fai clic su more_vert Azioni, poi su Modifica.
Fai clic sulla scheda Nodi accanto alla scheda Dettagli.
Nella sezione Pool di nodi, fai clic sul nome del pool di nodi che vuoi ridurre.
Fai clic su edit Ridimensiona.
Nel campo Numero di nodi, inserisci il numero di nodi che vuoi nel pool di nodi, quindi fai clic su Ridimensiona.
Ripeti l'operazione per ogni pool di nodi in base alle tue esigenze.
Scalabilità automatica di un cluster
La funzionalità di scalabilità automatica dei cluster di GKE ridimensiona automaticamente i tuoi pool di nodi in risposta alle mutevoli condizioni, ad esempio le variazioni dei tuoi carichi di lavoro e dell'utilizzo delle risorse.
Per scoprire di più sul funzionamento della scalabilità automatica, consulta la documentazione del gestore della scalabilità automatica dei cluster. Per configurare la scalabilità automatica per il cluster, consulta Scalabilità automatica di un cluster.