Questa pagina spiega come ridimensionare manualmente i cluster standard di Google Kubernetes Engine (GKE). Puoi ridimensionare un cluster per aumentare o diminuire il numero di nodi in quel cluster. In alternativa, puoi utilizzare la scalabilità automatica del cluster, in cui GKE ridimensiona automaticamente i pool di nodi in risposta alle condizioni che cambiano, 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 pool di nodi. Per rimuovere i nodi, non utilizzare kubectl delete node, perché non elimina l'istanza VM di Compute Engine nel MIG sottostante del pool di nodi. Utilizza il gestore della scalabilità automatica dei cluster o riduci manualmente le dimensioni del tuo
cluster.
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à,
installala e poi
inizializza gcloud CLI. Se hai già installato gcloud CLI, scarica l'ultima
versione eseguendo il
gcloud components updatecomando. Le versioni precedenti di gcloud CLI potrebbero non supportare l'esecuzione dei comandi in questo documento.
Aumentare le dimensioni del cluster
Quando aumenti le dimensioni di un cluster, si verificano le seguenti modifiche:
- Le nuove istanze di nodi vengono create utilizzando la stessa configurazione delle istanze esistenti.
- I nuovi pod potrebbero 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 gcloud container clusters resize comando:
gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
--num-nodes NUM_NODESSostituisci 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 a livello di regione,NUM_NODESè il numero di nodi per ogni zona in cui si trovano i 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 Google Cloud console.
Accanto al cluster che vuoi modificare, fai clic su more_vert Azioni e 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 di cui vuoi aumentare le dimensioni.
Fai clic su edit Ridimensiona.
Nel campo Numero di nodi , inserisci il numero di nodi che vuoi nel pool di nodi e poi fai clic su Ridimensiona.
Ripeti l'operazione per ogni pool di nodi, se necessario.
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.
PodDisruptionBudgeteterminationGracePeriodSecondsvengono rispettati 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 MIG non distingue tra le istanze che eseguono i pod e le istanze senza pod. Il ridimensionamento verso il basso rimuove le istanze in modo casuale.
Per scoprire come aggiungere pool di nodi e gestire quelli esistenti, consulta Aggiungere e gestire pool di nodi.
gcloud
Per ridurre le dimensioni dei pool di nodi di un cluster, esegui il gcloud container clusters resize comando:
gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
--num-nodes NUM_NODESSostituisci 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 a livello di regione,NUM_NODESè il numero di nodi per ogni zona in cui si trovano i 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 Google Cloud console.
Accanto al cluster che vuoi modificare, fai clic su more_vert Azioni e 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 di cui vuoi ridurre le dimensioni.
Fai clic su edit Ridimensiona.
Nel campo Numero di nodi , inserisci il numero di nodi che vuoi nel pool di nodi e poi fai clic su Ridimensiona.
Ripeti l'operazione per ogni pool di nodi, se necessario.
Scalabilità automatica di un cluster
La funzionalità di scalabilità automatica dei cluster GKE ridimensiona automaticamente i pool di nodi in risposta alle condizioni che cambiano, ad esempio le modifiche ai carichi di lavoro e all'utilizzo delle risorse.
Per saperne 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.