View a markdown version of this page

Limpe os recursos AWS do Account Factory for Terraform (AFT) com segurança após a perda do arquivo de estado - Recomendações da AWS

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á.

Limpe os recursos AWS do Account Factory for Terraform (AFT) com segurança após a perda do arquivo de estado

Gokendra Malviya, Amazon Web Services

Resumo

Quando você usa o AWS Account Factory for Terraform (AFT) para gerenciar seu AWS Control Tower ambiente, o AFT gera um arquivo de estado do Terraform para rastrear o estado e a configuração dos recursos criados pelo Terraform. Perder o arquivo de estado do Terraform pode gerar desafios significativos para o gerenciamento e a limpeza dos recursos. Esse padrão fornece uma abordagem sistemática para identificar e remover com segurança os recursos relacionados ao AFT, mantendo a integridade do seu AWS Control Tower ambiente.

O processo foi projetado para garantir a remoção adequada de todos os componentes do AFT, mesmo na ausência da referência do arquivo de estado original. Esse processo fornece um caminho claro para restabelecer e reconfigurar com sucesso o AFT em seu ambiente, para ajudar a garantir o mínimo de interrupção em suas operações. AWS Control Tower

Para obter mais informações sobre o AFT, consulte a documentação do AWS Control Tower.

Pré-requisitos e limitações

Pré-requisitos

  • Conhecimento detalhado da arquitetura do AFT.

  • Acesso de administrador às seguintes contas:

    • Conta gerencial do AFT

    • AWS Control Tower Conta de gerenciamento

    • Conta de arquivamento de logs

    • Conta de auditoria

  • Verificação de que nenhuma política de controle de serviço (SCPs) contém restrições ou limitações que bloqueariam a exclusão de recursos relacionados ao AFT.

Limitações

  • Este procedimento consegue remover os recursos com eficiência, porém não recupera arquivos de estado perdidos, e alguns recursos podem precisar ser identificados manualmente.

  • O tempo necessário para o processo de limpeza varia conforme a complexidade do ambiente e pode demorar várias horas.

  • Este padrão foi testado usando a versão 1.12.2 do AFT e remove os recursos listados a seguir. Se você estiver usando uma versão diferente do AFT, talvez seja necessário excluir recursos adicionais.

    Nome do serviço

    Quantidade de recursos

    AWS CodeBuild

    6

    AWS CodeCommit

    4

    AWS CodePipeline

    4

    Amazon DynamoDB

    5

    Amazon Elastic Compute Cloud (Amazon EC2)

    16

    Amazon EventBridge

    4

    AWS Identity and Access Management Funções (IAM)

    40

    AWS Key Management Service (AWS KMS)

    2

    AWS Lambda

    17

    Amazon Simple Storage Service (Amazon S3)

    2

    Amazon Simple Notification Service (Amazon SNS)

    2

    Amazon Simple Queue Service (Amazon SQS)

    2

    AWS Systems Manager

    62

    AWS Step Functions

    4

Importante

Os recursos excluídos pelos procedimentos deste padrão não podem ser recuperados. Antes de seguir estas etapas, verifique cuidadosamente os nomes dos recursos e confirme que eles foram criados pelo AFT.

Arquitetura

O diagrama a seguir apresenta os componentes do AFT e o fluxo de trabalho geral. O AFT configura um pipeline do Terraform que ajuda você a provisionar e personalizar suas contas no AWS Control Tower. O AFT segue um GitOps modelo para automatizar os processos de provisionamento de contas em. AWS Control Tower Você cria um arquivo do Terraform para uma solicitação de conta e o envia para um repositório, que fornece a entrada que aciona o fluxo de trabalho do AFT para o provisionamento das contas. Após a conclusão do provisionamento da conta, o AFT pode executar etapas adicionais de personalização automaticamente.

Componentes do AFT e fluxo de trabalho geral.

Nesta arquitetura:

  • AWS Control Tower A conta de gerenciamento Conta da AWS é dedicada ao AWS Control Tower serviço. Essa conta também é comumente referida como conta pagadora da AWS ou a conta gerencial do AWS Organizations .

  • A conta de gerenciamento da AFT Conta da AWS é dedicada às operações de gerenciamento da AFT. Esta conta é diferente da conta gerencial da sua organização.

  • A conta vendida Conta da AWS contém todos os componentes e controles básicos que você selecionou. A AFT usa AWS Control Tower para vender uma nova conta.

Para obter informações adicionais sobre essa arquitetura, consulte Introdução ao AFT no AWS Control Tower workshop.

Ferramentas

Serviços da AWS

  • AWS Control Towerajuda você a configurar e administrar um ambiente AWS com várias contas, seguindo as melhores práticas prescritivas.

  • AWS O Account Factory for Terraform (AFT) configura um pipeline do Terraform para ajudá-lo a provisionar e personalizar contas e recursos no. AWS Control Tower

  • AWS Organizationsajuda você a gerenciar e governar centralmente seu ambiente à medida que você cresce e escala seus AWS recursos. Com o Organizations, você pode criar contas e alocar recursos, agrupar contas para organizar os fluxos de trabalho, aplicar políticas de governança e simplificar o faturamento usando um único método de pagamento para todas as suas contas.

  • AWS Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus AWS recursos controlando quem está autenticado e autorizado a usá-los. Este padrão requer perfis IAM e permissões.

Outras ferramentas

  • O Terraform é uma ferramenta de infraestrutura como código (IaC) HashiCorp que ajuda você a criar e gerenciar recursos na nuvem e no local.

Práticas recomendadas

Épicos

TarefaDescriptionHabilidades necessárias

Exclua recursos identificados pela etiqueta do AFT.

  1. Faça login na conta gerencial do AFT com permissões de administrador.

  2. Abra o console do AWS Resource Groups.

  3. Selecione a região em AWS Control Tower que foi implantado.

  4. No painel de navegação, selecione Editor de etiquetas.

  5. Em Tipos de recursos, escolha Todos os tipos de recursos compatíveis.

  6. Em Etiquetas, digite managed_by como a chave da etiqueta e AFT como o valor da etiqueta.

  7. Escolha Recursos de pesquisa.

    Esta pesquisa exibe todos os recursos que foram criados pelo AFT.

  8. Identifique os nomes dos recursos e exclua-os por meio dos consoles de serviço correspondentes. Por exemplo, para excluir recursos do Parameter Store:

    1. Abra o console do AWS Systems Manager.

    2. No painel de navegação, selecione Repositório de parâmetros.

    3. Na caixa de pesquisa, clique para exibir o menu suspenso, escolha Nome, selecione igual a, e depois digite /aft.

    4. Exclua os parâmetros em lotes de dez. (Esse é o número máximo que você pode excluir simultaneamente.)

      Para a versão 1.12.2 do AFT, haverá aproximadamente 62 recursos do Parameter Store para excluir. Todos os nomes de parâmetros começarão com /aft.

    No entanto, nem todos os recursos podem ser identificados por AWS Resource Groups. Nas próximas etapas, você encontrará e excluirá os recursos restantes.

Administrador da AWS, AWS DevOps, DevOps engenheiro

Exclua os perfis do IAM.

  1. Faça login na conta gerencial do AFT com permissões de administrador.

  2. Abra o console do IAM.

  3. Exclua esses perfis na ordem listada (lembre que a ordem é importante devido às dependências):

    • aft-*

    • AWSAFTAdmin

    • AWSAFTExecution

    • AWSAFTService

    • codebuild_trigger_role

Administrador da AWS, AWS DevOps, DevOps engenheiro

Exclua o cofre AWS Backup de backup.

  1. Abra o console do AWS Backup.

  2. Localize o cofre de backup chamado aws_backup_vault.

  3. Confirme que o cofre não contém nenhum backup ativo.

  4. Exclua aws_backup_vault.

Administrador da AWS, AWS DevOps, DevOps engenheiro

Exclua CloudWatch os recursos da Amazon.

  1. Abra o console do CloudWatch .

  2. Exclua os seguintes recursos na ordem listada:

    1. Barramento de eventos: exclua aws_cloudwatch_event_bus.

    2. Logs: pesquise pelo prefixo AFT e exclua todos os grupos de logs relacionados.

    3. Definições de consulta: exclua as seguintes consultas:

      • Customization Logs by Account ID

      • Customization Logs by Customization Request ID

Administrador da AWS, AWS DevOps, DevOps engenheiro

Exclua AWS KMS recursos.

  1. Alterne para a região secundária, que atua como backend para o rastreamento do estado do AFT.

  2. Abra o console do AWS KMS.

  3. Exclua o alias chamado AFT.

Administrador da AWS, AWS DevOps, DevOps engenheiro
TarefaDescriptionHabilidades necessárias

Exclua os buckets do S3.

  1. Faça login na conta de arquivamento de logs com permissões de administrador.

  2. Abra o console Amazon S3.

  3. Esvazie os seguintes buckets:

    • aws-aft-logs-471112509802-us-east-1

    • aws-aft-s3-access-logs-471112509802-us-east-1

    (Substitua 111122223333 pelo ID da sua conta.)

  4. Exclua os dois buckets.

Administrador da AWS, AWS DevOps, DevOps engenheiro

Exclua os perfis do IAM.

  1. Abra o console do IAM.

  2. Verifique se os seguintes perfis não estão sendo usados por nenhum serviço ativo:

    • AWSAFTService

    • AWSAFTExecution

  3. Exclua os dois perfis.

Administrador da AWS, AWS DevOps, DevOps engenheiro
TarefaDescriptionHabilidades necessárias

Exclua os perfis do IAM.

  1. Faça login na conta de auditoria com permissões de administrador.

  2. Abra o console do IAM.

  3. Verifique se os seguintes perfis não estão sendo usados por nenhum serviço ativo:

    • AWSAFTService

    • AWSAFTExecution

  4. Exclua os dois perfis.

Administrador da AWS, AWS DevOps, DevOps engenheiro
TarefaDescriptionHabilidades necessárias

Exclua os perfis do IAM.

  1. Faça login na conta AWS Control Tower de gerenciamento com permissões de administrador.

  2. Abra o console do IAM.

  3. Verifique se os seguintes perfis não estão sendo usados por nenhum serviço ativo:

    • AWSAFTService

    • AWSAFTExecution

    • aft-control-tower-events-rule

  4. Exclua os três perfis.

Administrador da AWS, AWS DevOps, DevOps engenheiro

Exclua EventBridge as regras.

  1. Abra o EventBridge console da Amazon.

  2. No painel de navegação à esquerda, escolha Rules (Regras).

  3. Localize e selecione a regra chamada aft-capture-ct-events.

  4. Escolha Excluir e confirme a exclusão quando solicitado.

Administrador da AWS, AWS DevOps, DevOps engenheiro

Solução de problemas

ProblemaSolução

A desanexação do gateway da internet não foi bem-sucedida.

Durante a exclusão dos recursos identificados pela etiqueta AFT, se você enfrentar esse problema ao desanexar ou excluir o gateway da internet, deverá primeiro excluir os endpoints da VPC:

  1. Faça login na conta gerencial do AFT e, em seguida, abra o console da Amazon VPC.

  2. No painel de navegação, na lista Filtrar por VPC, escolha a VPC chamada. aft-management-vpc

  3. No painel de navegação, escolha Endpoints.

  4. Selecione os endpoints associados à VPC aft-management-vpc.

    • Verifique novamente a coluna ID da VPC antes da exclusão para evitar remover os endpoints incorretos.

    • Tenha cuidado para excluir apenas os endpoints associados à VPC do AFT.

  5. Escolha Actions (Ações), Delete VPC endpoints (Excluir endpoints da VPC).

  6. Na caixa de diálogo de confirmação, digite excluir e, em seguida, escolha Excluir.

  7. Aguarde o status do endpoint ser alterado para Excluído.

    A exclusão pode demorar alguns minutos para ser concluída.

Você não consegue encontrar as CloudWatch consultas especificadas.

Se você não conseguir encontrar CloudWatch as consultas que foram criadas pelo AFT, siga estas etapas:

  1. Faça login na conta de gerenciamento do AFT e abra o CloudWatch console.

  2. No painel de navegação, em Logs, escolha Logs Insights.

  3. No canto superior direito, escolha o ícone Consultas salvas e de amostra.

    Agora você deve conseguir visualizar as consultas AFT. Para obter uma captura de tela, consulte a seção Informações adicionais.

  4. Selecione as consultas apresentadas a seguir e, em seguida, escolha Ações e, então, Excluir para removê-las.

    • Customization Logs by Account ID

    • Customization Logs by Customization Request ID

Recursos relacionados

Mais informações

Para visualizar as consultas AFT no painel do CloudWatch Logs Insights, escolha o ícone de consultas salvas e de amostra no canto superior direito, conforme ilustrado na captura de tela a seguir:

Acessando as consultas do AFT no painel do CloudWatch Logs Insights.