Nodi a riparazione automatica


Questa pagina spiega come funziona la riparazione automatica dei nodi e come utilizzare la funzionalità per i cluster Google Kubernetes Engine (GKE) standard.

La riparazione automatica dei nodi ti consente di mantenere i nodi nel tuo cluster GKE in un stato di esecuzione e integro. Se abiliti questa funzionalità, GKE esegue controlli periodici sullo stato di integrità di ciascun nodo nel tuo cluster. Se un nodo non supera controlli di integrità consecutivi per un periodo di tempo prolungato, GKE avvia un processo di riparazione per quel nodo.

Impostazioni per Autopilot e Standard

I cluster Autopilot riparano sempre automaticamente i nodi. Non puoi disattivare questa impostazione.

Nei cluster standard, la riparazione automatica dei nodi è abilitata per impostazione predefinita per i nuovi pool di nodi. Puoi disattivare la riparazione automatica per un pool di nodi esistente, ma ti 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 uno stato Ready è considerato integro. GKE attiva un'azione di riparazione se un nodo genera report consecutivi sullo stato non corretto per una determinata soglia di tempo. Uno stato non integro può indicare:

  • Un nodo segnala uno stato NotReady in caso di 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 del disco di avvio di un nodo è esaurito per un periodo di tempo prolungato (circa 30 minuti).

Puoi controllare manualmente gli indicatori di stato del tuo nodo in qualsiasi momento utilizzando il comando kubectl get nodes.

Procedura di riparazione del nodo

Se GKE rileva che un nodo richiede la riparazione, il nodo viene svuotato e ricreato. Questo processo conserva il nome originale del nodo. GKE attende un'ora per il completamento dello scarico. Se lo svuotamento non viene completato, il nodo viene arrestato e ne viene creato uno nuovo.

Se sono necessari più interventi di riparazione, GKE potrebbe riparare i nodi in parallelo. GKE bilancia il numero di riparazioni in base alle dimensioni del cluster e al numero di nodi danneggiati. GKE riparerà più nodi in parallelo su un cluster più grande, ma meno nodi man mano che aumenta il numero di nodi non funzionanti.

Se disattivi la riparazione automatica dei nodi in qualsiasi momento durante il processo di riparazione, le riparazioni in corso non vengono annullate e continuano per tutti i nodi in riparazione.

Cronologia riparazioni del nodo

GKE genera una voce di log per gli eventi di riparazione automatica. Puoi controllare i log eseguendo il seguente comando:

gcloud container operations list

Riparazione automatica dei nodi nei nodi del segmento TPU

Se un nodo di sezione TPU in un node pool di sezioni TPU multi-host non è integro e richiede la riparazione automatica, l'intero pool di nodi viene ricreato. Per scoprire di più sulle condizioni dei nodi della sezione TPU, consulta la sezione Riparazione automatica dei nodi della sezione TPU.

Abilita la riparazione automatica per un pool di nodi standard esistente

La riparazione automatica dei nodi viene abilitata per pool di nodi.

Se la riparazione automatica è disattivata in un pool di nodi esistente in un cluster standard, segui le istruzioni riportate di seguito per attivarla:

gcloud

gcloud container node-pools update POOL_NAME \
    --cluster CLUSTER_NAME \
    --region=COMPUTE_REGION \
    --enable-autorepair

Sostituisci quanto segue:

  • POOL_NAME: il nome del pool di nodi.
  • CLUSTER_NAME: il nome del cluster Standard.
  • COMPUTE_REGION: la regione Compute Engine per il cluster. Per i cluster zonali, utilizza l'opzione --zone COMPUTE_ZONE.

Console

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud .

    Vai a Google Kubernetes Engine

  2. Nell'elenco dei cluster, fai clic sul nome del cluster da modificare.

  3. Fai clic sulla scheda Nodi.

  4. In Pool di nodi, fai clic sul nome del pool di nodi che vuoi modificare.

  5. Nella pagina Dettagli del pool di nodi, fai clic su Modifica.

  6. In Gestione, seleziona la casella di controllo Abilita riparazione automatica.

  7. Fai clic su Salva.

Verificare che la riparazione automatica dei nodi sia attivata per un pool di nodi standard

La riparazione automatica dei nodi è abilitata per ciascun node pool. Puoi verificare che in un pool di nodi del tuo cluster sia attivata la riparazione automatica dei nodi con 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 include queste linee:

management:
  ...
  autoRepair: true

Console

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud .

    Vai a Google Kubernetes Engine

  2. Nella pagina Google Kubernetes Engine, fai clic sul nome del cluster del pool di nodi che vuoi controllare.

  3. Fai clic sulla scheda Nodi.

  4. In Pool di nodi, fai clic sul nome del pool di nodi che vuoi controllare.

  5. In Gestione, nel campo Riparazione automatica, verifica che la riparazione automatica sia attivata.

Disattiva la riparazione automatica dei nodi

Puoi disattivare la riparazione automatica dei nodi per un pool di nodi esistente in un cluster standard utilizzando la 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 pool di nodi.
  • CLUSTER_NAME: il nome del cluster Standard.
  • COMPUTE_REGION: la regione Compute Engine per il cluster. Per i cluster zonali, utilizza l'opzione --zone COMPUTE_ZONE.

Console

  1. Vai alla pagina Google Kubernetes Engine nella console Google Cloud .

    Vai a Google Kubernetes Engine

  2. Nell'elenco dei cluster, fai clic sul nome del cluster da modificare.

  3. Fai clic sulla scheda Nodi.

  4. In Pool di nodi, fai clic sul nome del pool di nodi che vuoi modificare.

  5. Nella pagina Dettagli del pool di nodi, fai clic su Modifica.

  6. In Gestione, deseleziona la casella di controllo Abilita riparazione automatica.

  7. Fai clic su Salva.

Passaggi successivi