O blog da AWS
Melhores práticas do Amazon VPC IP Address Manager (IPAM)
O gerenciamento de endereços IP (Internet Protocol) é um componente essencial de planejamento e gerenciamento de rede, e a criação de um esquema de endereçamento escalável permite que sua rede AWS e sua rede híbrida se expandam, acomodando as necessidades de suas cargas de trabalho. A análise cuidadosa de como seu espaço de endereço IP é alocado minimiza o risco de sobreposição de blocos de endereçamento (CIDR) e de esgotamento do endereçamento IP.
Além disso, planejar como o espaço IP é alocado ajuda você a criar seus ambientes de infraestrutura para suportar a configuração ideal de regras de roteamento, bem como a agregação consistente de blocos CIDR. A alocação de endereços IP não sobrepostos e o rastreamento dos ambientes já sobrepostos, o planejamento de uma atribuição consistente de endereços IP com base nos ambientes, Organização ou unidade de negócios e o monitoramento da utilização se tornam partes essenciais da escalabilidade de uma rede global na AWS. Além disso, aquisições e alienações afetam a forma como você gerencia endereços IP em nível organizacional, e ter o plano de endereçamento IP correto pode ajudar a acelerar esses processos.
Neste post, vamos nos concentrar nas melhores práticas e considerações que você pode usar ao criar seu plano de endereçamento IP, com a ajuda do Amazon Virtual Private Cloud IP Address Manager (VPC IPAM), um serviço da AWS que simplifica o planejamento, o rastreamento e o monitoramento de endereços IP para suas cargas de trabalho da AWS.
Pré-requisitos
Presumimos que você esteja familiarizado com os recursos e serviços fundamentais de rede da AWS. Nosso foco estará nas melhores práticas de IPAM do Amazon VPC. Portanto, vamos analisar as construções mais comuns do IPAM:
- Escopo: um escopo é a construção de nível superior dentro de um IPAM e representa o endereçamento IP de uma única rede. Ao criar um IPAM, você obtém dois escopos padrão: escopo público e escopo privado. Os escopos públicos são usados para todas as cargas de trabalho públicas e os escopos privados são usados para todas as cargas de trabalho privadas.
- Pool: Você pode ter vários pools dentro de cada escopo do IPAM. Um pool contém um ou mais blocos CIDR.
- Alocação: Uma alocação é uma atribuição estática do CIDR a um recurso específico. Você pode criar uma alocação para uma VPC específica ou para todas as VPCs atribuídas a um departamento/função específico da sua empresa. Além disso, você pode usar alocações personalizadas de IPAM para qualquer carga de trabalho implantada fora da AWS.
Os diagramas da postagem usam o intervalo de endereçamento IPv6 RFC3849 de 2001:db8::/32, apenas para fins ilustrativos. As Amazon VPCs oferecem suporte a endereços IPv6 Global Unicast (GUA), portanto, você deve configurar os endereços IPv6 apropriados em seu ambiente. Vamos começar então a explorar algumas das melhores práticas do Amazon VPC IPAM para redes AWS e híbridas.
1. Escalando o gerenciamento de endereços IP com VPC IPAM e AWS Organizations
Organizações diferentes podem ter modelos operacionais diferentes que podem direcionar a VPC, a conectividade de rede e a propriedade da infraestrutura de aplicativos. Por exemplo, a equipe de rede pode ser responsável pela conectividade com o AWS Transit Gateway, o AWS Cloud WAN ou o AWS Direct Connect, enquanto as equipes de aplicativos são donas de sua infraestrutura, incluindo as VPCs. Outra opção é a equipe de rede possuir e manter todos os serviços de rede, junto com os VPCs. Isso se reflete na estrutura da AWS Organizations. Portanto, dependendo do seu modelo operacional, as contas podem criar VPCs usando pools IPAM compartilhados com elas, ou essa tarefa é gerenciada centralmente.
O Amazon VPC IPAM pode ser integrado à estrutura da sua Organização. Para alocação de endereços IP, é recomendável que você imponha a separação de deveres e permissões criando uma conta de administrador de IPAM para sua Organização. Aqui estão algumas considerações sobre essa conta:
- Ela deve ser membro da Organização e não pode ser a conta raiz (root) da Organização.
- Ela administrará a criação de escopos e pools de IPAM e suas políticas de alocação/recarga de CIDR gerenciadas internamente para pools de IPAM.
- Pode ser sua conta centralizada de infraestrutura/conectividade de rede ou uma conta separada de administrador do IPAM para uma separação mais profunda das tarefas.
Amazon VPC IPAM e Control Tower
Você pode usar o AWS Control Tower para configurar e controlar com segurança a estrutura da sua Organização e o account vending. Com a Control Tower, você deve fornecer à conta central de administrador de rede, ou conta de infraestrutura, as permissões corretas do AWS Identity and Access Management (IAM) para criar uma infraestrutura de rede para sua implantação de várias contas. Você também deve conceder as permissões necessárias do IAM a essa conta para realizar operações de IPAM na VPC. Para obter mais detalhes sobre as permissões necessárias do VPC IPAM, consulte a documentação. Além disso, esta publicação fornece mais detalhes sobre o uso do IPAM com a AWS Control Tower.
2. Melhores práticas de endereçamento IP e design de pool IPAM
Esquema de endereçamento IP hierárquico e sumarizável
Um esquema hierárquico de endereçamento IP permite que você siga uma política de alocação de IP que melhor atenda às suas necessidades. Por exemplo, criar CIDRs IP regionais e depois dividir cada CIDR regional em CIDRs específicos em departamentos. Portanto, você pode resumir facilmente seus CIDRs regionalmente, simplificando o gerenciamento de rede e gerenciando melhor as cotas de seus serviços. Além disso, um esquema de endereçamento IP hierárquico e contíguo permite que você configure facilmente construções de segmentação de rede, por exemplo, grupos de segurança (SGs), listas de controle de acesso à rede (NACLs) e regras de firewall.
Ao criar um pool VPC IPAM, você provisiona um CIDR para o pool. O pool atribui espaço dentro desse CIDR para Alocações. Você pode criar sua própria hierarquia de IPAM, com vários pools, começando com alguns modelos de segmentação padrão e depois adaptando-os às suas necessidades. O primeiro pool será o de alto nível. Lá, você pode provisionar um CIDR com uma máscara de rede maior e segmentá-lo ainda mais. Por exemplo, o pool de alto nível pode ser um bloco CIDR para toda a empresa, que você pode segmentar com base em regiões ou em vários departamentos, como desenvolvimento e teste, usando grupos adicionais:
- Ambiente AWS de pool de alto nível (10.0.0.0/8)
- Pool regional na região us-west-1 da AWS (10.0.0.0/16)
- Pool de desenvolvimento (10.0.0.0/24)
- Pool de produção (10.0.1.0/24)
- Pool regional na região us-west-1 da AWS (10.0.0.0/16)
A figura a seguir mostra um exemplo de implantação em uma única região. O pool de nível 1 é alocado para a região us-west-1, com dois sub-pools: um para cada ambiente de desenvolvimento e produção:
Figura 1: Um exemplo de configuração hierárquica no VPC IPAM em uma região
Você também pode realizar a segmentação por linhas de negócios, produtos e outros. A hierarquia que você usa é orientada pelo seu modelo corporativo de design e permissões, e o IPAM do VPC não o limita a apenas um cenário. Portanto, você pode usá-lo para organizar os CIDRs da melhor maneira para sua organização. Você pode criar uma hierarquia de pool VPC IPAM com até uma profundidade de 10. Para expandir nosso exemplo para uma implantação multirregional, precisamos configurar mais pools regionais e dedicados ao ambiente. A figura a seguir mostra um exemplo de configuração de IPAM para três regiões.
Figura 2: Um exemplo de configuração hierárquica e resumida no VPC IPAM em três regiões
Gerenciando prefixos públicos IPv4 e IPv6
Com CIDRs IPv4 e IPv6 públicos, a AWS anuncia endereços IP públicos regionalmente. Ao planejar suas hierarquias de pool público, é recomendável que seus pools IPv4 regionais sejam /24 ou maiores e seus pools regionais de IPv6 sejam /48 ou maiores. Ao criar o pool, suas configurações definem se ele pode ser usado para o endereçamento direto de recursos e a região para a qual o pool se destina. Quando você cria e compartilha os pools no escopo público do IPAM da VPC, as contas da sua Organização podem usá-los para alocação de IPv4 Elástico para seus recursos ou prefixos IPv6 para suas VPCs.
Você pode anunciar ou retirar de forma independente os prefixos associados aos seus pools públicos no VPC IPAM. Isso permite que você traga facilmente seu próprio IP (BYOIP) para a AWS, pois você pode configurar separadamente o(s) pool(s) do VPC IPAM, provisionar o(s) CIDR(s) e alocar endereços IP aos recursos, sem interromper os anúncios de prefixo existentes na Internet. Mais detalhes sobre as etapas do BYOIP podem ser encontrados nos tutoriais do VPC IPAM BYOIP.
Definindo regras de alocação do CIDR
Você pode usar o VPC IPAM para definir regras relacionadas ao uso de CIDRs de pool IPAM para VPCs em seu ambiente. Elas são chamadas de regras de alocação e determinam se os recursos estão em conformidade ou não.
É recomendável criar regras de alocação que estejam de acordo com seu modelo de negócios. Por exemplo, você pode definir uma regra de alocação afirmando que somente VPCs com a tag ‘prod’ podem obter CIDRs do pool IPAM chamado Produção. Além disso, uma regra pode impor que os CIDRs alocados a partir de um pool não possam ser maiores do que /24. Nesse caso, um recurso ainda pode ser criado usando um CIDR maior que /24 desse pool, se o espaço estiver disponível. No entanto, isso viola a regra de alocação no pool e, por sua vez, o IPAM sinaliza esse recurso como estando em não conformidade.
Sub-rede de endereços IP em nível de VPC
Depois de criar o VPC IPAM e os pools correspondentes para sua implantação, recursos como VPCs podem usar o VPC IPAM para alocar os CIDRs corretos. A próxima etapa é planejar a alocação do CIDR de uma VPC em várias zonas de disponibilidade (AZs) e sub-redes. No IPv4, o endereçamento geralmente é determinado pelo número de hosts ou recursos planejados para uma sub-rede. No IPv6, é recomendável utilizar um método de alocação esparsa que permita manter um buffer de prefixos IPv6 não utilizados entre diferentes AZs, tipos de sub-redes, etc. Isso permite acomodar facilmente o crescimento, mantendo simplificado os limites de agregação. Um exemplo de alocação de prefixo IPv6 em nível de VPC é apresentado na figura a seguir.
Figura 3: Um exemplo de alocação de IPv6 em um nível de VPC
3. Integrando o VPC IPAM com seu ambiente atual da AWS
Ao criar seus pools, é recomendável permitir que o IPAM importe automaticamente quaisquer recursos preexistentes para os respectivos pools de IPAM. Os recursos descobertos pelo IPAM são marcados como gerenciados se estiverem contidos em um CIDR de um pool de IPAM e estiverem sendo monitorados pelo IPAM quanto à possível sobreposição de CIDR e conformidade com as regras de alocação de grupos. Caso contrário, eles assumem como padrão não gerenciados e ainda serão monitorados para sobreposição de endereços IP. A figura a seguir mostra uma VPC não gerenciada que foi descoberta pelo VPC IPAM:
Figura 4: Descoberta pelo IPAM de VPC não gerenciada e sem sobreposição
A importação de recursos para o IPAM não afeta o estado das cargas de trabalho nas VPCs, nem a conectividade, e fornece informações sobre o estado atual do seu cenário de endereçamento IP. Se o IPAM descobrir recursos com CIDRs IPv4 privados, os CIDRs de recursos serão importados para o escopo privado padrão e não aparecerão em nenhum escopo privado adicional criado por você. Além disso, observe que você não pode ignorar recursos no escopo público.
4. Usando o IPAM com várias redes da AWS não conectadas
O agrupamento de endereços IPv4 privados em diferentes escopos de IPAM pode ajudá-lo a controlar a sobreposição de recursos em seu ambiente. Quando você cria uma instância IPAM, dois escopos padrão (um privado e um público) são criados para você. Você pode criar escopos privados adicionais, para os quais você pode mapear ambientes usando CIDRs sobrepostos, como aquisições ou unidades de negócios. A conectividade com esses ambientes deve ser avaliada minuciosamente, pois a decisão de continuar usando CIDRs sobrepostos pode impactar os requisitos de negócios.
É recomendável criar escopos privados separados para cada um dos seus ambientes desconectados. Isso permitirá que você monitore o plano de endereçamento IP para os vários ambientes não conectados do VPC IPAM, sem gerar conflitos e alarmes de sobreposição no IPAM. Quando o IPAM descobre recursos com CIDRs IPv4 privados, eles são importados para o escopo privado padrão e não aparecem em nenhum escopo privado adicional criado por você. Você pode mover os CIDRs do escopo privado padrão para outro escopo privado para mapear seu ambiente até o design do escopo de destino.
Em um ambiente em que não há necessidade de criar escopos privados diferentes, você pode usar uma estrutura hierárquica de pool para fornecer a segmentação VPC IPAM necessária. Vejamos um exemplo da configuração de pools do IPAM para dois escopos sobrepostos, para uma empresa e uma aquisição, nas duas figuras a seguir:
Escopo privado do IPAM da empresa AnyCompany:
Figura 5: Configuração de vários escopos no IPAM, no escopo da empresa AnyCompany
Escopo privado do IPAM da empresa adquirida:
Figura 6: Configuração de vários escopos no IPAM, escopo da empresa adquirida
A criação de escopos privados separados oferece visibilidade das estruturas de endereçamento IP das duas empresas, mesmo que estejam sobrepostas. Em seguida, você pode usar essas informações para criar o modelo correto de conectividade e roteamento para conectar essas empresas após a aquisição.
Uma instância VPC IPAM é criada com um escopo público padrão, e você não pode criar outras. Os endereços IPv4 públicos e GUA IPv6 são anunciados pela Internet e não podem se sobrepor. Portanto, não há necessidade de vários escopos. Para segmentar sua alocação pública de prefixos IPv4 e IPv6, você pode gerenciar pools hierárquicos dentro de um escopo.
5. Amazon VPC IPAM e design de rede híbrida
Para gerenciar as alocações IPv4 privadas da sua rede híbrida, é recomendável criar alocações IPAM personalizadas que possam representar CIDRs presentes em seus data centers locais. Isso garante que os CIDRs reservados para suas cargas de trabalho que não são da AWS não sejam atribuídos acidentalmente a nenhum recurso da AWS e evita o risco de problemas de sobreposição de IP. A figura a seguir mostra um exemplo em que 172.16.16.0/20 representa CIDRs on-premises e é reservado no pool IPAM da VPC usando uma alocação personalizada.
Figura 7: Um exemplo de alocação personalizada, representando CIDRs on-premises.
Para o gerenciamento centralizado de IPv4 e IPv6 públicos de sua área de rede híbrida, você pode usar a mesma estratégia de alocação personalizada dentro do escopo público do IPAM. Depois que o provisionamento público do CIDR for concluído, você poderá criar alocações para reservar espaço manualmente em seus pools de IPAM para representar suas redes híbridas voltadas para a Internet. O IPAM gerenciará a reserva e indicará se algum CIDR descoberto em seu ambiente da AWS se sobrepõe ao seu espaço IP on-premises.
Pontos importantes
- O Amazon VPC IPAM pode gerenciar e monitorar CIDRs IPv4 privados e CIDRs IPv4/IPv6 públicos de sua propriedade. Ele só pode monitorar (não gerenciar) o espaço IP público de propriedade da Amazon.
- Você pode criar uma política de controle de serviço (SCP) no AWS Organizations que exige que os membros da sua organização usem o IPAM ao criar uma VPC. Exemplos de SCPs podem ser encontrados na documentação.
- O compartilhamento do AWS Resource Access Manager (RAM) só está disponível na região local da AWS do seu IPAM. Você deve criar o compartilhamento na região da AWS em que o IPAM está, não na região do pool do IPAM. Detalhes sobre o uso de RAM para compartilhar pools VPC IPAM podem ser encontrados na documentação.
Conclusão
O Amazon VPC IPAM fornece as ferramentas necessárias para gerenciar sua presença global de endereçamento IP. Neste post, discutimos as melhores práticas para usar o VPC IPAM e como você pode utilizá-lo para criar planos escaláveis de alocação de IP, gerenciar ambientes existentes, endereçamento IP sobreposto e criar um plano de IP bem projetado para o crescimento de suas cargas de trabalho na AWS. Se você tiver dúvidas sobre essa postagem, inicie um novo tópico no AWS re:POST ou entre em contato com o AWS Support.
Este artigo foi traduzido do Blog da AWS em Inglês.
Sobre os autores
Ankit Chadha is a Networking Specialist Solutions Architect supporting Global Accounts at AWS. He has over 13 years of experience with designing and building various Networking solutions like MPLS backbones, overlay/underlay based data-centers and campus networks. In his spare time, Ankit enjoys playing cricket, earning his cat’s trust, and reading biographies.
Alexandra Huides is a Principal Networking Specialist Solutions Architect within Strategic Accounts at Amazon Web Services. She focuses on helping customers with building and developing networking architectures for highly scalable and resilient AWS environments. Alex is also a public speaker for AWS, and she focuses on helping customers adopt IPv6 and design highly scalable network architectures. Outside work, she loves sailing, especially catamarans, traveling, discovering new cultures, and reading.
Michelle Perez is AWS Solutions Architect for SMB Brazil. In addition to helping her customers build following AWS best practices, she also has depth on the topic of networking services.
Monica Fernandez is a Solutions Architect for AWS Public Sector and helps NPO customers in Spain. Monica’s specialty is Networking and communications, it is her passion and her background experience. Telecommunications engineer with more than 20 years of experience in IT, working in Telco, startups and consultancy sectors and now having fun at AWS.
Revisor
Andre Mello é Arquiteto de Soluções AWS