

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à.

# Tentativo di aggiornamento di un cluster
<a name="troubleshooting-fc-v3-update-cluster"></a>

La sezione seguente fornisce possibili soluzioni per la risoluzione dei problemi che potrebbero verificarsi durante l'aggiornamento di un cluster.

## `pcluster update-cluster`il comando non viene eseguito localmente
<a name="update-cluster-failure-cli-v3"></a>

`~/.parallelcluster/pcluster-cli.log`Controllate il file system locale per i dettagli sull'errore.

## Vedere `clusterStatus` avviene `UPDATE_FAILED` tramite `pcluster describe-cluster` comando
<a name="update-cluster-failure-v3"></a>

### Causa principale
<a name="update-cluster-failure-v3-root-causing"></a>

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](https://github.com/aws/aws-parallelcluster/wiki) all'indirizzo AWS ParallelCluster on GitHub.

### Prevenire
<a name="update-cluster-failure-v3-preventing"></a>

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
<a name="update-cluster-failure-v3-recovering"></a>

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
```

## L'aggiornamento del cluster è scaduto
<a name="update-cluster-failure-timeout-v3"></a>

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 dei problemi di un timeout di aggiornamento del cluster quando `cfn-hup` non è in esecuzione](troubleshooting-v3-cluster-update-timeout.md) il problema e risolvere il problema.