Ir para o conteúdo

Como faço para atualizar minha pilha do CloudFormation quando ela estiver presa no estado UPDATE_ROLLBACK_FAILED?

4 minuto de leitura
0

Minha pilha do AWS CloudFormation está presa no estado UPDATE_ROLLBACK_FAILED.

Breve descrição

Em pilhas do CloudFormation no estado UPDATE_ROLLBACK_FAILED, use a ação ContinueUpdateRollback para recuperar a pilha ou a ação DeleteStack para excluir a pilha. Para realizar uma nova tentativa de reversão, primeiro resolva os erros e, em seguida, use ContinueUpdateRollback para realizar a operação de reversão.

Observação: para resolver o erro, talvez seja necessário alterar as permissões ou modificar outras configurações.

Para obter mais informações sobre erros que causam falhas na reversão de atualizações, consulte Falha na reversão da atualização.

Em alguns casos, o erro não é resolvido quando você tenta realizar a reversão novamente. Quando isso acontece, você deve pular os recursos com falha ao executar a ação ContinueUpdateRollback. Quando a pilha está no estado UPDATE_ROLLBACK_COMPLETE, é possível atualizar a pilha normalmente.

Resolução

Para reverter a pilha para um estado de funcionamento, use o console do CloudFormation ou a AWS Command Line Interface (AWS CLI).

Observação: se você receber mensagens de erro ao executar comandos da AWS CLI, consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Use o console do CloudFormation

Para reverter a pilha e não pular recursos, conclua as seguintes etapas:

  1. Abra o console do CloudFormation.
  2. No painel de navegação, clique em Pilhas.
  3. Na coluna Nome da pilha, selecione a pilha que está presa no status UPDATE_ROLLBACK_FAILED.
  4. Clique em Ações da pilha e depois em Continuar a reversão da atualização.
  5. Selecione Continuar a reversão da atualização na nova janela.

Para reverter a pilha e pular os recursos que falharam, conclua as seguintes etapas:

  1. Abra o console do CloudFormation.
  2. No painel de navegação, clique em Pilhas.
  3. Na coluna Nome da pilha, selecione a pilha que está presa no status UPDATE_ROLLBACK_FAILED.
  4. Clique em Ações da pilha e depois em Continuar a reversão da atualização.
  5. Na caixa de diálogo Continuar a reversão da atualização, expanda Solução de problemas avançada.
  6. Na seção Recursos a serem pulados - opcional, selecione os recursos que você deseja pular.
  7. Clique em Continuar a reversão da atualização.

Use a AWS CLI

Para reverter a pilha, execute o seguinte comando continue-update-rollback da AWS CLI:

$ aws cloudformation continue-update-rollback --stack-name awsstackname123 --resources-to-skip awsfaultyresource123

Observação: substitua awsstackname123 pelo nome da sua pilha e awsfaultyresource123 pelos IDs lógicos dos seus recursos.

Se o comando da CLI for bem-sucedido, você não verá erros na resposta.

Atualize a pilha ou os recursos para que sejam consistentes

O CloudFormation define o status dos recursos especificados como UPDATE_COMPLETE. Em seguida, o CloudFormation continuará a reverter a pilha. Depois que a reversão for concluída, o estado dos recursos pulados ficará inconsistente com o estado dos recursos no modelo de pilha.

Antes de realizar outra atualização da pilha, você deve atualizar a pilha ou os recursos para que eles fiquem consistentes entre si. Se você não fizer isso, as atualizações subsequentes da pilha poderão falhar e a pilha se tornará irrecuperável.

Reverta pilhas aninhadas

Quando você reverte a pilha principal em uma pilha aninhada, as pilhas secundárias também são revertidas. Se houver muitos recursos para processar, a pilha aninhada poderá ficar presa no estado UPDATE_ROLLBACK_FAILED. Para resolver esse problema, pule as pilhas secundárias e continue com a reversão da atualização.

Se o recurso especificado que você está pulando da pilha aninhada não seguir o formato NestedStackName.ResourceLogicalID, é possível receber a seguinte mensagem de erro:

"Nested stack resources can only be skipped when their embedded stack statuses are one of [DELETE_COMPLETE, DELETE_IN_PROGRESS, DELETE_FAILED"]"

Para obter mais informações sobre como reverter pilhas aninhadas para um estado de funcionamento, consulte Continuar revertendo uma atualização.

AWS OFICIALAtualizada há 8 meses