Como faço para atualizar uma pilha do CloudFormation que está falhando devido a um recurso que eu excluí manualmente?

3 minuto de leitura
0

Excluí manualmente um recurso que foi criado por uma das minhas pilhas do AWS CloudFormation e agora minha pilha não será atualizada.

Breve descrição

Se você excluir um recurso que foi criado por uma pilha do CloudFormation, sua pilha não será atualizada e você receberá uma mensagem de erro.

Escolha uma das seguintes resoluções com base no seu tipo de recurso:

  • Atualize um recurso com um nome exclusivo
  • Atualize um recurso com um ID exclusivo

Solução

Atualize um recurso com um nome exclusivo

Se o recurso excluído oferecer suporte a um nome exclusivo, você poderá atualizar sua pilha criando o recurso manualmente. O novo recurso, no entanto, deve ter o mesmo nome do recurso excluído. Por exemplo, você pode impactar a forma como o CloudFormation manipula um recurso quando você altera o nome de um recurso. Isso ocorre porque as funções do AWS Identity and Access Management (IAM) são rastreadas por nome. Se algum perfil do IAM for excluído acidentalmente, você pode recriar esse perfil manualmente com o mesmo nome.

Para atualizar um perfil do IAM ou qualquer outro recurso com um nome exclusivo, conclua as seguintes etapas:

  1. Abra o console do AWS CloudFormation.
  2. Selecione sua pilha e, em seguida, escolha a visualização de ** Recursos**.
  3. Na colunaID física, encontre a ID física do perfil do IAM que você deseja substituir pelo novo perfil do IAM.
    Observação: a ID física é o nome do recurso.
  4. Crie um novo perfil do IAM e, em seguida, atribua ao novo perfil a mesma ID física encontrada na etapa 3.
  5. Atualize sua pilha.

Observação: para obter mais informações, consulte Como modificar um modelo de pilha.

Atualize um recurso com um ID exclusivo

Você não pode recriar manualmente um recurso, como uma tabela de rotas, com um ID exclusivo. Em vez disso, você deve remover o recurso e todas as referências a esse recurso do seu modelo do CloudFormation.

Observação: a solução a seguir também funciona para recursos que não oferecem suporte a um nome ou ID exclusivos. Por exemplo, um conjunto de registros em uma zona hospedada.

Para permitir que o CloudFormation recrie uma tabela de rotas ou qualquer outro recurso com um ID exclusivo, conclua as seguintes etapas:

  1. Em seu modelo do CloudFormation, remova a tabela de rotas e todas as referências a ela.
  2. Atualize a pilha.
    Observação: o CloudFormation tenta excluir a tabela de rotas. Como o recurso já foi excluído, o CloudFormation considera a exclusão uma operação bem-sucedida.
  3. Adicione a tabela de rotas e quaisquer recursos ou referências adicionais necessários ao seu modelo do CloudFormation.
  4. Atualize sua pilha novamente.
    Observação: o CloudFormation recria o recurso excluído.

Informações relacionadas

Como solucionar problemas do AWS CloudFormation

AWS OFICIAL
AWS OFICIALAtualizada há 3 anos