View a markdown version of this page

Tentando atualizar um cluster - AWS ParallelCluster

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Tentando atualizar um cluster

A seção a seguir fornece possíveis soluções para problemas que podem ocorrer enquanto você tenta atualizar um cluster.

O comando pcluster update-cluster falha ao ser executado localmente

Verifique o ~/.parallelcluster/pcluster-cli.log em seu sistema de arquivos local para ver os detalhes da falha.

Ver clusterStatus é UPDATE_FAILED com comando pcluster describe-cluster

Causa raiz

Para identificar a causa raiz da falha, o ponto de partida é examinar os eventos da pilha do cluster e o /var/log/chef-client.log nó principal.

Uma possível causa é que pelo menos um nó do cluster não aplicou a atualização. Você pode recuperar a lista de nós que falharam na atualização /var/log/chef-client.log no nó principal procurando Check cluster readiness no registro.

Verifique se seu problema foi mencionado em Problemas GitHub conhecidos em AWS ParallelCluster em GitHub.

Prevenindo

Uma atualização de cluster pode falhar se pelo menos um nó no cluster não aplicar a atualização com êxito. Para reduzir o risco de falha na atualização do cluster, recomendamos encerrar os nós quebrados antes de iniciar a atualização. Um exemplo de nós que podem ser quebrados são os nós de computação presos no COMPLETING estado por mais tempo do que a duração esperada do epílogo. Para detectar esses nós, você pode executar o comando a seguir, adaptando o threshold valor às suas necessidades (o valor deve ser maior do que a duração máxima esperada para seus epílogos).

$ scontrol show nodes --json | jq -r --argjson threshold 60 ' .nodes[] | select(.state | index("COMPLETING")) | select((now - .last_busy.number) > $threshold) | .name '

Se recuperando

Se a atualização falhar, a reversão é o mecanismo esperado para recuperar o estado do cluster.

Se a reversão falhar, o estado do cluster não é determinístico. Nesse caso, pode ser que tenha clustermgtd sido interrompido para evitar a amplificação de falhas. Recomendamos iniciá-lo executando o seguinte comando no nó principal. Adapte a versão do Python à que vem com sua versão: AWS ParallelCluster

$ /opt/parallelcluster/pyenv/versions/3.12.11/envs/cookbook_virtualenv/bin/supervisorctl start clustermgtd

A atualização do cluster atingiu o tempo limite

Isso pode ser um problema relacionado ao cfn-hup não sendo executado. Se o daemon cfn-hup for encerrado por uma causa externa, ele não será reiniciado automaticamente. Se cfn-hup não estiver em execução, durante uma atualização do cluster, a CloudFormation pilha inicia o processo de atualização conforme o esperado, mas o procedimento de atualização não é ativado no nó principal e a implantação da pilha eventualmente expira. Para obter mais informações, consulte Solução de problemas de tempo limite de atualização de cluster quando cfn-hup não está em execução para solucionar o problema e corrigir o problema.