Questa pagina spiega come assicurarti di poter utilizzare le strategie di upgrade dei nodi per apportare modifiche ai nodi del cluster. Ti consigliamo di verificare se il tuo progetto dispone di risorse sufficienti per aggiornare i pool di nodi standard di Google Kubernetes Engine (GKE) a seconda della strategia che scegli.
Risorse necessarie per gli upgrade dei nodi
A seconda della strategia e della configurazione dei nodi scelte, gli upgrade dei nodi potrebbero richiedere a GKE di creare temporaneamente nodi aggiuntivi. Per questo motivo, GKE potrebbe richiedere risorse aggiuntive per un upgrade del pool di nodi.
Tutti i nodi creati da GKE, inclusi quelli utilizzati per gli upgrade, sono soggetti alla quota di risorse del progetto, alla disponibilità delle risorse e alla capacità di prenotazione per i node pool con affinità di prenotazione specifica.
Ti consigliamo vivamente di verificare di disporre di risorse adeguate se hai requisiti speciali per il tipo di macchina e vincoli di capacità. Potresti dover configurare una strategia che richiede meno risorse per assicurarti di poter eseguire l'upgrade dei nodi o intraprendere altre azioni, ad esempio creare una prenotazione. Per saperne di più, vedi Eseguire l'upgrade in un ambiente con risorse limitate.
Risorse necessarie per diverse strategie di upgrade
Le sezioni seguenti descrivono le risorse aggiuntive necessarie per utilizzare le strategie di upgrade disponibili. Se riscontri problemi di upgrade, controlla le operazioni di upgrade e segui le istruzioni per risolvere gli errori di upgrade.
Risorse per gli upgrade di sovraccarico
Gli upgrade inattivi sono la strategia di upgrade dei nodi predefinita. Poiché gli upgrade di
incremento
creano VM aggiuntive, se maxSurge
è impostato su un valore maggiore di zero, prima di svuotare ed eliminare i vecchi nodi, è possibile che gli upgrade non riescano se il progetto non dispone di risorse sufficienti.
Se le risorse disponibili sono inferiori al numero di nodi specificato in
maxSurge
, il numero di upgrade paralleli è inferiore a maxSurge
più
maxUnavailable
. Se non hai capacità aggiuntiva, scopri come eseguire l'upgrade in un
ambiente con risorse limitate.
La tabella seguente contiene alcuni esempi che dimostrano i vari comportamenti degli upgrade:
Impostazioni di upgrade | Numero di nodi aggiuntivi consentiti dalle risorse disponibili | Risultato |
---|---|---|
maxSurge: 5 maxUnavailable: 0 | 5 | Esegue l'upgrade di 5 nodi in parallelo. |
maxSurge: 5 maxUnavailable: 0 | 2 | Esegue l'upgrade solo di 2 nodi in parallelo. |
maxSurge: 5 maxUnavailable: 0 | 0 | L'upgrade non riesce poiché non è possibile attivare altri nodi e il riavvio di quelli esistenti è vietato dalle impostazioni di upgrade. GKE continua a tentare l'upgrade automatico finché l'operazione non va a buon fine. |
maxSurge: 5 maxUnavailable: 1 | 5 | Esegue l'upgrade di 6 nodi in parallelo, garantendo che il pool di nodi perda temporaneamente solo 1 nodo a causa dell'upgrade. |
maxSurge: 5 maxUnavailable: 1 | 2 | Esegue l'upgrade solo di 3 nodi in parallelo, garantendo che nel pool di nodi manchi al massimo 1 nodo a causa dell'upgrade. |
maxSurge: 5 maxUnavailable: 1 | 0 | Esegue l'upgrade solo di 1 nodo alla volta mediante la nuova creazione di ogni nodo attraverso un metodo di upgrade in sequenza. |
Risorse per gli upgrade blu/verde
Gli upgrade blu/verde raddoppiano temporaneamente il numero di nodi in un pool di nodi, il che significa che il pool di nodi ha temporaneamente bisogno del doppio delle risorse. Se non hai risorse sufficienti disponibili e hai configurato il pool di nodi per utilizzare questa strategia, configura gli upgrade inattivi se devi sbloccare gli upgrade. Quando configuri questa strategia, assicurati di configurare i parametri di upgrade inattivo che funzioneranno con le risorse disponibili per i nodi depool di nodiol. Per saperne di più, consulta la sezione precedente, Risorse per gli upgrade in caso di picchi.
Controlla le operazioni di upgrade per gli errori correlati alle risorse
Controlla gli oggetti delle operazioni di upgrade per ulteriori informazioni sulle operazioni di upgrade e sul motivo dell'eventuale mancata esecuzione degli upgrade. Per elencare gli oggetti delle operazioni di upgrade, esegui questo comando:
gcloud container operations list \
--filter="STATUS=DONE AND TYPE=UPGRADE_NODES AND targetLink:https://container.googleapis.com/v1/projects/PROJECT_ID/zones/COMPUTE_ZONE/clusters/CLUSTER_NAME"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del tuo Trusted Cloud progetto.COMPUTE_ZONE
: la zona di Compute Engine per il tuo cluster.CLUSTER_NAME
: il nome del tuo cluster.
Se l'upgrade più recente non è riuscito a causa di una quota di risorse insufficiente, l'output è simile al seguente:
gcloud container operations describe operation-1234567891234-1abc2d3e
detail: "Insufficient quota to satisfy the request: waiting on IG: instance https://www.googleapis.com/compute/v1/projects/my-project-123/zones/us-central1-a/instances/gke-my-cluster-default-pool-123ab45c-de67\
\ is still CREATING. Last attempt errors: [QUOTA_EXCEEDED] Instance 'gke-my-cluster-default-pool-123ab45c-de67'\
\ creation failed: Quota 'IN_USE_ADDRESSES' exceeded. Limit: 50.0 in region us-central1.\
...
Se il motivo è legato a una prenotazione insufficiente, l'output è simile al seguente:
gcloud container operations describe operation-1234567891234-1abc2d3e
detail: "Reservation does not have enough resources for the request: waiting on IG:\
\ instance https://www.googleapis.com/compute/v1/projects/my-project-123/zones/us-central1-a/instances/gke-my-cluster-default-pool-123ab45c-de67\
\ is still CREATING. Last attempt error: [CONDITION_NOT_MET] Instance 'gke-my-cluster-default-pool-123ab45c-de67'\
\ creation failed: Specified reservation 'foo' does not have available resources\
\ for the request."
Se il motivo è legato a una capacità insufficiente, vedrai messaggi di errore relativi alla disponibilità delle risorse.
Risoluzione degli errori di upgrade
Se l'upgrade non è riuscito a causa di risorse insufficienti, prova a seguire questi passaggi:
- Valuta una strategia di upgrade meno dispendiosa in termini di risorse. Se utilizzi gli upgrade blu/verde, valuta la possibilità di eseguire upgrade di picco.
- Verifica se nel tuo progetto esistono delle risorse di Compute Engine che consumano risorse e non sono più necessarie. Se trovi risorse di questo tipo, rimuovile e prova a eseguire di nuovo l'upgrade.
- Se i primi due passaggi non consentono di eseguire l'upgrade, richiedi un incremento della quota oppure aumenta la dimensione della prenotazione specifica.
- Se operi in un ambiente con risorse limitate, ad esempio con requisiti speciali per il tipo di macchina e vincoli di capacità, consulta la sezione successiva per i passaggi per sbloccare gli upgrade.
Eseguire l'upgrade in un ambiente con risorse limitate
Se Trusted Cloud by S3NS ha una capacità limitata per una risorsa specifica (ad esempio GPU o TPU) utilizzata dal tuo pool di nodi, ti consigliamo di utilizzare una prenotazione per assicurarti di disporre di risorse adeguate. Se non disponi di risorse adeguate, potresti non riuscire a eseguire l'upgrade dei nodi finché non potrai accedere a una capacità maggiore, se non hai una prenotazione per la capacità esistente.
Se non riesci a ottenere capacità aggiuntiva, non puoi utilizzare
gli upgrade blu/verde. Per gli upgrade di sovraccarico,
maxSurge
richiede nodi aggiuntivi. Con,
maxUnavailable
,
se la capacità non proviene da una prenotazione, GKE rilascia temporaneamente
la capacità del nodo durante l'upgrade, il che significa che se la capacità è
limitata, rischi di perderla.
Segui le indicazioni riportate di seguito, a seconda che tu abbia una prenotazione per il tuo pool di nodi che deve essere aggiornato.
Eseguire l'upgrade con capacità limitata senza prenotazione
Se non hai una prenotazione per i nodi del pool di nodi, ti consigliamo di crearne una. Tuttavia, se non puoi, ti consigliamo di utilizzare gli upgrade dei picchi
con la configurazione
predefinita
di maxSurge=1;maxUnavailable=0
. Con questa configurazione, non rischi di perdere
la capacità esistente. Tuttavia, gli upgrade di picco creano un nodo di picco solo se la
capacità è disponibile. Pertanto, se non è disponibile capacità, gli upgrade potrebbero richiedere
più tempo e il pool di nodi potrebbe rimanere in uno stato di upgrade parziale finché
non viene garantita la capacità per eseguire l'upgrade di ogni nodo.
Ti consigliamo di creare una prenotazione o di aumentare le dimensioni di una prenotazione esistente.
Eseguire l'upgrade con capacità limitata con una prenotazione
Se hai una prenotazione per i nodi del tuo pool di nodi, puoi eseguire l'upgrade dei pool di nodi in un ambiente con capacità limitata, ottimizzando le impostazioni di upgrade inattivo per velocità e affidabilità.
Se hai capacità aggiuntiva nella prenotazione, puoi utilizzare maxSurge
per
creare nodi di picco. Imposta maxSurge
in base al numero di nodi che vuoi
interrompere contemporaneamente e alla capacità aggiuntiva disponibile. Ad esempio, imposta
maxSurge=1;maxUnavailable=0
se vuoi interrompere un solo nodo alla volta o
se hai la capacità di creare un solo nodo aggiuntivo.
Se non hai capacità aggiuntiva, puoi utilizzare maxUnavailable
con una
configurazione come maxSurge=0;maxUnavailable=1
, poiché la capacità è
riservata. Questa configurazione interrompe un nodo alla volta, ricreandolo per
aggiornarlo.
Passaggi successivi
- Scopri di più sulle strategie di upgrade dei nodi
- Ulteriori informazioni sulla quota delle risorse
- Ulteriori informazioni sul consumo delle prenotazioni