Importar recursos da AWS para uma pilha do CloudFormation automaticamente
Agora, é possível importar recursos nomeados automaticamente ao criar ou atualizar pilhas do CloudFormation. Um recurso nomeado é um recurso com nome personalizado. Para obter mais informações, consulte Tipo de nome na Referência de modelos do CloudFormation.
Quando a importação automática é iniciada, o CloudFormation verifica os recursos existentes que correspondem ao modelo e os importa durante a implantação. No caso de pilhas aninhadas, crie o conjunto de alterações a partir da pilha raiz.
Após a importação ter sido concluída, e antes de realizar as operações de pilhas subsequentes, recomendamos executar a detecção de desvios nos recursos importados. A detecção de desvios garante que a configuração do modelo corresponda à configuração real. Para obter mais informações, consulte Detectar desvio em uma pilha inteira do CloudFormation.
Para importar um recurso, é necessário que ele atenda aos seguintes requisitos:
-
O recurso deve ter um nome personalizado estático definido no modelo. No momento, não há suporte para nomes dinâmicos (usando !Ref ou outras funções).
-
O recurso deve ter
DeletionPolicydeRetainouRetainExceptOnCreate. -
O recurso não deve pertencer a outra pilha do CloudFormation.
-
O tipo de recurso deve ser compatível com operações de importação do CloudFormation. Para obter mais informações, consulte Suporte a tipos de recursos.
-
O ID primário ou um identificador adicional do tipo de recurso deve estar no modelo. Não há suporte a IDs primários ou identificadores adicionais com propriedades somente leitura. Para descobrir qual é o ID primário ou identificadores adicionais de um tipo, procure as propriedades
primaryIdentifiereadditionalIdentifiersno esquema do recurso. Para obter mais informações, consulte esquema de definição do tipo de recurso.
exemplo Exemplo de importação automática
O exemplo a seguir usa um conjunto de alterações, CreateChangeSet, para criar uma pilha chamada my-stack com base em um arquivo de modelo, template.yaml, e importa os recursos correspondentes de maneira automática.
aws cloudformation create-change-set \ --stack-namemy-stack\ --change-set-nameCreateChangeSet\ --change-set-type CREATE \ --template-bodyfile://template.yaml\ --import-existing-resources
Solução de problemas
Se a importação automática falhar, faça o seguinte para solucionar o problema:
Verifique se o nome do recurso no modelo corresponde exatamente ao nome do recurso
Verifique se o recurso não está sendo gerenciado por outra pilha
Certifique-se de que o tipo de recurso ofereça suporte à importação automática
Verifique se o modelo inclui todas as propriedades necessárias para o tipo de recurso
Tipos de recursos compatíveis
A tabela a seguir lista os tipos de recursos da AWS que atualmente oferecem suporte à importação automática.