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á.
Crie uma arquitetura IPAM hierárquica e multirregional usando o Terraform AWS
Donny Schreiber, Amazon Web Services
Resumo
O Gerenciamento de endereços IP (IPAM) é um componente essencial do gerenciamento de rede e se torna cada vez mais complexo à medida que as organizações escalam sua infraestrutura de nuvem. Sem o IPAM adequado, as organizações correm o risco de conflitos de endereço IP, desperdício de espaço de endereço e solução complexa de problemas que podem levar a interrupções e tempo de inatividade das aplicações. Esse padrão demonstra como implementar uma solução IPAM abrangente para ambientes AWS corporativos usando HashiCorp o Terraform. Ele ajuda as organizações a criar uma arquitetura IPAM hierárquica e multirregional que facilita o gerenciamento centralizado de endereços IP em toda a organização. Contas da AWSAWS
Este padrão ajuda você a implementar o Gerenciador de endereços IP da Amazon VPC com uma sofisticada hierarquia de quatro camadas: pool de nível superior, pools regionais, pools de unidades de negócios e pools específicos do ambiente. Essa estrutura oferece suporte à governança adequada de endereços IP e, ao mesmo tempo, permite a delegação do gerenciamento de IP às equipes apropriadas da organização. A solução usa AWS Resource Access Manager (AWS RAM) para compartilhar facilmente os pools do IP Address Manager em toda a organização. AWS RAM centraliza e padroniza as especificações do IPAM, que as equipes podem usar em todas as contas gerenciadas.
Com este padrão você pode fazer o seguinte:
Automatize a alocação de endereços IP entre Regiões da AWS unidades de negócios e ambientes.
Impor as políticas de rede organizacional por meio da validação programática.
Dimensionar a infraestrutura de rede com eficiência à medida que os requisitos de negócios evoluem.
Reduzir a sobrecarga operacional por meio do gerenciamento centralizado de espaços de endereço IP.
Acelerar as implantações de workloads nativas da nuvem com alocação de faixa CIDR de autoatendimento.
Evitar conflitos de endereço por meio de controles e validação baseados em políticas.
Pré-requisitos e limitações
Pré-requisitos
Um ou mais Contas da AWS, gerenciado como uma organização em AWS Organizations.
Um hub de rede ou conta gerencial de rede que servirá como administrador delegado do Gerenciador de Endereços IP.
AWS Command Line Interface (AWS CLI), instalado e configurado.
Terraform versão 1.5.0 ou posterior instalado
. AWS Provedor para Terraform, configurado
. Permissões para gerenciar o Gerenciador de Endereços IP e as nuvens privadas virtuais (VPCs), configuradas em AWS Identity and Access Management (IAM). AWS RAM
Limitações
O Gerenciador de Endereços IP está sujeito às cotas de serviço. A cota de serviço padrão para pools é de 50 por escopo. Executar essa implantação em seis regiões, duas unidades de negócios e quatro ambientes criaria 67 pools. Portanto, um aumento de cota pode ser necessário.
Modificar ou excluir os pools do Gerenciador de Endereços IP após a alocação dos recursos pode causar problemas de dependência. É necessário liberar as alocações antes para que o grupo possa ser excluído.
No Gerenciador de Endereços IP, o monitoramento de recursos pode sofrer um pequeno atraso ao refletir as alterações nos recursos. Esse atraso pode ser de aproximadamente 20 minutos.
O Gerenciador de Endereços IP não pode impor automaticamente a exclusividade do endereço IP em diferentes escopos.
As marcações personalizadas devem seguir as Práticas recomendadas de marcação da AWS. Por exemplo, cada chave deve ser única e não pode começar com
aws:.Existem considerações e limitações ao integrar o Gerenciador de endeçoes IP a contas fora da sua organização.
Arquitetura
Arquitetura de destino
Configuração do Gerenciador de endereços IP e hierarquia do pool
O diagrama abaixo mostra os constructos lógicos da arquitetura de destino. Um escopo é o contêiner de nível mais alto no Gerenciador de endereços IP. Cada escopo representa o espaço de endereços IP de uma única rede. Os pools são coleções de intervalos de endereços IP contíguos (ou intervalos CIDR) dentro do escopo. Os grupos ajudam você a organizar os endereços IP de acordo com suas necessidades de roteamento e segurança. Este diagrama mostra quatro níveis hierárquicos de pools: um pool de nível superior, pools regionais, pools de unidades de negócios e pools de ambientes.

Essa solução estabelece uma hierarquia clara dos pools do Gerenciador de Endereços IP:
O pool de nível superior abrange todo o espaço de endereços IP organizacionais, como
10.176.0.0/12.Os pools regionais são para alocações específicas da região, como para
10.176.0.0/15eus-east-1.Os pools de unidades de negócios são alocações específicas de domínio dentro de cada um. Região da AWS Por exemplo, a unidade de negócios financeiros da Região
us-east-1pode ter10.176.0.0/16.Os pools de ambientes são alocações específicas para diferentes ambientes. Por exemplo, a unidade de negócios financeiros da Região
us-east-1pode ter10.176.0.0/18como um ambiente de produção.
Essa topologia de implantação distribui geograficamente os recursos do Gerenciador de endereços IP, mantendo o controle centralizado. Seguem abaixo seus recursos:
O IP Address Manager é implantado em um único sistema primário Região da AWS.
Regiões adicionais são registradas como regiões operacionais, nas quais o Gerenciador de endereços IP pode gerenciar recursos.
Cada região operacional recebe um pool de endereços dedicado do pool de nível superior.
Os recursos em todas as regiões operacionais são gerenciados centralmente por meio do Gerenciador de endereços IP na região principal.
Cada pool regional tem uma propriedade local vinculada à sua região para ajudá-lo a alocar recursos adequadamente.
Validação avançada do intervalo CIDR
Essa solução foi projetada para impedir a implantação de configurações inválidas. Quando você implanta os pools por meio do Terraform, o seguinte é validado durante a fase de planejamento do Terraform:
Valida se todos os intervalos CIDR do ambiente estão contidos nos intervalos CIDR da unidade de negócios principal
Confirma que todos os intervalos de CIDR da unidade de negócios estão contidos em seus intervalos de CIDR regionais principais
Verifica se todos os intervalos CIDR regionais estão contidos nos intervalos CIDR de nível superior
Verifica a sobreposição de intervalos CIDR dentro do mesmo nível hierárquico
Valida o mapeamento adequado dos ambientes para suas respectivas unidades de negócios
Alocação do intervalo CIDR
O diagrama a seguir mostra um exemplo de como desenvolvedores ou administradores podem criar novos endereços IP VPCs e alocá-los a partir dos níveis do pool.

O diagrama mostra o seguinte fluxo de trabalho:
Por meio do Console de gerenciamento da AWS AWS CLI, ou por meio da infraestrutura como código (IaC), um desenvolvedor ou administrador solicita a próxima faixa de CIDR disponível no pool do
AY3ambiente.O Gerenciador de endereços IP aloca o próximo intervalo CIDR disponível nesse pool para a VPC
AY3-4. Esse intervalo CIDR não pode mais ser usado.
Automação e escala
Essa solução foi projetada para ser escalável da seguinte forma:
Expansão regional: adicione novas regiões estendendo a configuração do Terraform com entradas adicionais do pool regional.
Crescimento da unidade de negócios: ofereça suporte para novas unidades de negócios adicionando-as ao mapa de configuração da BU.
Flexibilidade do ambiente: configure diferentes tipos de ambiente, como desenvolvimento ou produção, com base nas necessidades organizacionais.
Suporte para várias contas — compartilhe pools em todas as contas da sua organização por meio AWS RAM de.
Provisionamento automatizado de VPC: Integre-se aos fluxos de trabalho de provisionamento de VPC para automatizar a alocação de intervalos de CIDR.
A estrutura hierárquica também permite diferentes escalas de delegação e controle, como as seguintes:
Os administradores de rede podem gerenciar os pools regionais e de nível superior.
As equipes de TI da unidade de negócios podem ter delegado o controle de seus respectivos pools.
As equipes de aplicações podem consumir endereços IP de seus pools de ambientes designados.
nota
Você também pode integrar essa solução ao AWS Control Tower Account Factory for Terraform (AFT). Para obter mais informações, consulte Integração com o AFT na seção Informações adicionais deste padrão.
Ferramentas
Serviços da AWS
CloudWatchA Amazon ajuda você a monitorar as métricas dos seus AWS recursos e dos aplicativos em que você executa AWS em tempo real.
AWS Command Line Interface (AWS CLI) é uma ferramenta de código aberto que ajuda você a interagir Serviços da AWS por meio de comandos em seu shell de linha de comando.
AWS Organizationsé um serviço de gerenciamento de contas que ajuda você a consolidar várias Contas da AWS em uma organização que você cria e gerencia centralmente.
AWS Resource Access Manager (AWS RAM) ajuda você a compartilhar seus recursos com segurança Contas da AWS para reduzir a sobrecarga operacional e fornecer visibilidade e auditabilidade.
A Amazon Virtual Private Cloud (Amazon VPC) 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 Gerenciador de endereços IP é um recurso da Amazon VPC. Ele ajuda você a planejar, rastrear e monitorar endereços IP para suas AWS cargas de trabalho.
Outras ferramentas
O HashiCorp Terraform
é uma ferramenta de infraestrutura como código (IaC) que ajuda a provisionar e gerenciar recursos e infraestrutura de nuvem por meio de código.
Repositório de código
O código desse padrão está disponível no Sample Terraform Implementation for Hierarchical IPAM
Módulo raiz: orquestração de implantação e variáveis de entrada.
Módulo IPAM: implementação principal da arquitetura descrita neste padrão.
Módulo de marcações: marcação padronizada para todos os recursos.
Práticas recomendadas
Considere as seguintes práticas recomendadas para o planejamento de rede:
Planeje primeiro: planeje minuciosamente seu espaço de endereço IP antes da implantação. Para obter mais informações, consulte Planejar o provisionamento de endereços IP.
Evite intervalos CIDR sobrepostos: certifique-se de que os intervalos CIDR em cada nível não se sobreponham.
Reserve espaço no buffer: sempre aloque intervalos de CIDR maiores do que os necessários imediatamente para acomodar o crescimento.
Documente a alocação de endereços IP: mantenha a documentação da sua estratégia de alocação de endereços IP.
Considere as seguintes práticas recomendadas de implantação:
Comece pela não produção: implante primeiro em ambientes que não sejam de produção.
Use o gerenciamento de estado do Terraform: implemente armazenamento e bloqueio de estados remotos. Para obter mais informações, consulte State storage and locking
na documentação do Terraform. Implemente o controle de versão: controle a versão de todo o código do Terraform.
Implemente a CI/CD integração — use pipelines de integração contínua e entrega contínua (CI/CD) para implantações reproduzíveis.
Considere as seguintes práticas recomendadas operacionais:
Habilite a importação automática: configure um pool do Gerenciador de Endereços IP para descobrir e importar automaticamente os recursos existentes. Siga as instruções em Editar um pool IPAM para ativar a importação automática.
Monitore a utilização de endereços IP: configure alarmes para os limites de utilização de endereços IP. Para obter mais informações, consulte Monitorar IPAM com a Amazon CloudWatch.
Audite regularmente: audite periodicamente o uso e a conformidade de endereços IP. Para obter mais informações, consulte Rastrear uso de endereços IP no IPAM.
Limpe as alocações não utilizadas: libere as alocações de endereços IP quando os recursos forem desativados. Para obter mais informações, consulte Desprovisionamento CIDRs de um pool.
Considere as seguintes práticas recomendadas de segurança:
Implemente o privilégio mínimo: use perfis do IAM com as permissões mínimas necessárias. Para obter mais informações, consulte Práticas recomendadas de segurança no IAM e Gerenciamento de identidade e acesso no IPAM.
Use políticas de controle de serviço — Implemente políticas de controle de serviço (SCPs) para impor o uso do IP Address Manager em sua organização. Para obter mais informações, consulte Impor o uso do IPAM para criação de VPC com. SCPs
Controle o compartilhamento de recursos — Gerencie cuidadosamente o escopo do compartilhamento de recursos do IP Address Manager em AWS RAM. Para obter mais informações, consulte Compartilhar um pool IPAM usando AWS RAM.
Imponha a marcação: implemente a marcação obrigatória para todos os recursos relacionados ao Gerenciador de Endereços IP. Para obter mais informações, consulte Estratégia de marcação na seção Informações adicionais.
Épicos
| Tarefa | Description | Habilidades necessárias |
|---|---|---|
Ative AWS Organizations os recursos. | Certifique-se de que AWS Organizations todos os recursos estejam ativados. Para obter instruções, consulte Habilitando todos os recursos de uma organização AWS Organizations na AWS Organizations documentação. | Administrador da AWS |
Ative o compartilhamento de recursos em AWS RAM. | Usando o AWS CLI, digite o seguinte comando para habilitar o compartilhamento de AWS RAM recursos para sua organização:
Para obter mais informações, consulte Habilitar o compartilhamento de recursos AWS Organizations na AWS RAM documentação. | Administrador da AWS |
Designe um administrador para o Gerenciador de Endereços IP. | Na conta de gerenciamento da organização, usando o AWS CLI, digite o seguinte comando, onde
notaNormalmente, uma conta de rede ou hub de rede é usado como administrador delegado do Gerenciador de endereços IP. Para obter mais informações, consulte Integrar IPAM com contas em uma AWS organização na documentação do IP Address Manager. | Administrador da AWS |
| Tarefa | Description | Habilidades necessárias |
|---|---|---|
Defina a arquitetura da rede. | Defina e documente sua arquitetura de rede, incluindo os intervalos de CIDR para regiões, unidades de negócios e ambientes. Para obter mais informações, consulte Planejar o provisionamento de endereços IPna documentação do Gerenciador de endereços IP. | Engenheiro de rede |
Clonar o repositório. |
| DevOps engenheiro |
Configure as variáveis. |
| Engenheiro de rede, Terraform |
Implante os recursos do Gerenciador de Endereços IP. |
| Terraform |
Valide a implantação. |
| AWS geral, engenheiro de rede |
| Tarefa | Description | Habilidades necessárias |
|---|---|---|
Crie uma VPC. | Siga as etapas em Criar uma VPC na documentação da Amazon VPC. Ao chegar à etapa de escolher um intervalo CIDR para a VPC, aloque o próximo disponível de um de seus grupos regionais, de unidades de negócios e ambientes. | AWS geral, administrador de rede, engenheiro de rede |
Valide a alocação do intervalo CIDR. |
| AWS geral, administrador de rede, engenheiro de rede |
Monitore o Gerenciador de endereços IP. | Configure o monitoramento e os alarmes relacionados à alocação de recursos do Gerenciador de endereços IP. Para obter mais informações e instruções, consulte Monitorar o IPAM com a Amazon CloudWatch e monitorar o uso do CIDR por recurso na documentação do IP Address Manager. | AWS geral |
Imponha o uso do Gerenciador de endereços IP. | Crie uma política de controle de serviço (SCP) AWS Organizations que exija que os membros da sua organização usem o IP Address Manager ao criar uma VPC. Para obter instruções, consulte Impor o uso do IPAM para criação de VPC SCPs na documentação do IP Address Manager. | AWS geral, administrador da AWS |
Solução de problemas
| Problema | Solução |
|---|---|
O Terraform falha com o recurso Gerenciador de endereços IP não encontrado | Certifique-se de que a conta do administrador do IP Address Manager esteja devidamente delegada e que seu AWS provedor esteja autenticado nessa conta. |
A alocação do intervalo CIDR falha | Verifique se o intervalo CIDR solicitado se encaixa no intervalo disponível do pool do Gerenciador de endereços IP e não se sobrepõe às alocações existentes. |
AWS RAM problemas de compartilhamento | Verifique se o compartilhamento de recursos está habilitado para sua AWS organização. Verifique se o principal correto, o Amazon Resource Name (ARN) da organização, é usado no AWS RAM compartilhamento. |
Erros de validação de hierarquia de pools | Certifique-se de que os intervalos CIDR do pool secundário estejam adequadamente contidos nos intervalos CIDR do pool principal e não se sobreponham aos grupos irmãos. |
Limite de cota do Gerenciador de endereços IP excedido | Solicite um aumento de cota para pools do Gerenciador de endereços IP. Para obter mais informações, consulte Solicitando um Aumento de Cota no Guia do Usuário do Service Quotas. |
Recursos relacionados
AWS service (Serviço da AWS) documentação
AWS postagens no blog
Vídeos e tutoriais
Mais informações
Integração com o AFT
Você pode integrar essa solução ao AWS Control Tower Account Factory for Terraform (AFT) para garantir que as contas recém-provisionadas recebam automaticamente as configurações de rede adequadas. Ao implantar essa solução IPAM em sua conta do hub de rede, novas contas criadas por meio do AFT podem fazer referência aos pools compartilhados do Gerenciador de Endereços IP quando você cria. VPCs
O exemplo de código a seguir demonstra a integração do AFT em uma personalização de conta usando o AWS Systems Manager Parameter Store:
# Get the IP Address Manager pool ID from Parameter Store data "aws_ssm_parameter" "dev_ipam_pool_id" { name = "/org/network/ipam/finance/dev/pool-id" } # Create a VPC using the IP Address Manager pool resource "aws_vpc" "this" { ipv4_ipam_pool_id = data.aws_ssm_parameter.dev_ipam_pool_id.value ipv4_netmask_length = 24 tags = { Name = "aft-account-vpc" } }
Estratégia de marcação
A solução implementa uma estratégia abrangente de marcação para facilitar o gerenciamento de recursos. O exemplo de código a seguir demonstra como ele é usado:
# Example tag configuration module "tags" { source = "./modules/tags" # Required tags product_name = "enterprise-network" feature_name = "ipam" org_id = "finance" business_unit = "network-operations" owner = "network-team" environment = "prod" repo = "https://github.com/myorg/ipam-terraform" branch = "main" cost_center = "123456" dr_tier = "tier1" # Optional tags optional_tags = { "project" = "network-modernization" "stack_role" = "infrastructure" } }
Essas marcações são aplicadas automaticamente a todos os recursos do Gerenciador de endereços IP. Isso facilita a governança consistente, a alocação de custos e o gerenciamento de recursos.