Informazioni sul gestore della scalabilità automatica dei cluster
Questo documento descrive il gestore della scalabilità automatica dei cluster, che controlla automaticamente le dimensioni dei pool di nodi. Il gestore della scalabilità automatica dei cluster viene abilitato quando specifichi i valori minimo e massimo per il numero di nodi in un pool di nodi. Puoi specificare questi valori durante la creazione di un pool di nodi o l'aggiornamento di un pool di nodi.
Scala automaticamente un pool di nodi
Il gestore della scalabilità automatica dei cluster ridimensiona automaticamente il numero di nodi in un determinato pool di nodi, in base alle esigenze dei tuoi carichi di lavoro. Non è necessario aggiungere o rimuovere manualmente i nodi o eseguire l'overprovisioning dei pool di nodi. Devi invece specificare le dimensioni minima e massima per il pool di nodi, il resto è automatico.
Se è necessario eliminare o spostare le risorse durante la scalabilità automatica del cluster, i tuoi carichi di lavoro potrebbero subire interruzioni temporanee. Ad esempio, se il carico di lavoro è costituito da un controller con un'unica replica, il pod della replica potrebbe essere ripianificato su un nodo diverso se il nodo attuale viene eliminato. Per questo motivo, devi progettare i carichi di lavoro in modo da tollerare potenziali interruzioni o garantire che i pod critici non vengano interrotti.
Come funziona il gestore della scalabilità automatica dei cluster
Il gestore della scalabilità automatica dei cluster lavora sulla base del pool di nodi. Quando utilizzi il gestore della scalabilità automatica del cluster per configurare un pool di nodi, specifichi una dimensione minima e una massima per il pool di nodi. Puoi modificare la dimensione minima e quella massima quando crei un pool di nodi o aggiorna un pool di nodi.
Il gestore della scalabilità automatica dei cluster aumenta o diminuisce automaticamente le dimensioni del pool di nodi, in base alle richieste di risorse (anziché all'utilizzo effettivo delle risorse) nel pool di nodi. Il gestore della scalabilità automatica dei cluster aggiunge nodi se gli oggetti pod non sono pianificabili e nel pool di nodi non è disponibile capacità sufficiente per soddisfare le richieste.
Il gestore della scalabilità automatica dei cluster rimuove anche i nodi sottoutilizzati e tutti gli oggetti dei pod possono essere pianificati su un numero inferiore di nodi. Se non è possibile eseguire il download in modo controllato del nodo dopo 10 minuti, questo viene arrestato forzatamente. Questo periodo non è configurabile.
Se un pod richiede un numero insufficiente di risorse (ad esempio, se i valori predefiniti sono insufficienti), il gestore della scalabilità automatica dei cluster non corregge la situazione. Puoi contribuire a garantire che il gestore della scalabilità automatica dei cluster operi nel modo più preciso possibile, creando richieste di risorse adeguate per tutti i tuoi carichi di lavoro. Per saperne di più, consulta Gestione delle risorse per i container.
Criteri operativi
Durante il ridimensionamento di un pool di nodi, il gestore della scalabilità automatica dei cluster formula le seguenti ipotesi:
- Tutti gli oggetti pod replicati possono essere riavviati su un altro nodo, causando probabilmente una breve interruzione. Se il carico di lavoro non tollera interruzioni, configuralo per l'esecuzione su un pool di nodi con la scalabilità automatica disabilitata. Per maggiori informazioni, consulta Controllo della pianificazione con le incompatibilità dei nodi.
- Il gestore della scalabilità automatica dei cluster può eseguire l'override di qualsiasi operazione manuale di gestione dei nodi che esegui.
- Tutti i nodi in un singolo pool di nodi hanno lo stesso set di etichette.
- Il gestore della scalabilità automatica dei cluster seleziona un gruppo di nodi con la CPU inattiva o la memoria inutilizzata dopo lo scale up. Questo comportamento influisce sui pool di nodi di cui viene fatto lo scale up se hai dimensioni di nodi diverse (ad esempio, nodi di CPU elevata o nodi ad alta memoria) nello stesso cluster.
Dimensione minima e massima del pool di nodi
Puoi specificare la dimensione minima e massima per ciascun pool di nodi nel cluster
con i flag min-nodes
e max-nodes
. Per disabilitare la scalabilità automatica, imposta
min-nodes
e max-nodes
sullo stesso numero. Il gestore della scalabilità automatica dei cluster prende
decisioni di scalabilità entro i limiti di dimensioni.
Quando imposti la dimensione massima dei pool di nodi, assicurati che siano abbastanza grandi per eseguire tutti i carichi di lavoro. Se i pool di nodi nel cluster non hanno memoria e CPU sufficienti per eseguire tutti i carichi di lavoro, potrebbero verificarsi interruzioni.
Usa PodDisruptionBudget
per proteggere i carichi di lavoro
Puoi configurare GKE su Azure per proteggerti dall'interruzione dei carichi di lavoro con un PodDisruptionBudget
. Quando crei un oggetto PodDisruptionBudget
, specifichi il numero minimo di repliche dei pod che devono essere disponibili o il numero massimo di repliche dei pod che possono non essere disponibili in un determinato momento. Per scoprire di più, consulta la sezione Specificare un budget di interruzione per la tua applicazione.