Princípios | Arquitetura centralizada | Implementação | DNS e encaminhamento | Segurança e custos | Vantagens, limitações e escolha
🚀 Conclusão: que Endpoint devem ser partilhados
Para partilhar Endpoint de serviços AWS entre várias VPC, a combinação empresarial mais completa é Central Endpoint VPC + Interface VPC Endpoint + Transit Gateway + Route 53 Profiles. Com poucas VPC, o Transit Gateway pode ser substituído por VPC Peering.
- 🎯 Interface Endpoint: adequado para centralização. SSM, KMS, ECR, STS, Secrets Manager, CloudWatch, SNS, SQS e serviços semelhantes podem ficar numa VPC dedicada e ser acedidos de forma privada pelas restantes.
- 🪣 Gateway Endpoint: os Endpoint de S3 e DynamoDB não se estendem a outras VPC. Devem ser criados em cada Application VPC e não têm um custo adicional de Endpoint.
- 🌐 Conectividade: para duas ou três VPC, Peering costuma ser suficiente. À medida que o ambiente cresce, Transit Gateway torna-se mais fácil de gerir.
- 🧭 DNS: em instalações novas, Route 53 Profiles disponibiliza o Private DNS dos Interface Endpoint centralizados às VPC de aplicações.
- 🌍 Regiões: em produção, utilize um Endpoint Hub por região AWS para evitar latência, transferência entre regiões e falhas interdependentes.
🧩 O que significa realmente “partilhar um Endpoint”
O recurso Endpoint não é partilhado diretamente. O Interface Endpoint permanece na Shared Endpoint VPC e cria ENI com IP privados nas sub-redes selecionadas. As outras VPC encaminham o tráfego para essas ENI através de Transit Gateway ou VPC Peering.
- Considere VPC-A, VPC-B e VPC-C com
10.1.0.0/16,10.2.0.0/16e10.3.0.0/16, enquanto Endpoint VPC utiliza10.100.0.0/16. - Se 20 VPC implementarem 15 Interface Endpoint em duas zonas de disponibilidade, existirão 20 × 15 × 2 = 600 ENI de Endpoint.
- Ao centralizar, os mesmos serviços são implementados apenas em duas AZ na Endpoint VPC, reduzindo recursos fixos, políticas e objetos de manutenção.
- Os Interface Endpoint são cobrados por hora e AZ, além do processamento de dados; a duplicação torna-se mais dispendiosa à medida que o número de VPC aumenta.
🏗️ Arquitetura centralizada recomendada
🗺️ Topologia principal
AWS SERVICES
▲
│
PrivateLink
│
┌──────────────────────────┐
│ NETWORK ACCOUNT │
│ Central Endpoint VPC │
│ │
│ AZ-A AZ-C │
│ VPCE ENI VPCE ENI│
│ │
│ SSM / KMS / STS / ECR │
│ Secrets / CloudWatch │
│ SNS / SQS / EC2 API │
│ Route 53 Profile │
└────────────┬─────────────┘
│
Transit Gateway
┌──────────┼───────────┐
│ │ │
PROD DEV TEST
│ │ │
VPC-A VPC-B VPC-C
│ │ │
S3 Gateway S3 Gateway S3 Gateway
DDB Gateway DDB Gateway DDB Gateway
🧰 Quatro serviços essenciais
- AWS PrivateLink / Interface VPC Endpoint: fornece ligação privada entre as VPC de aplicações e os serviços regionais da AWS.
- AWS Transit Gateway: liga Endpoint VPC a várias VPC e controla a conectividade através de TGW Route Table.
- Route 53 Profiles: centraliza o Private DNS dos Interface Endpoint e associa a configuração a várias VPC.
- AWS RAM: partilha Transit Gateway e Route 53 Profiles entre contas AWS.
🏢 Quando existe um centro de dados local
Se a rede local chega à AWS por VPN ou Direct Connect, adicione um Route 53 Resolver Inbound Endpoint para que o DNS empresarial encaminhe nomes de serviços AWS para o Resolver. Evite consultar diretamente o endereço “CIDR + 2” de uma VPC.
⚙️ Passo 1: criar Endpoint VPC e conectividade
1️⃣ Criar uma Endpoint VPC dedicada
- Crie
Endpoint-VPCnuma conta de rede ou serviços partilhados. O exemplo utiliza10.100.0.0/16. - Em produção, utilize pelo menos duas AZ: por exemplo,
10.100.10.0/24em AZ-a e10.100.20.0/24em AZ-c, com uma Endpoint Subnet em cada uma. - Um Interface Endpoint cria uma ENI em cada Endpoint Subnet selecionada. Duas AZ reduzem o impacto de uma falha de zona.
- Não coloque os Endpoint partilhados numa Application VPC arbitrária, pois a propriedade da rede, os limites de acesso e a resposta a incidentes ficariam ligados a uma carga específica.
2️⃣ Adicionar Transit Gateway ou VPC Peering
- Crie um Transit Gateway central e attachments para Endpoint VPC, VPC-A, VPC-B e VPC-C.
- Num ambiente com várias contas, partilhe o TGW através de AWS RAM e permita que as contas de aplicações criem ou aceitem os attachments.
- Com apenas duas ou três Application VPC, ligue cada uma diretamente a Endpoint VPC por Peering para evitar mais uma camada de rede e os custos de TGW.
- Peering não é transitivo. Quando aumentam as ligações e rotas, o modelo hub-and-spoke de TGW torna-se mais prático.
🛣️ Passo 2: configurar encaminhamento bidirecional
3️⃣ Route Table das VPC de aplicações
Cada subnet que precise dos Endpoint deve encaminhar o CIDR de Endpoint VPC para TGW. Exemplo de VPC-A:
Destination Target
10.1.0.0/16 local
10.100.0.0/16 tgw-xxxx
VPC-B e VPC-C também enviam 10.100.0.0/16 para TGW. Com Peering, o Target será a respetiva Peering Connection.
4️⃣ Rotas de retorno na Endpoint VPC
A Route Table associada às Endpoint Subnet tem de devolver o tráfego a todas as VPC:
10.100.0.0/16 local
10.1.0.0/16 tgw-xxxx
10.2.0.0/16 tgw-xxxx
10.3.0.0/16 tgw-xxxx
Os dois sentidos são obrigatórios. Sem rota de retorno, o TCP SYN é enviado, o SYN/ACK não regressa e a ligação termina por timeout.
5️⃣ TGW Route Table
- As rotas associadas às Application VPC devem enviar
10.100.0.0/16para o attachment de Endpoint VPC. - No lado de Endpoint VPC,
10.1.0.0/16,10.2.0.0/16e10.3.0.0/16apontam para os respetivos attachments. - Pode utilizar Route Propagation ou Static Route. Quando é necessária segmentação rigorosa, várias TGW Route Table controlam explicitamente a propagação.
🔌 Passo 3: criar os Interface Endpoint
6️⃣ Criar Endpoint de serviços na Endpoint VPC
- Abra VPC → Endpoints → Create endpoint e selecione o serviço regional; por exemplo,
com.amazonaws.ap-northeast-1.ssmpara Systems Manager em Tóquio. - Selecione
Endpoint-VPCe as sub-redesendpoint-subnet-aeendpoint-subnet-c. - Com Route 53 Profiles, mantenha Private DNS ativado. Os SDK e a CLI continuam a usar nomes padrão que resolvem para endereços privados de PrivateLink.
- Crie apenas os Endpoint necessários às cargas reais. Cada Interface Endpoint acrescenta custos por hora/AZ e processamento de dados.
📦 Endpoint frequentemente centralizados
- Systems Manager: SSM, SSM Messages e EC2 Messages.
- Serviços essenciais: EC2 API, KMS, Secrets Manager, STS, Lambda e EventBridge.
- Monitorização e mensagens: CloudWatch, CloudWatch Logs, SNS e SQS.
- Contentores e distribuição: ECR API, ECR DKR, ECS e CodeArtifact.
- Acesso de aplicações: serviços compatíveis com PrivateLink, como
execute-apide API Gateway.
🔐 Passo 4: Security Group e Endpoint Policy
7️⃣ Endpoint Security Group
- Crie um grupo dedicado às ENI de Endpoint, como
sg-vpce-central. - Permita HTTPS TCP 443 apenas a partir dos CIDR necessários, como
10.1.0.0/16,10.2.0.0/16e10.3.0.0/16. - Não permita
0.0.0.0/0em produção. Restrinja a origem por organização, ambiente, sensibilidade ou Endpoint dedicado. - Os Security Group são stateful, mas regras de saída, NACL e equipamentos intermédios também devem permitir TCP 443 e o tráfego de retorno.
8️⃣ Endpoint Policy
- A política define que identidades podem executar que ações através desse ponto de entrada. Full Access é útil para testar a ligação, não como configuração permanente de produção.
- Um Endpoint KMS pode ser limitado a contas, IAM Role e KMS Key autorizados. Nos restantes serviços, aplique condições e restrições de recursos suportadas.
- A autorização efetiva combina Endpoint Policy, IAM Policy, SCP, Resource Policy e políticas de bucket ou de chave.
- As políticas de privilégio mínimo tornam-se complexas quando muitas VPC partilham o Endpoint e continuam sujeitas a limites de tamanho. Separe Endpoint por ambiente ou fronteira de confiança quando necessário.
🌐 Passo 5: centralizar DNS com Route 53 Profiles
A conectividade IP não garante que a aplicação use o Endpoint. As aplicações chamam nomes padrão como ssm.ap-northeast-1.amazonaws.com; esse nome deve resolver para IP privados das ENI de Endpoint, e não para endereços públicos do serviço.
- Abra Route 53 → Profiles → Create Profile e crie, por exemplo,
central-vpce-profile. - Um Route 53 Profile pode associar Private Hosted Zones, Resolver Rules, DNS Firewall, Interface VPC Endpoint e Resolver Query Logging.
- Na página VPC endpoints do Profile, associe SSM, KMS, STS, ECR, Secrets Manager e outros Endpoint centrais. A consola seleciona até 10 Endpoint existentes por operação; repita ou use a API para mais.
- Associe VPC-A, VPC-B e VPC-C ao Profile. Uma VPC só pode estar associada a um Profile de cada vez, por isso planeie primeiro os recursos DNS existentes.
- Depois, as consultas de nomes padrão devolvem endereços privados do VPCE central, como
10.100.10.25e10.100.20.41.
🏢 Partilha de DNS numa Landing Zone com várias contas
🧭 Responsabilidades das contas
AWS Organizations
Network Account
├ Endpoint VPC
├ Transit Gateway
└ Route 53 Profile
Production Account
├ VPC-A
└ VPC-B
Development Account
├ VPC-C
└ VPC-D
Security Account
└ VPC-E
- Network Account partilha o Route 53 Profile através de AWS RAM com Production, Development, Security e outras contas da mesma região.
- Cada conta associa as suas VPC ao Profile partilhado e reutiliza o DNS central sem criar uma Private Hosted Zone por serviço e VPC.
- A divisão adapta-se a AWS Organizations, Control Tower e Landing Zone: a equipa de rede gere VPCE, DNS, TGW e registos; as equipas de aplicações gerem computação e workloads.
🔄 Percurso completo de um pedido
① Resolução DNS
Quando uma EC2 com 10.1.10.50 em VPC-A chama Secrets Manager, o SDK consulta secretsmanager.ap-northeast-1.amazonaws.com. Route 53 Resolver e o Profile associado devolvem os IP privados do VPCE central.
EC2 → Route 53 Resolver → Route 53 Profile
→ VPCE Private DNS → 10.100.10.25 / 10.100.20.25
② Percurso de rede
10.1.10.50
│ HTTPS 443
▼
VPC-A Route Table
▼
Transit Gateway
▼
Endpoint VPC
▼
VPCE ENI 10.100.10.25
▼
AWS PrivateLink
▼
Secrets Manager
O acesso ao serviço permanece privado e não requer NAT Gateway nem Internet Gateway. O pedido ainda tem de passar pelos controlos de rede e de identidade.
🪣 Porque não é possível centralizar Gateway Endpoint
Interface Endpoint e Gateway Endpoint são recursos diferentes. Os segundos destinam-se sobretudo a S3 e DynamoDB, não utilizam AWS PrivateLink e não estendem a conectividade para fora da VPC.
- Os recursos do outro lado de VPN, VPC Peering, Transit Gateway ou Direct Connect não podem usar um Gateway Endpoint de S3 ou DynamoDB localizado em Endpoint VPC.
- Crie Endpoint de S3 e DynamoDB separadamente em VPC-A, VPC-B e VPC-C, associando as Route Table locais.
- Gateway Endpoint não tem custo adicional, pelo que centralizá-lo também não traria poupança fixa.
- O padrão empresarial é Interface Endpoint centralizados e Gateway Endpoint distribuídos.
📦 ECR: uma dependência frequentemente esquecida
- Para obter imagens ECR a partir de ECS, EKS ou EC2, normalmente são necessários
ecr.apieecr.dkr. - As camadas das imagens são armazenadas em S3, pelo que o download pode falhar mesmo com ambos os Interface Endpoint ECR.
- O desenho habitual centraliza ECR API e ECR DKR e cria um S3 Gateway Endpoint em cada Application VPC.
- No diagnóstico, verifique DNS, ambos os Endpoint ECR, S3 Gateway Endpoint, rotas, Security Group e permissões IAM da tarefa ou instância.
🕰️ Modelo anterior: Private Hosted Zone
Uma opção que continua válida
- Desative Private DNS no Interface Endpoint central.
- Crie manualmente uma Route 53 Private Hosted Zone com o nome do serviço, como
ssm.ap-northeast-1.amazonaws.com. - Crie um registo A Alias para o VPCE e associe a PHZ a Endpoint VPC e a todas as Application VPC.
Porque deixou de ser a primeira opção
- Com 30 Endpoint e 100 VPC, as associações manuais formam uma enorme matriz de gestão.
- Route 53 Profiles associa os VPCE centrais uma vez e aplica a configuração a muitas VPC, reduzindo zonas, registos e associações repetidos.
- A abordagem anterior continua útil em sistemas existentes ou requisitos DNS especiais; em projetos novos, avalie primeiro Route 53 Profiles.
🌍 Ambiente com várias regiões
- É tecnicamente possível usar Inter-Region TGW Peering ou VPC Peering entre regiões para uma VPC de Singapura aceder à Endpoint VPC de Tóquio.
- O percurso acrescenta transferência entre regiões e latência, e a maioria dos Endpoint de serviços AWS também é regional.
- Em produção é mais robusto criar um Endpoint Hub e um Route 53 Profile em cada região.
- A separação reduz o raio de impacto e clarifica DNS, encaminhamento, dependências e limites de conformidade.
💶 Modelo de custos: centralizar nem sempre fica mais barato
Componentes de custo centralizados
- Custo horário dos Transit Gateway attachments.
- Processamento de dados de Transit Gateway.
- Custo horário de Interface Endpoint por AZ implementada.
- Processamento de PrivateLink e possíveis transferências entre AZ ou regiões.
Quando a poupança é mais provável
A centralização é mais vantajosa com muitas VPC, muitos Endpoint necessários e pouco tráfego por VPC. Com 50 VPC, 20 serviços e duas AZ, o modelo distribuído pode criar 2.000 ENI, contra cerca de 40 no centralizado, embora seja sempre necessário somar os custos de TGW.
Tráfego elevado requer contas separadas
Se uma VPC movimentar vários TB de S3 por dia, encaminhar tudo por TGW para um Interface Endpoint S3 pode não compensar. Um S3 Gateway Endpoint local é normalmente melhor. Como os preços variam por região e ao longo do tempo, prepare o orçamento com os valores regionais atuais e compare todos os montantes em euros.
✅ Principais vantagens
- 📉 Menos recursos: evita duplicar as mesmas ENI de Endpoint em muitas VPC.
- 🧰 Operação centralizada: políticas, grupos, etiquetas, Private DNS e registos são geridos em Network Account.
- 🔐 Base de segurança uniforme: a equipa central gere VPCE, DNS, TGW e acesso; as equipas aplicacionais concentram-se em EC2, ECS, EKS, Lambda e RDS.
- 🌐 Menor dependência de NAT: serviços compatíveis com PrivateLink deixam de precisar de NAT Gateway e API pública.
- 🏢 Boa adequação multicuenta: alinha-se com AWS Organizations, Control Tower, RAM e Landing Zone.
⚠️ Principais limitações
- 💥 Maior raio de impacto: uma falha no Endpoint central, DNS ou política pode afetar várias VPC.
- 📜 Políticas mais complexas: várias contas, roles e recursos aumentam a política de privilégio mínimo e aproximam os limites de tamanho.
- 🧭 Cadeia DNS mais longa: Profiles, TGW, VPCE central e associações entre contas adicionam componentes.
- 💸 Custo adicional de TGW: o processamento pode tornar-se relevante com muito tráfego Application VPC → TGW → VPCE.
- 🔒 Menor isolamento: capacidade, grupos e políticas são partilhados, exigindo mais monitorização, controlo de alterações e segmentação.
📊 Endpoint central versus Endpoint por VPC
| Categoria | Central Endpoint | Endpoint por VPC |
|---|---|---|
| Quantidade e custo fixo | Menos recursos e melhor escala com mais VPC | Cresce com VPC e serviços |
| Custo de rede | Inclui attachments e processamento de TGW | O VPCE local não requer TGW |
| DNS e operação | Mais componentes, mas governação central | Simples por VPC, mas gestão dispersa |
| Isolamento e impacto | Controlos partilhados e maior impacto | Maior isolamento; a falha fica normalmente numa VPC |
| Endpoint Policy | Central, mas complexa entre contas | Limites claros e políticas mais simples |
| Melhor aplicação | Landing Zone grande e multicuenta | Ambiente pequeno ou carga isolada de grande volume |
🧭 Escolha pelo número de VPC
1–3 VPC
- Endpoint em cada VPC oferece o desenho mais simples e melhor isolamento.
- Para reduzir a quantidade, use Peering + Route 53 Profile + uma pequena Central Endpoint VPC.
- Normalmente não compensa introduzir TGW apenas para partilhar poucos Endpoint.
5–20 VPC
- Avalie seriamente Endpoint VPC + TGW + Route 53 Profiles.
- Compare custos fixos duplicados, custos de TGW e tráfego real.
- Mantenha Endpoint dedicados para cargas de grande volume ou forte isolamento, formando um modelo híbrido.
20 a centenas de VPC
- Network Account costuma centralizar TGW ou Cloud WAN, Endpoint VPC, Profiles, Resolver, Network Firewall e DNS Firewall.
- Faça a gestão com infraestrutura como código, etiquetas, registos, monitorização e controlo de alterações.
- Separe por região, ambiente e fronteira de confiança para evitar dependência de uma única plataforma central.
🏁 Modelo de implementação recomendado
- 🔌 Interface Endpoint: centralizados numa Endpoint VPC dedicada.
- 🪣 Gateway Endpoint de S3 e DynamoDB: um em cada Application VPC.
- 🛣️ Rede: Peering com poucas VPC; Transit Gateway em ambientes médios e grandes.
- 🌐 DNS: Route 53 Profiles em novas instalações; PHZ anterior apenas quando necessário.
- 🏢 Várias contas: gestão em Network Account e partilha por AWS RAM.
- 🌍 Várias regiões: um Endpoint Hub por região.
- 🔐 Segurança: combine Security Group, Endpoint Policy, IAM, SCP e Resource Policy.
- 💶 Custos: compare o custo total em euros com os números reais de serviços, VPC, AZ e volume de dados.
🛠️ Ordem de diagnóstico quando o acesso falha
- DNS: execute
dig ssm.ap-northeast-1.amazonaws.come confirme que devolve um IP privado como10.100.x.x, não um IP público. - Route Table da Spoke VPC: confirme que o CIDR de Endpoint VPC aponta para TGW ou Peering.
- TGW Route Table: verifique ida e retorno entre Application VPC e Endpoint VPC.
- Route Table de Endpoint VPC: confirme o retorno a partir das Endpoint Subnet.
- VPCE Security Group: permita TCP 443 a partir dos CIDR aplicacionais.
- NACL: reveja entrada, saída e portas efémeras.
- Endpoint Policy: confirme que principal, ação e recurso não são negados.
- IAM / Resource Policy / SCP: por fim, reveja identidade, recursos e controlos organizacionais.
Seguir a ordem “resolução → rotas → controlos de rede → autorização” permite localizar a causa muito mais depressa do que saltar entre páginas da consola.