Ridimensionamento automatico dei nodi

Nei cluster Anthos su VMware (GKE On-Prem), puoi abilitare il ridimensionamento automatico dei nodi per un cluster. Il ridimensionamento significa che le risorse di CPU e memoria assegnate a un nodo vengono regolate.

Se il ridimensionamento automatico dei nodi è abilitato per un cluster di amministrazione, i nodi aggiuntivi nel cluster di amministrazione vengono ridimensionati in base al numero totale di nodi nel cluster di amministrazione. Per ogni cluster utente sono presenti uno o più nodi del piano di controllo nel cluster di amministrazione. Quindi, man mano che crei altri cluster utente, il numero totale di nodi nel cluster di amministrazione aumenta e i nodi aggiuntivi nel cluster di amministrazione vengono automaticamente aumentati di dimensioni.

Se il ridimensionamento automatico dei nodi è abilitato per un cluster utente, i nodi del piano di controllo per il cluster utente vengono ridimensionati in base al numero di nodi nel cluster utente. Quindi, man mano che aggiungi nodi worker al cluster utente, i nodi del piano di controllo vengono aumentati. Ricorda che i nodi del piano di controllo per il cluster utente si trovano nel cluster di amministrazione.

Un cluster utente ad alta disponibilità (HA), il cluster utente ha tre nodi del piano di controllo nel cluster di amministrazione e un cluster utente non ad alta disponibilità ha un nodo del piano di controllo nel cluster di amministrazione. Il ridimensionamento di un nodo richiede la nuova creazione del nodo. Quindi, quando il nodo del piano di controllo per un cluster utente non ad alta disponibilità viene ridimensionato, il tempo di inattività potrebbe essere ridotto.

Prima di iniziare

Questa anteprima del ridimensionamento automatico dei nodi richiede che Dataplane V2 sia disabilitato.

Abilita il ridimensionamento dei nodi per i nodi aggiuntivi di un cluster di amministrazione

Nel tuo file di configurazione del cluster di amministrazione, imposta addonNode.autoResize.enabled su true:

addonNode:
  autoResize:
    enabled: true

Per un nuovo cluster di amministrazione, completa le istruzioni su Creazione di un cluster di amministrazione (guida rapida) o Creazione di un cluster di amministrazione.

Per un cluster di amministrazione esistente:

gkectl update admin --config ADMIN_CLUSTER_CONFIG --kubeconfig ADMIN_CLUSTER_KUBECONFIG

Sostituisci quanto segue:

  • ADMIN_CLUSTER_CONFIG: percorso del file di configurazione del cluster di amministrazione

  • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione

Abilita il ridimensionamento dei nodi per il nodo del piano di controllo di un cluster utente

Nel tuo file di configurazione del cluster utente, imposta masterNode.autoResize.enabled su true:

masterNode:
  autoResize:
    enabled: true

Per un nuovo cluster utente, completa le istruzioni riportate nella sezione Creare un cluster utente (guida rapida) o Creare un cluster utente.

Per un cluster esistente:

gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG

Sostituisci quanto segue:

  • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione

  • USER_CLUSTER_CONFIG: percorso del file di configurazione del cluster utente

Dopo aver abilitato il ridimensionamento automatico dei nodi per un cluster utente, qualsiasi tentativo di modificare la CPU o la memoria di un nodo del piano di controllo eseguendo gkectl update viene rifiutato. Se vuoi utilizzare gkectl update per modificare la CPU o la memoria di un nodo del piano di controllo del cluster utente, devi disabilitare il ridimensionamento automatico dei nodi.

Disattiva il ridimensionamento dei nodi per i nodi aggiuntivi di un cluster di amministrazione

Nel file di configurazione del cluster admin, imposta autoRepair.enabled su false:

Aggiorna il cluster:

gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG

Disabilita il ridimensionamento dei nodi per il piano di controllo di un cluster utente

Nel tuo file di configurazione del cluster utente, imposta autoRepair.enabled su false:

Aggiorna il cluster:

gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG

Quando disattivi il ridimensionamento automatico dei nodi per un cluster utente, la CPU e la memoria dei nodi del piano di controllo vengono riconciliate per far corrispondere i valori della CPU e della memoria specificati nel file di configurazione del cluster utente.

Log ed eventi

Per trovare il nome del pod di ridimensionamento automatico:

kubectl --kubeconfig ADMIN_KUBECONFIG describe deployment auto-resize-controller

Il nome del pod ha il formato auto-resize-controller-xxxxx.

Per visualizzare i log del pod di ridimensionamento automatico:

kubectl --kubeconfig ADMIN_KUBECONFIG logs AUTO_RESIZE_POD_NAME

Il controller di ridimensionamento automatico genera eventi sugli oggetti MachineDeployment per dare visibilità a decisioni e azioni pertinenti al ridimensionamento.

Per trovare i nomi dei Deployment delle macchine:

kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG get machinedeployments --all-namespaces

Per visualizzare gli eventi:

kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment USER_CONTROL_PLANE_NODE_MACHINE_DEPLOYMENT
kubectl --kubeconfig ADMIN_CLUSTER_KUBECONFIG describe machinedeployment ADMIN_ADDON_NODE_MACHINE_DEPLOYMENT