In Google Distributed Cloud, puoi abilitare il ridimensionamento automatico dei nodi per un cluster. Il ridimensionamento comporta la modifica delle risorse di CPU e memoria assegnate a un nodo.
Se il ridimensionamento automatico dei nodi è abilitato per un cluster amministrativo, i nodi aggiuntivi nel cluster amministrativo vengono ridimensionati in base al numero totale di nodi nel cluster amministrativo. Per ogni cluster utente, nel cluster di amministrazione sono presenti uno o più nodi del piano di controllo. Pertanto, man mano che crei più cluster utente, il numero totale di nodi nel cluster di amministrazione aumenta e le dimensioni dei nodi aggiuntivi nel cluster di amministrazione vengono aumentate automaticamente.
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. Pertanto, man mano che aggiungi altri nodi worker al cluster utente, le dimensioni dei nodi del piano di controllo aumentano. 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), ha tre nodi del piano di controllo nel cluster di amministrazione, mentre un cluster utente non HA ha un nodo del piano di controllo nel cluster di amministrazione. Il ridimensionamento di un nodo richiede la sua ricreazione. Pertanto, quando il nodo del piano di controllo per un cluster utente non ad alta disponibilità viene ridimensionato, potrebbe verificarsi un breve tempo di inattività.
Attivare il ridimensionamento dei nodi per i nodi dei componenti aggiuntivi di un cluster di amministrazione
Nel
file di configurazione del cluster di amministrazione,
imposta addonNode.autoResize.enabled
su true
:
addonNode: autoResize: enabled: true
Per un nuovo cluster di amministrazione, segui le istruzioni riportate in Creare un cluster di amministrazione.
Per un cluster di amministrazione esistente:
gkectl update admin --configADMIN_CLUSTER_CONFIG --kubeconfigADMIN_CLUSTER_KUBECONFIG
Sostituisci quanto segue:
ADMIN_CLUSTER_CONFIG: il percorso del file di configurazione del cluster di amministrazione
ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione
Attivare il ridimensionamento dei nodi del piano di controllo di un cluster utente
Nel
file di configurazione del cluster utente,
imposta masterNode.autoResize.enabled
su true
:
masterNode: autoResize: enabled: true
Per un nuovo cluster di utenti, segui le istruzioni riportate in Creazione di un cluster di utenti.
Per un cluster esistente:
gkectl update cluster --kubeconfigADMIN_CLUSTER_KUBECONFIG --configUSER_CLUSTER_CONFIG
Sostituisci quanto segue:
ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione
USER_CLUSTER_CONFIG: il percorso del file di configurazione del cluster utente
Dopo aver attivato il ridimensionamento automatico dei nodi per un cluster utente, qualsiasi tentativo di cambiare la CPU o la memoria di un nodo del control plane eseguendo gkectl update
viene rifiutato. Se vuoi utilizzare gkectl update
per modificare la CPU o la memoria di un
nodo del control plane del cluster utente, devi disattivare il ridimensionamento automatico dei nodi.
Disattivare il ridimensionamento dei nodi per i nodi dei componenti aggiuntivi di un cluster di amministrazione
Nel
file di configurazione del cluster di
amministrazione, imposta addonNode.autoResize.enabled
su false
:
addonNode: autoResize: enabled: false
Aggiorna il cluster:
gkectl update admin --kubeconfigADMIN_CLUSTER_KUBECONFIG --configADMIN_CLUSTER_CONFIG
Disattivare il ridimensionamento dei nodi per i nodi del piano di controllo di un cluster utente
Nel
file di configurazione del cluster utente,
imposta masterNode.autoResize.enabled
su false
:
masterNode: autoResize: enabled: false
Aggiorna il cluster:
gkectl update cluster --kubeconfigADMIN_CLUSTER_KUBECONFIG --configUSER_CLUSTER_CONFIG
Quando disattivi il ridimensionamento automatico dei nodi per un cluster utente, la CPU e la memoria per i nodi del piano di controllo vengono riconciliati in modo che corrispondano ai valori di CPU e memoria specificati nel file di configurazione del cluster utente.
Log ed eventi
Per trovare il nome del pod con ridimensionamento automatico:
kubectl --kubeconfigADMIN_KUBECONFIG describe deployment auto-resize-controller
Il nome del pod ha il formato auto-resize-controller-xxxxx
.
Per visualizzare i log del pod con ridimensionamento automatico:
kubectl --kubeconfigADMIN_KUBECONFIG logsAUTO_RESIZE_POD_NAME
Il controller di ridimensionamento automatico genera eventi sugli oggetti MachineDeployment per fornire visibilità sulle decisioni e sulle azioni pertinenti al ridimensionamento.
Per trovare i nomi dei deployment di macchine:
kubectl --kubeconfigADMIN_CLUSTER_KUBECONFIG get machinedeployments --all-namespaces
Per visualizzare gli eventi:
kubectl --kubeconfigADMIN_CLUSTER_KUBECONFIG describe machinedeploymentUSER_CONTROL_PLANE_NODE_MACHINE_DEPLOYMENT kubectl --kubeconfigADMIN_CLUSTER_KUBECONFIG describe machinedeploymentADMIN_ADDON_NODE_MACHINE_DEPLOYMENT