Questa pagina fornisce informazioni sulla riparazione automatica dei nodi nei cluster Google Kubernetes Engine (GKE).
Panoramica
La riparazione automatica dei nodi consente di mantenere i nodi nel tuo cluster GKE in stato integro e in esecuzione. Se abilitato, GKE esegue controlli periodici sullo stato di integrità di ciascun nodo nel cluster. Se un nodo non supera controlli di integrità consecutivi per un periodo di tempo prolungato, GKE avvia un processo di riparazione per tale nodo.
Impostazioni per Autopilot e Standard
I cluster Autopilot riparano sempre automaticamente i nodi. Non puoi disabilitare questa impostazione.
Nei cluster Standard, la riparazione automatica dei nodi è abilitata per impostazione predefinita per i nuovi pool di nodi. Puoi disabilitare la riparazione automatica per un pool di nodi esistente, ma consigliamo di mantenere la configurazione predefinita.
Criteri di riparazione
GKE utilizza lo stato di integrità del nodo per determinare
se un nodo deve essere riparato. Un nodo che segnala lo stato Ready
è considerato integro.
GKE attiva un'azione di riparazione se un nodo segnala
report di stato non integro consecutivi per una determinata soglia di tempo.
Uno stato non integro può indicare che:
- Un nodo segnala lo stato
NotReady
in controlli consecutivi oltre la soglia di tempo specificata (circa 10 minuti). - Un nodo non segnala alcun stato oltre la soglia di tempo specificata (circa 10 minuti).
- Lo spazio su disco di un nodo è esaurito per un periodo di tempo prolungato (circa 30 minuti).
Puoi controllare manualmente gli indicatori di integrità del nodo in qualsiasi momento utilizzando il comando kubectl get nodes
.
Processo di riparazione dei nodi
Se GKE rileva che un nodo deve essere riparato, viene svuotato e ricreato. GKE attende un'ora per il completamento dello svuotamento. Se lo svuotamento non viene completato, il nodo viene arrestato e ne viene creato uno nuovo.
Se più nodi devono essere riparati, GKE potrebbe riparare i nodi in parallelo. GKE bilancia il numero di riparazioni in base alle dimensioni del cluster e al numero di nodi guasti. GKE riparerà più nodi in parallelo su un cluster più grande, ma meno nodi man mano che aumenta il numero di nodi non integri.
Se disabiliti la riparazione automatica dei nodi in qualsiasi momento durante la procedura di riparazione, le riparazioni in corso non vengono annullate e continuano per i nodi attualmente in riparazione.
Cronologia delle riparazioni dei nodi
GKE genera una voce di log per gli eventi di riparazione automatica. Puoi controllare i log eseguendo questo comando:
gcloud container operations list
Riparazione automatica dei nodi nei nodi delle sezioni TPU
Se un nodo della sezione TPU in un pool di nodi della sezione TPU multi-host non è integro e richiede la riparazione automatica, viene ricreato l'intero pool di nodi. Per scoprire di più sulle condizioni dei nodi della sezione TPU, consulta la pagina sulla riparazione automatica dei nodi della sezione TPU.
Abilita la riparazione automatica per un pool di nodi Standard esistente
Puoi abilitare la riparazione automatica dei nodi per pool di nodi.
Se la riparazione automatica è disabilitata su un pool di nodi esistente in un cluster standard, utilizza le seguenti istruzioni per abilitarla:
gcloud
gcloud container node-pools update POOL_NAME \
--cluster CLUSTER_NAME \
--region=COMPUTE_REGION \
--enable-autorepair
Sostituisci quanto segue:
POOL_NAME
: il nome del tuo pool di nodi.CLUSTER_NAME
: il nome del cluster Standard.COMPUTE_REGION
: la regione Compute Engine per il cluster. Per i cluster di zona, utilizza l'opzione--zone COMPUTE_ZONE
.
Console
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nell'elenco dei cluster, fai clic sul nome del cluster da modificare.
Fai clic sulla scheda Nodi.
In Pool di nodi, fai clic sul nome del pool di nodi che vuoi modificare.
Nella pagina Dettagli del pool di nodi, fai clic su edit Modifica.
In Gestione, seleziona la casella di controllo Abilita riparazione automatica.
Fai clic su Salva.
Verifica che la riparazione automatica dei nodi sia abilitata per un pool di nodi standard
La riparazione automatica dei nodi viene abilitata in base al pool per nodo. Puoi verificare che in un pool di nodi nel tuo cluster sia abilitata la riparazione automatica dei nodi tramite Google Cloud CLI o la console Google Cloud.
gcloud
Descrivi il pool di nodi:
gcloud container node-pools describe NODE_POOL_NAME \
--cluster=CLUSTER_NAME
Se la riparazione automatica dei nodi è abilitata, l'output del comando includerà queste righe:
management:
...
autoRepair: true
Console
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nella pagina di Google Kubernetes Engine, fai clic sul nome del cluster del pool di nodi che vuoi ispezionare.
Fai clic sulla scheda Nodi.
In Pool di nodi, fai clic sul nome del pool di nodi che vuoi esaminare.
In Gestione, nel campo Riparazione automatica, verifica che la riparazione automatica sia abilitata.
Disabilita la riparazione automatica dei nodi
Puoi disabilitare la riparazione automatica dei nodi per un pool di nodi esistente in un cluster standard utilizzando gcloud CLI o la console Google Cloud.
gcloud
gcloud container node-pools update POOL_NAME \
--cluster CLUSTER_NAME \
--region=COMPUTE_REGION \
--no-enable-autorepair
Sostituisci quanto segue:
POOL_NAME
: il nome del tuo pool di nodi.CLUSTER_NAME
: il nome del cluster Standard.COMPUTE_REGION
: la regione Compute Engine per il cluster. Per i cluster di zona, utilizza l'opzione--zone COMPUTE_ZONE
.
Console
Vai alla pagina Google Kubernetes Engine nella console Google Cloud.
Nell'elenco dei cluster, fai clic sul nome del cluster da modificare.
Fai clic sulla scheda Nodi.
In Pool di nodi, fai clic sul nome del pool di nodi che vuoi modificare.
Nella pagina Dettagli del pool di nodi, fai clic su edit Modifica.
In Gestione, deseleziona la casella di controllo Abilita riparazione automatica.
Fai clic su Salva.