Importação de pilha gerenciada por serviços usando o AWS Management Console ou a AWS CLI - AWS CloudFormation

Importação de pilha gerenciada por serviços usando o AWS Management Console ou a AWS CLI

A operação importação de pilha do AWS CloudFormation pode importar pilhas existentes em conjuntos de pilhas novos ou existentes, para que você possa migrar pilhas existentes para um conjunto de pilhas em uma só operação. O StackSets amplia a funcionalidade das pilhas, permitindo que você crie, atualize ou exclua pilhas em várias contas e regiões com uma única operação.

Requisitos gerenciados por serviços para a importação de pilhas

Além da seção Requisitos para a importação de pilhas, importações de pilhas gerenciadas por serviço requerem o seguinte.

  • A operação de importação de pilhas requer uma conta de gerenciamento ou uma conta de administrador delegada na qual você possa gerenciar o AWS Organizations associado, por exemplo, habilitando o acesso confiável com o StackSets.

  • As contas de destino devem ser membros do AWS Organizations gerenciado pela conta de gerenciamento ou pela conta de administrador delegado.

  • A pilha de destino existe em uma das UOs de destino.

  • A conta de destino deve ser membro do AWS Organizations.

  • O acesso do AWS Organizations deve estar no estado ACTIVATED para as organizações.

  • As pilhas que estão sendo importadas devem estar presentes em qualquer uma das contas-membro, e não na conta de gerenciamento.

Importar uma pilha gerenciada por serviço para um novo conjunto de pilhas (console)

Importar uma pilha para um novo conjunto de pilhas com o AWS Management Console

Para importar uma nova pilha para um conjunto de pilhas, identifique uma pilha contendo o recurso que você quer importar.

  1. Faça login no AWS Management Console e abra o console AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  2. No painel de navegação, escolha StackSets.

  3. No topo da página StackSets, escolha Create StackSet (Criar StackSet).

  4. Adicione as seguintes informações à página Choose a template (Escolher um modelo).

    1. Para StackSet permission model (Modelo de permissão do StackSets), selecione Service-managed permissions (Permissões gerenciadas por serviços).

    2. Em Prerequisite - Prepare template (Pré-requisito - Preparar modelo), selecione Template is ready (O modelo está pronto).

      1. Em URL do Amazon S3, insira seu URL do Amazon S3 no campo URL do Amazon S3.

      2. Em Carregar um arquivo de modelo, selecione um modelo do CloudFormation armazenado no computador local.

    Aceite suas configurações e escolha Next (Próximo).

  5. Na página Specify StackSet details (Especificar detalhes do conjunto de pilhas), adicione as seguintes informações.

    1. Insira um nome de conjunto de pilhas na caixa StackSet Name (Nome do conjunto de pilhas).

    2. (Opcional) Insira uma descrição na seção StackSet description (Descrição do StackSet).

    Na página Configure stack options (Configurar opções da pilha), reveja suas escolhas e selecione Next (Próximo).

  6. Adicione as seguintes informações à página Set deployment options (Definir opções de implantação).

    1. Para Add stacks to stack set (Adicionar pilhas ao conjunto de pilhas), selecione Import stacks to stack set (Importar pilhas para o conjunto de pilhas).

    2. Em Stacks to import (Pilhas para importar), escolha seu método de importação de pilhas.

      1. Para Stack ID (ID da pilha), insira o ID da pilha.

      2. Em URL da pilha, insira o URL do Amazon S3.

  7. Adicione as seguintes informações à seção Associate organizational units (Associar unidades organizacionais).

    1. Selecione Associate with organization (Associar-se à organização) para utilizar a UO raiz.

    2. Selecione Associate with organizational units (OUs) (Associar-se a unidades organizacionais - UOs) para inserir IDs de UOs pai para as pilhas a serem importadas. Por exemplo, se Stack 1 e Stack 2 estiverem em OU1 e Stack 3 estiver em OU2, insira OU1 e OU2.

    Aceite suas configurações e escolha Next (Próximo).

  8. Revise suas configurações na página Review (Revisar) e selecione Submit (Enviar).

Criar e importar uma pilha gerenciada por serviço para um conjunto existente de pilhas (console)

Para importar uma pilha para um novo conjunto de pilhas, identifique uma pilha contendo o recurso que você quer importar.

Para criar um conjunto de pilhas e importar uma pilha
  1. Faça login no AWS Management Console e abra o console AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  2. No painel de navegação, escolha StackSets.

  3. No topo da página StackSets, escolha Create StackSet (Criar StackSet).

  4. Adicione as seguintes informações à página Choose a template (Escolher um modelo).

    1. Para StackSet permission model (Modelo de permissão do StackSets), selecione Service-managed permissions (Permissões gerenciadas por serviços).

    2. Em Prerequisite - Prepare template (Pré-requisito - Preparar modelo), selecione Template is ready (O modelo está pronto).

      1. Em URL do Amazon S3, insira seu URL do Amazon S3 no campo URL do Amazon S3.

      2. Em Carregar um arquivo de modelo, selecione um modelo do CloudFormation armazenado no computador local.

    Aceite suas configurações e escolha Next (Próximo).

  5. Na página Specify StackSet details (Especificar detalhes do conjunto de pilhas), adicione as seguintes informações.

    1. Insira um nome de conjunto de pilhas na caixa StackSet Name (Nome do conjunto de pilhas).

    2. (Opcional) Insira uma descrição na seção StackSet description (Descrição do StackSet).

    Na página Configure stack options (Configurar opções da pilha), reveja suas escolhas e selecione Next (Próximo).

  6. Adicione as seguintes informações à página Set deployment options (Definir opções de implantação).

    1. Para Add stacks to stack set (Adicionar pilhas ao conjunto de pilhas), selecione Deploy new stacks (Implantar novas pilhas).

  7. Adicione as seguintes informações à seção Associate organizational units (Associar unidades organizacionais).

    1. Selecione Associate with organization (Associar-se à organização) para utilizar a UO raiz.

    2. Selecione Associate with organizational units (OUs) (Associar-se a unidades organizacionais - UOs) para inserir IDs de UOs pai para as pilhas a serem importadas. Por exemplo, se Stack 1 e Stack 2 estiverem em OU1 e Stack 3 estiver em OU2, insira OU1 e OU2.

  8. Para Specify regions (Especificar regiões) e Deployment options (Opções de implantação), examine suas escolhas.

    Aceite suas configurações e escolha Next (Próximo).

  9. Revise suas configurações na página Review (Revisar) e selecione Submit (Enviar).

Importar uma pilha gerenciada por serviço para um conjunto existente de pilhas (console)

Selecione seu conjunto de pilhas e identifique a pilha que você quer importar.

Para importar uma pilha para um conjunto existente de pilhas
  1. Faça login no AWS Management Console e abra o console AWS CloudFormation em https://console.aws.amazon.com/cloudformation.

  2. No painel de navegação, escolha StackSets.

  3. Selecione o conjunto de pilhas para o qual você quer importar uma pilha e depois escolha Add stacks to StackSet (Adicionar pilhas ao conjunto de pilhas) na lista suspensa Actions (Ações).

  4. Adicione as seguintes informações à página Set deployment options (Definir opções de implantação).

    1. Para Add stacks to stack set (Adicionar pilhas ao conjunto de pilhas), selecione Import stacks to stack set (Importar pilhas para o conjunto de pilhas).

    2. Adicione as informações a seguir à seção Stacks to import (Pilhas para importar).

      1. Para Stack ID (ID da pilha), insira o ID da pilha.

      2. Em URL da pilha, insira o URL do Amazon S3.

    3. Adicione as seguintes informações à seção Associate organizational units (Associar unidades organizacionais).

      1. Selecione Associate with organization (Associar-se à organização) para utilizar a UO raiz.

      2. Selecione Associate with organizational units (OUs) (Associar-se a unidades organizacionais - UOs) para inserir IDs de UOs pai para as pilhas a serem importadas. Por exemplo, se Stack 1 e Stack 2 estiverem em OU1 e Stack 3 estiver em OU2, insira OU1 e OU2.

      Aceite suas configurações e escolha Next (Próximo).

  5. Revise a página Specify overrides (Especificar substituições) e escolha Next (Próximo).

  6. Confirme e revise a página Review (Revisar) e escolha Submit (Enviar).

Importar uma pilha gerenciada por serviço para um conjunto de pilhas (AWS CLI)

Após a criação de um conjunto de pilhas, é possível importar suas pilhas transmitindo os IDs das pilhas que estão sendo importadas. Também é possível transmitir a lista de IDs de UOs para a qual você quer mapeá-lo.

O StackSets importará as pilhas fornecidas pelo usuário dentro dessas UOs e usará estas últimas como destinos de implantação para os conjuntos de pilhas. Os IDs de pilhas apresentados na entrada serão mapeados internamente para a UO mais próxima na entrada da lista de IDs de UOs e na UO. Se uma pilha não pertencer a um ID de UO existente na lista de entrada, a AWS CLI retornará o erro StackNotFoundException.

A operação import-stacks-to-stack-set cria instâncias de pilha para as pilhas na entrada de ID de UO. Os seguintes exemplos da AWS CLI utilizam a operação import-stacks-to-stack-set para importar uma pilha em um conjunto de pilhas.

  • Para utilizar a operação import-stacks-to-stack-sets, especifique stack-ids ou stack-ids-url que você quer importar para o seu conjunto de pilhas.

    aws cloudformation import-stacks-to-stack-set \ --stack-set-name ServiceMangedStackSet \ --stack-ids "arn:123456789012:us-east-1:Stack1" \ --organizational-unit-ids ou-examplerootid111-exampleouid111
    aws cloudformation import-stacks-to-stack-set \ --stack-set-name ServiceMangedStackSet \ --stack-ids-url https://amzn-s3-demo-bucket.s3.us-west-2.amazonaws.com/file-name.json \ --organizational-unit-ids ou-examplerootid111-exampleouid111
nota

A operação import-stacks-to-stack-sets requer a especificação de pelo menos um ID de unidade organizacional (ID de UO) para que seja possível associar a pilha que está sendo importada para essa UO específica. Essa operação não cria instâncias de pilha para outras contas-membro nas UOs associadas. Para atualizar contas-membro para as UOs associadas, use create-stack-instances ou update-stack-instances.

O create-stack-set cria instâncias de pilha para todas as contas nas UOs com um modelo fornecido pelo usuário, seja por upload direto ou via Amazon S3. Os seguintes exemplos da AWS CLI utilizam a operação create-stack-set para importar uma pilha em um novo conjunto de pilhas.

  • Para utilizar a operação create-stack-set, especifique o nome do conjunto de pilhas e importe uma pilha para um conjunto de pilhas recém-criado.

    aws cloudformation create-stack-set \ --template-url https://amzn-s3-demo-bucket.s3.us-west-2.amazonaws.com/file-name.json \ --permission-model SERVICE_MANAGED \ --auto-deployment Enabled=true

Reversão de uma operação de importação de instância de pilha

Para reverter uma operação de importação de pilhas, conclua as seguintes tarefas:

  1. Especifique um atributo DeletionPolicy de Retain para cada recurso que você deseja manter após a exclusão da instância de pilha. Para ter mais informações, consulte Reverter uma operação de importação.

  2. Exclua instâncias da pilha do seu conjunto de pilhas. Para ter mais informações, consulte Excluir instâncias de pilha usando o console do CloudFormation ou a AWS CLI.

  3. Exclua seu conjunto de pilhas. Para ter mais informações, consulte Excluir um conjunto de pilhas usando o console do CloudFormation ou a AWS CLI.

Resultados: a operação de reversão excluiu a instância da pilha e reteve os recursos da pilha.