

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

# Automatize as alocações IPv4 IPAM CIDR do Amazon VPC para novos usando o AFT Contas da AWS
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft"></a>

*Kien Pham e Alex Pazik, Amazon Web Services*

## Resumo
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-summary"></a>

Esse padrão mostra como automatizar as alocações de CIDR do Amazon VPC IP Address Manager (IPAM IPv4 ) para novos Contas da AWS usando o [Account AWS Control Tower Factory](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) for Terraform (AFT). Isso é feito usando uma personalização em nível de conta que aloca um bloco IPv4 CIDR do IPAM para uma nova nuvem privada virtual (VPC) usando o módulo. `aft-account-customizations`

Com o IPAM, você pode organizar, atribuir, monitorar e auditar endereços IP em grande escala, permitindo que você planeje, rastreie e monitore facilmente endereços IP para suas AWS cargas de trabalho. Você pode [criar um IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html) e um pool de IPAM para usar na alocação de um bloco IPv4 CIDR para uma nova VPC durante o processo de venda automática da conta.

## Pré-requisitos e limitações
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-prereqs"></a>

**Pré-requisitos **
+ Um ativo Conta da AWS com AWS Control Tower habilitado em um AFT suportado [Região da AWS](https://docs.aws.amazon.com/controltower/latest/userguide/region-how.html)e implantado
+ Um [provedor de sistema de controle de versão (VCS)](https://github.com/aws-ia/terraform-aws-control_tower_account_factory?tab=readme-ov-file#input_vcs_provider) compatível BitBucket, como GitHub, e Enterprise GitHub 
+ Interface de linha de comandos (CLI) do Terraform [instalada](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli)
+ Um ambiente de runtime capaz de executar o módulo do Terraform responsável por instalar o AFT
+ AWS Command Line Interface (AWS CLI) [instalado](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) e [configurado](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-quickstart.html)

**Limitações**
+ Alguns Serviços da AWS não estão disponíveis em todos Regiões da AWS. Para conferir a disponibilidade de uma região, consulte [AWS Services by Region](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Para endpoints específicos, consulte [Service endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) e clique no link correspondente ao serviço desejado.

**Versões do produto**
+ [AWS Control Tower landing zone](https://docs.aws.amazon.com/controltower/latest/userguide/2022-all.html#version-3.0) versão 3.0 ou posterior, anterior à versão 4.0
+ [AFT](https://github.com/aws-ia/terraform-aws-control_tower_account_factory), versão 1.13.0 ou versões posteriores, mas anterior à versão 2.0.0
+ Terraform OSS, versão 1.2.0 ou versões posteriores, mas anterior à versão 2.0.0
+ [Terraform AWS Provider](https://registry.terraform.io/providers/hashicorp/aws/latest/docs) (`terraform-provider-aws`) versão 5.11.0 ou posterior, anterior à versão 6.0.0
+ [Módulo do Terraform para IPAM](https://github.com/aws-ia/terraform-aws-ipam) (`aws-ia/ipam/aws`), versão 2.1.0 ou versões posteriores

## Arquitetura
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-architecture"></a>

O diagrama apresentado a seguir ilustra o fluxo de trabalho e os componentes deste padrão.

![\[Fluxo de trabalho para criar a alocação IPAM IPv4 CIDR do Amazon VPC.\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/images/pattern-img/986cfc7d-058b-4490-9029-6cd1eadd1dd2/images/f90b84dd-0420-460e-ac0f-9f22b4a9fdc4.png)


O fluxo de trabalho consiste nas seguintes tarefas principais:

1. **Alterações de gatilho** — As alterações na personalização do Terraform e do IPAM são enviadas ao GitHub repositório e enviadas. Essa tarefa aciona o AWS CodeBuild pipeline automaticamente.

1. **Automatize a construção** — Dentro CodeBuild, vários projetos de construção são AWS Step Functions acionados.

1. **Aplique personalização** — Step Functions CodeBuild coordena para planejar e aplicar as alterações do Terraform. Essa tarefa usa o módulo AFT Terraform para coordenar a atribuição de IP do pool IPAM à conta vendida. AWS 

## Ferramentas
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-tools"></a>

**Serviços da AWS**
+ O [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) é um serviço de compilação totalmente gerenciado que permite compilar o código-fonte, realizar testes de unidade e produzir artefatos preparados para a implantação.
+ O [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) ajuda você a modelar e configurar rapidamente os diferentes estágios de uma versão de software, além de automatizar as etapas necessárias para a implantação contínua de alterações.
+ [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)orquestra as capacidades de vários outros [Serviços da AWS](https://docs.aws.amazon.com/controltower/latest/userguide/integrated-services.html), incluindo AWS Organizations AWS Service Catalog, e. Centro de Identidade do AWS IAM Ele pode ajudar você a configurar e administrar um ambiente AWS com várias contas, seguindo as melhores práticas prescritivas.
+ O [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) é um serviço de banco de dados NoSQL totalmente gerenciado que fornece performance rápida, previsível e escalável.
+ O [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) é um serviço de computação que ajuda a executar código sem exigir provisionamento ou gerenciamento de servidores. Ele executa o código somente quando necessário e dimensiona automaticamente, assim, você paga apenas pelo tempo de computação usado.
+ [AWS SDK para Python (Boto3)](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html)é um kit de desenvolvimento de software que ajuda você a integrar seu aplicativo, biblioteca ou script Python com o. Serviços da AWS
+ [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html)ajuda você a gerenciar centralmente catálogos de serviços de TI aprovados. AWS Os usuários finais podem implantar rapidamente somente os serviços de TI aprovados de que precisam, seguindo as restrições definidas pela organização.
+ [AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html)é um serviço de orquestração sem servidor que ajuda você a combinar AWS Lambda funções e outras Serviços da AWS para criar aplicativos essenciais para os negócios.
+ [A Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) ajuda você a lançar AWS recursos em uma rede virtual que você definiu. Essa rede virtual é semelhante a uma rede tradicional que você operaria no próprio datacenter, com os benefícios de usar a infraestrutura escalável da AWS. O Amazon VPC IP Address Manager (IPAM) é um recurso de VPC que facilita o planejamento, o rastreamento e o monitoramento de endereços IP para suas cargas de trabalho. AWS 

**Outras ferramentas**
+ [GitHub](https://docs.github.com/)é uma plataforma para desenvolvedores que os desenvolvedores podem usar para criar, armazenar, gerenciar e compartilhar seu código.
+ [HashiCorp O Terraform](https://www.terraform.io/) é uma ferramenta de infraestrutura como código (IaC) que ajuda você a criar e gerenciar recursos na nuvem e no local. Isso inclui componentes de baixo nível, como instâncias de computação, armazenamento e rede, e componentes de alto nível, como entradas de DNS e recursos de software como serviço (SaaS).
+ [Python](https://www.python.org/) é uma linguagem de programação de computador de uso geral. É possível usá-lo para criar aplicações, automatizar tarefas e desenvolver serviços na [Nuvem AWS](https://aws.amazon.com/developer/language/python/).

**Repositório de código**
+ O código desse padrão está disponível no repositório GitHub [AWS Control Tower Account Factory for Terraform](https://github.com/aws-ia/terraform-aws-control_tower_account_factory).

## Práticas recomendadas
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-best-practices"></a>

Ao implantar o AFT, recomendamos seguir as práticas recomendadas para garantir uma implementação segura, eficiente e bem-sucedida. As diretrizes e recomendações principais para implementar e operar o AFT incluem: 
+ **Análise completa das entradas**: analise e compreenda cuidadosamente cada [entrada](https://github.com/aws-ia/terraform-aws-control_tower_account_factory). A configuração correta das entradas é essencial para a instalação e o funcionamento do AFT.
+ **Atualizações regulares de modelos** — Mantenha os modelos atualizados com os AWS recursos mais recentes e as versões do Terraform. As atualizações regulares ajudam você a aproveitar as novas funcionalidades e manter a segurança.
+ **Versionamento**: especifique a versão do módulo do AFT e, se possível, realize testes em uma implantação separada do AFT.
+ **Escopo**: use o AFT apenas para implantar barreiras de proteção e personalizações para a infraestrutura. Não o use para implantar sua aplicação.
+ **Análise de código e validação**: o pipeline do AFT exige uma configuração do Terraform que tenha passado por análise de código e validação. Execute a análise de código, a validação e os testes antes de enviar a configuração para os repositórios do AFT.
+ **Módulos do Terraform** — Crie código reutilizável do Terraform como módulos e sempre especifique as versões do Terraform e do AWS provedor de acordo com os requisitos da sua organização.

## Épicos
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-epics"></a>

### Configure e configure seu AWS ambiente
<a name="set-up-and-configure-your-aws-environment"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Implantar AWS Control Tower. | Instale e configure AWS Control Tower em seu AWS ambiente para garantir o gerenciamento e a governança centralizados do seu Contas da AWS. Para obter mais informações, [consulte Introdução AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-with-control-tower.html) na AWS Control Tower documentação. | Administrador de nuvem | 
| Implante o AWS Control Tower Account Factory for Terraform (AFT). | Configure o AFT em uma nova conta gerencial dedicada do AFT. Para obter mais informações, consulte Configurar [e iniciar seu AWS Control Tower Account Factory for Terraform](https://docs.aws.amazon.com/controltower/latest/userguide/aft-getting-started.html#aft-configure-and-launch) na AWS Control Tower documentação. | Administrador de nuvem | 
| Conclua as etapas necessárias após a implantação do AFT. | Depois que a implantação da infraestrutura AFT estiver concluída, conclua as etapas em [Etapas de pós-implantação](https://docs.aws.amazon.com/controltower/latest/userguide/aft-post-deployment.html) na AWS Control Tower documentação. | Administrador de nuvem | 

### Criação do IPAM
<a name="create-ipam"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Delegue um administrador para o IPAM. | Para delegar uma conta de administrador IPAM em sua AWS organização, use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html)Como alternativa, você pode usar AWS CLI e executar o seguinte comando:<pre>aws ec2 enable-ipam-organization-admin-account \<br />    --delegated-admin-account-id 012345678901</pre>Para obter mais informações, consulte [Integrar o IPAM com contas em uma AWS organização](https://docs.aws.amazon.com/vpc/latest/ipam/enable-integ-ipam.html) na documentação da Amazon VPC [enable-ipam-organization-admine](https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-ipam-organization-admin-account.html) -account na AWS CLI Referência de comando. Para continuar usando o IPAM, você deve fazer login na conta de administrador delegado. O perfil de SSO ou as variáveis de AWS ambiente especificadas na próxima etapa devem permitir que você faça login nessa conta e conceda permissões para criar um pool regional e de nível superior do IPAM. | Administrador da AWS | 
| Crie um grupo regional e de nível superior do IPAM. | O GitHub repositório desse padrão contém um modelo do Terraform que você pode usar para criar seu pool de nível superior e pool regional do IPAM. Em seguida, você pode compartilhar os pools com uma organização, unidade organizacional (OU) ou outro recurso usando AWS Resource Access Manager (AWS RAM). Conta da AWSUse as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html)Anote o ID do grupo de recursos apresentado depois da criação. O ID será necessário ao realizar a solicitação da conta. Se você esquecer o ID do grupo de recursos, poderá obtê-lo posteriormente no Console de gerenciamento da AWS. Certifique-se de que os pools criados CIDRs não se sobreponham a nenhum outro pool em sua região de trabalho. Você pode criar um grupo sem um CIDR, mas não poderá usar o grupo para alocações até que você tenha provisionado um CIDR para ele. Você pode adicionar CIDRs a um pool a qualquer momento editando o pool. | Administrador da AWS | 

### Integração do IPAM com o AFT
<a name="integrate-ipam-with-aft"></a>


| Tarefa | Description | Habilidades necessárias | 
| --- | --- | --- | 
| Inicie a criação da personalização da conta. | Para iniciar uma nova personalização de conta, execute os seguintes comandos no seu terminal:<pre># Default name for customization repo<br />cd aft-account-customizations # Replace with your actual repo name if different than the default<br />mkdir -p APG-AFT-IPAM/terraform # Replace APG-AFT-IPAM with your desired customization name<br />cd APG-AFT-IPAM/terraform</pre> | DevOps engenheiro | 
| Crie o arquivo `aft-providers.jinja`. | Adicione código dinâmico ao arquivo `aft-providers.jinja` que especifique o backend e o provedor do Terraform a serem utilizados.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps engenheiro | 
| Crie o arquivo `backend.jinja`. | Adicione código dinâmico ao arquivo `backend.jinja` que especifique o backend e o provedor do Terraform a serem utilizados.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps engenheiro | 
| Crie o arquivo `main.tf`. | Crie um novo `main.tf` arquivo e adicione o código que define duas fontes de dados que recuperam dois valores de AWS Systems Manager (`aws_ssm`) e cria a VPC.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps engenheiro | 
| Crie o arquivo `variables.tf`. | Crie um arquivo `variables.tf` que declare as variáveis usadas pelo módulo do Terraform.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps engenheiro | 
| Crie o arquivo `terraform.tfvars`. | Crie um arquivo `terraform.tfvars` que defina os valores das variáveis que serão transferidas para o arquivo `main.tf`.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps engenheiro | 
| Crie o arquivo `outputs.tf`. | Crie um novo `outputs.tf` arquivo que exponha alguns valores em CodeBuild.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps engenheiro | 
| Confirme a personalização. | Para confirmar a nova personalização para o repositório de personalizações de conta, execute os seguintes comandos:<pre># Assumes you are still in the /terraform directory<br />cd .. # Skip if you are in the account customization root directory (APG-AFT-IPAM)<br />git add .<br />git commit -m "APG customization"<br />git push origin</pre> | DevOps engenheiro | 
| Aplique a personalização. | Adicione código ao arquivo `account-requests.tf` para solicitar uma nova conta com a personalização para a conta recém-criada. Os campos personalizados criam parâmetros do Systems Manager na conta de venda que são necessários para criar a VPC com o CIDR alocado pelo IPv4 IPAM correto.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | AWS DevOps | 
| Valide a personalização. | Faça login na conta fornecida recentemente e verifique se a personalização foi aplicada com êxito.Use as seguintes etapas:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/prescriptive-guidance/latest/patterns/automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft.html) | DevOps engenheiro | 

## Solução de problemas
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-troubleshooting"></a>


| Problema | Solução | 
| --- | --- | 
|  Você recebe falhas na criação ou no gerenciamento de recursos devido a permissões insuficientes. |  Analise as funções e políticas AWS Identity and Access Management (IAM) anexadas ao Step Functions e a outros serviços envolvidos na implantação. CodeBuild Confirme que todos têm as permissões necessárias. Se houver problemas de permissão, ajuste as políticas do IAM para conceder o acesso necessário. | 
|  Você atinge as AWS service (Serviço da AWS) cotas durante a implantação. |  Antes de implantar o pipeline, verifique as AWS service (Serviço da AWS) cotas de recursos como buckets do Amazon Simple Storage Service (Amazon S3), funções e funções do IAM. AWS Lambda Se necessário, solicite aumento das cotas. Para obter mais informações, consulte [AWS service (Serviço da AWS) Quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) na *Referência geral da AWS *. | 

## Recursos relacionados
<a name="automate-amazon-vpc-ipam-ipv4-cidr-allocations-for-new-aws-accounts-by-using-aft-resources"></a>

**AWS service (Serviço da AWS) documentação**
+ [AWS Control Tower Guia do usuário](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)
+ [Como funciona o IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/how-it-works-ipam.html)
+ [Práticas recomendadas de segurança no IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)
+ [AWS service (Serviço da AWS) cotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)

**Outros recursos**
+ [Documentação do Terraform AWS Provider](https://registry.terraform.io/providers/hashicorp/aws/latest/docs)