Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Sto cercando di aggiornare un cluster
La sezione seguente fornisce possibili soluzioni per la risoluzione dei problemi che potrebbero verificarsi durante l'aggiornamento di un cluster.
Il comando pcluster update-cluster non viene eseguito localmente
Controlla il ~/.parallelcluster/pcluster-cli.log file system locale per i dettagli sull'errore.
L'aggiornamento del cluster è scaduto
Potrebbe trattarsi di un problema correlato alla cfn-hup mancata esecuzione. Se il cfn-hup demone viene eliminato da una causa esterna, non viene riavviato automaticamente. Se cfn-hup non è in esecuzione, durante un aggiornamento del cluster, lo CloudFormation stack avvia il processo di aggiornamento come previsto, ma la procedura di aggiornamento non viene attivata sul nodo principale e la distribuzione dello stack alla fine scade. Per ulteriori informazioni, consulta Risolvere Risoluzione di un timeout di aggiornamento del cluster quando cfn-hup non è in esecuzione il problema e risolvere il problema.
ClusterStatus è UPDATE_FAILED
Causa principale
Per identificare la causa principale dell'errore, il punto di partenza è esaminare gli eventi dello stack del cluster e /var/log/chef-client.log il nodo principale.
Una possibile causa è che almeno un nodo del cluster non ha applicato l'aggiornamento. È possibile recuperare l'elenco dei nodi che non sono stati aggiornati /var/log/chef-client.log nel nodo principale effettuando una ricerca Check cluster readiness nel registro.
Verifica se il problema è menzionato nella sezione Problemi GitHub noti
Prevenire
Un aggiornamento del cluster può avere esito negativo se almeno un nodo del cluster non ha applicato correttamente l'aggiornamento. Per ridurre il rischio di errori di aggiornamento del cluster, si consiglia di chiudere i nodi danneggiati prima di iniziare l'aggiornamento. Un esempio di nodi che potrebbero essere danneggiati sono i nodi di elaborazione bloccati nello COMPLETING stato per un periodo più lungo della durata prevista dell'epilogo. Per rilevare tali nodi, puoi eseguire il comando seguente, adattando il threshold valore alle tue esigenze (il valore deve essere maggiore della durata massima prevista per gli epiloghi).
$scontrol show nodes --json | jq -r --argjson threshold 60 ' .nodes[] | select(.state | index("COMPLETING")) | select((now - .last_busy.number) > $threshold) | .name '
Recupero
Se l'aggiornamento non è riuscito, il rollback è il meccanismo previsto per ripristinare lo stato del cluster.
Se il rollback non è riuscito, lo stato del cluster non è deterministico. In questo caso, è possibile che sia clustermgtd stato interrotto per impedire l'amplificazione dei guasti. Si consiglia di avviarlo eseguendo il seguente comando sul nodo principale. Adatta la versione di Python a quella fornita con la tua versione: AWS ParallelCluster
$/opt/parallelcluster/pyenv/versions/3.12.11/envs/cookbook_virtualenv/bin/supervisorctl start clustermgtd
ClusterStatus è UPDATE_FAILED e cloud è UPDATE_ROLLBACK_FAILED FormationStackStatus
è UPDATE_ROLLBACK_FAILED FormationStackStatus Quando pcluster describe-cluster riporta che lo è e lo clusterStatus è, sia l'aggiornamento del cluster che il successivo UPDATE_FAILED rollback cloudFormationStackStatus non sono riuscitiUPDATE_ROLLBACK_FAILED. In questo stato lo stack del cluster non può accettare ulteriori aggiornamenti e richiede un intervento manuale per essere sbloccato.
Per sbloccare lo stack del cluster, completa i seguenti passaggi:
-
Correggi la causa principale dell'errore.
-
Forza la continuazione del rollback.
$aws cloudformation continue-update-rollback --regionREGION--stack-nameCLUSTER_STACK_NAME -
Attendi che lo stack raggiunga lo stato.
UPDATE_ROLLBACK_COMPLETE -
Riprova l'aggiornamento originale con il
pcluster update-clustercomando.
Lo stack del cluster appare bloccato in UPDATE_IN_PROGRESS o UPDATE_ROLLBACK_IN_PROGRESS
UPDATE_ROLLBACK_IN_PROGRESS Lo stack del cluster potrebbe rimanere bloccato UPDATE_IN_PROGRESS o al massimo UPDATE_ROLLBACK_IN_PROGRESS per 1 ora, se l'Auto Scaling Group dei nodi di accesso non riesce a stabilizzarsi a causa di errori di bootstrap nei nodi di accesso.
Per verificare se ci si trova in questa situazione a causa dei nodi di accesso Auto Scaling Group, è necessario eseguire i seguenti controlli: Nello stack principale, l'unica risorsa presente è lo stack annidato dei nodi di accesso. UPDATE_IN_PROGRESS Nello stack annidato dei nodi di accesso, l'unica risorsa bloccata è l'Auto UPDATE_IN_PROGRESS Scaling Group dei nodi di accesso.
In questo scenario, puoi annullare l'aggiornamento in modo da non dover attendere 1 ora per il completamento dell'aggiornamento.
$aws cloudformation cancel-update-stack --regionREGION--stack-nameCLUSTER_STACK_NAME
L'annullamento dell'aggiornamento attiva il rollback. Non è possibile ridurre il timeout di 1 ora del rollback, quindi nel peggiore dei casi è necessario attendere che il rollback raggiunga lo stato finale.
Se il rollback ha esito positivo, puoi riprovare immediatamente l'aggiornamento originale del cluster dopo aver corretto la causa principale dell'errore. In caso contrario, consulta ClusterStatus è UPDATE_FAILED e cloud è UPDATE_ROLLBACK_FAILED FormationStackStatus.