Descreva sua arquitetura de rede VPC
A Amazon VPC possibilita que você defina uma rede virtual logicamente isolada na Nuvem AWS, conhecida como uma nuvem privada virtual (VPC). Crie VPCs distintas para isolar a infraestrutura conforme a workload ou a entidade organizacional. Você tem a possibilidade de configurar as VPCs ao selecionar os intervalos de endereços IP, definir o roteamento e adicionar gateways de rede para conectar as VPCs umas às outras, à internet ou à rede corporativa da sua empresa. Você realiza a inicialização de recursos da AWS, como as instâncias do EC2 ou as instâncias do RDS, nas VPCs.
A tabela apresentada a seguir descreve as características principais de uma rede da VPC. Um administrador de rede pode usar estas orientações para descrever a arquitetura e a configuração da rede da VPC. Dispor dessas informações possibilita aos administradores configurar uma rede com equivalência funcional no ambiente on-premises ou usar outro provedor de nuvem.
| Característica | Descrição |
|---|---|
| Localização geográfica | A Amazon VPC está hospedada em todas as regiões da AWS ao redor do mundo. Você pode selecionar as Regiões para a rede da VPC que aloquem os recursos da AWS o mais perto possível dos clientes. |
| Sub-redes | As sub-redes que você define para as VPCs estabelecem os limites da rede e determinam os endereços IP para os recursos da AWS. É possível adicionar sub-redes em várias Zonas de Disponibilidade para aumentar a disponibilidade dos recursos. |
| Conectividade de rede | Os gateways que você conecta às suas VPCs ou sub-redes para fornecer conectividade entre sua rede VPC e outras redes, como outras VPCs ou sub-redes, a internet ou suas redes locais. |
| Controles de segurança | Os grupos de segurança que você cria para as VPCs realizam o controle do tráfego de entrada e de saída dos recursos associados, como os recursos de computação, os recursos de bancos de dados e os balanceadores de carga. Cada sub-rede conta com uma lista de controle de acesso (ACL) de rede que controla o tráfego de entrada e de saída da sub-rede. |
| Gerenciamento de tráfego | As regras de roteamento controlam o fluxo de tráfego entre sub-redes, VPCs e locais externos. Os balanceadores de carga fornecidos pelo Elastic Load Balancing distribuem o tráfego de entrada entre diversos destinos, como as instâncias do EC2, os contêineres e as funções do Lambda. |
Localização geográfica
A Amazon VPC está disponível em todas as regiões da AWS ao redor do mundo. Cada região é uma área geográfica separada. É possível reduzir a latência da rede ao criar VPCs para os recursos em regiões que são próximas à maior parte dos usuários.
É possível usar o Amazon EC2 Global View para listar suas VPCs em todas as regiões usando uma interface gráfica de usuário (não há uma interface programática equivalente). Com o console do Amazon VPC, a API AWS e as interfaces da linha de comando AWS, você deve listar as VPCs e os recursos de VPC de cada região individualmente.
A importância deste aspecto
Após determinar a localização das VPCs, é possível optar por configurar uma rede com equivalência funcional nos mesmos locais ou em locais distintos, de acordo com suas necessidades.
Como obter um resumo das VPCs em todas as regiões
-
Abra o console do Amazon EC2 Global View em https://console.aws.amazon.com/ec2globalview/home
. -
Na guia Explorador de regiões, em Resumo, verifique a contagem de recursos para VPCs, que inclui o número de VPCs e o número de regiões. Isso abrange tanto as VPCs padrão criadas pela AWS em seu nome como as VPCs personalizadas que você cria. Clique no texto sublinhado para visualizar a distribuição da contagem de VPCs em todas as regiões. Caso uma região tenha somente uma VPC, provavelmente trata-se da VPC padrão destinada à região.
-
Na guia Pesquisa global, selecione o filtro de cliente Tipo de recurso = VPC. É possível filtrar os resultados de forma mais detalhada ao especificar uma região ou uma etiqueta.
Como obter as VPCs em uma região usando a AWS CLI
Use o seguinte comando describe-vpcs. É necessário executar este comando em todas as regiões nas quais você tenha VPCs. O parâmetro --query inclui somente os IDs das VPCs na saída. É possível incluir campos adicionais conforme necessário.
aws ec2 describe-vpcs \ --regionus-east-2\ --query "Vpcs[*].VpcId"
Cada região vem com uma VPC padrão. Se as VPCs padrão não estiverem sendo usadas, você pode excluí-las dos resultados ao adicionar o filtro apresentado a seguir.
--filters Name=is-default,Values=false
Sub-redes
Uma sub-rede representa um limite lógico de rede em uma VPC. Ao criar uma sub-rede, você atribui um bloco de endereços IP. Os recursos que você inicia em uma sub-rede recebem endereços IP do bloco de endereços IP da sub-rede. Os endereços IP permitem que os recursos se comuniquem entre si por meio de uma rede local ou da internet.
O mapa de recursos no console da Amazon VPC fornece uma representação visual das sub-redes para a VPC.
A importância deste aspecto
As sub-redes possibilitam que administradores responsáveis pela rede implementem limites de segurança e controlem o tráfego entre os níveis de aplicação. Ao anotar os endereços IP das sub-redes, você pode assegurar que os recursos em uma rede com equivalência funcional possam se estabelecer comunicações com os mesmos clientes ou aplicações presentes na rede da VPC.
Como visualizar as sub-redes de uma VPC usando o mapa de recursos
Abra o console da Amazon VPC, em https://console.aws.amazon.com/vpc/
. -
No painel de navegação, escolha VPCs.
-
Marque a caixa de seleção da VPC.
-
Escolha a guia Mapa de recursos.
-
No painel da VPC, selecione Mostrar detalhes. O painel Sub-redes lista todas as sub-redes presentes na VPC e mostra os intervalos de endereços IP. Ao passar o cursor sobre uma sub-rede, a tabela de rotas associada e as conexões de rede são destacadas. Para obter mais detalhes, clique no link para abrir a página de detalhes da sub-rede.
Como descrever as sub-redes de uma VPC usando a AWS CLI
Use o comando describe-subnets a seguir. O parâmetro --filters limita a pesquisa para descrever as sub-redes da VPC especificada. O parâmetro --query inclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.
aws ec2 describe-subnets \ --filters Name=vpc-id,Values=vpc-1234567890abcdef0\ --query Subnets[*].[SubnetId,AvailabilityZoneId,CidrBlock,Ipv6CidrBlockAssociationSet[0].Ipv6CidrBlock] \ --output table
O seguinte é um exemplo de saída. As colunas correspondem ao ID da sub-rede, ao ID da zona de disponibilidade, ao intervalo de endereços IPv4 e, se houver, ao primeiro intervalo de endereços IPv6.
---------------------------------------------------------------------------------------
| DescribeSubnets |
+---------------------------+-----------+----------------+----------------------------+
| subnet-0d2d1b81e0bc9c6d4 | usw2-az1 | 10.0.144.0/20 | 2600:1f14:1e6e:a003::/64 |
| subnet-0e01d500780bb7468 | usw2-az1 | 10.0.16.0/20 | 2600:1f14:1e6e:a001::/64 |
| subnet-0eb17d85f5dfd33b1 | usw2-az2 | 10.0.128.0/20 | 2600:1f14:1e6e:a002::/64 |
| subnet-0e990c67809773b19 | usw2-az2 | 10.0.0.0/20 | 2600:1f14:1e6e:a000::/64 |
+---------------------------+-----------+----------------+----------------------------+
Conectividade de rede
As opções de conectividade fornecidas pela Amazon VPC possibilitam a criação de uma rede que abrange VPCs em diversas contas, regiões e redes remotas.
É possível usar o mapa de recursos no console da Amazon VPC para descobrir se as VPCs usam gateways da internet, gateways da internet somente para operações de saída, gateways NAT ou endpoints da VPC para o gateway. O mapa de recursos não mostra nenhum gateway de trânsito, conexões de emparelhamento, gateways privados virtuais ou outros tipos de endpoints da VPC que estejam em uso. É possível obter a lista completa de gateways e conexões de emparelhamento de uma VPC ao descrever um por vez por meio do console, da API ou de uma interface de linha de comando.
A importância deste aspecto
Após compreender a conectividade fornecida pela rede da VPC, você pode assegurar que os recursos em uma rede com equivalência funcional consigam estabelecer comunicação com os mesmos recursos locais e remotos.
Como visualizar as conexões de rede de uma VPC usando o mapa de recursos
Abra o console da Amazon VPC, em https://console.aws.amazon.com/vpc/
. -
No painel de navegação, escolha VPCs.
-
Marque a caixa de seleção da VPC.
-
Escolha a guia Mapa de recursos.
-
No painel da VPC, selecione Mostrar detalhes. O painel Conexões de rede lista quaisquer gateways da Internet, gateways da internet somente para operações de saída, gateways NAT e endpoints da VPC para o gateway. Caso o tipo de recurso não seja evidente, posicione o mouse sobre o ícone de link da conexão de rede e analise o URL exibido como resultado. Esse URL funciona como um link para o recurso no console, incluindo o tipo do recurso e o ID (por exemplo, internetGatewayId=igw-0123456780abcdef).
Como obter as conexões de rede para as VPCs usando a AWS CLI
-
Use o comando describe-internet-gateways, apresentado a seguir, para obter os gateways da internet para a região especificada. O parâmetro
--queryinclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.aws ec2 describe-internet-gateways \ --regionus-east-2\ --query InternetGateways[*].[Attachments[0].VpcId,InternetGatewayId] \ --output tableO seguinte é um exemplo de saída. As colunas mostram os IDs da VPC e os IDs do gateway da internet.
---------------------------------------------------- | DescribeInternetGateways | +------------------------+-------------------------+ | None | igw-04c61dba10EXAMPLE | | vpc-0bf4c2739bEXAMPLE | igw-09737a4029EXAMPLE | | vpc-060415a18fEXAMPLE | igw-0c562bd22aEXAMPLE | | vpc-0ea9d41094EXAMPLE | igw-0e06f7033dEXAMPLE | | vpc-03b86de356EXAMPLE | igw-0a9ff72d05EXAMPLE | +------------------------+-------------------------+ -
Use o comando describe-egress-only-internet-gateways, apresentado a seguir, para obter os gateways da Internet somente para operações de saída para a região especificada. O parâmetro
--queryinclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.aws ec2 describe-egress-only-internet-gateways \ --regionus-east-2\ --query EgressOnlyInternetGateways[*].[Attachments[0].VpcId,EgressOnlyInternetGatewayId] \ --output tableO seguinte é um exemplo de saída. As colunas mostram os IDs da VPC e os IDs do gateway da internet somente para operações de saída.
----------------------------------------------------- | DescribeEgressOnlyInternetGateways | +------------------------+--------------------------+ | vpc-060415a18fEXAMPLE | eigw-0b8ca558acEXAMPLE | +------------------------+--------------------------+ -
Use o comando describe-nat-gateways, apresentado a seguir, para obter os gateways NAT para a região especificada. O parâmetro
--queryinclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.aws ec2 describe-nat-gateways \ --regionus-east-2\ --query NatGateways[*].[VpcId,NatGatewayId,SubnetId] \ --output tableO seguinte é um exemplo de saída. As colunas mostram os IDs da VPC, os IDs do gateway NAT e os IDs da sub-rede.
--------------------------------------------------------------------------------- | DescribeNatGateways | +------------------------+-------------------------+----------------------------+ | vpc-060415a18fEXAMPLE | nat-026316334aEXAMPLE | subnet-0eb17d85f5EXAMPLE | | vpc-060415a18fEXAMPLE | nat-0f08bc5f52EXAMPLE | subnet-0d2d1b81e0EXAMPLE | +------------------------+-------------------------+----------------------------+ -
Use o comando describe-transit-gateway-vpc-attachments, apresentado a seguir, para obter os anexos da VPC do gateway de trânsito para a região especificada. O parâmetro
--queryinclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.aws ec2 describe-transit-gateway-vpc-attachments \ --regionus-east-2\ --query TransitGatewayVpcAttachments[*].[VpcId,TransitGatewayId,length(SubnetIds[])] \ --output tableO seguinte é um exemplo de saída. As colunas mostram os IDs da VPC, os IDs do gateway de trânsito e a contagem de sub-redes.
--------------------------------------------------------- | DescribeTransitGatewayVpcAttachments | +------------------------+-------------------------+----+ | vpc-0bf4c2739bEXAMPLE | tgw-055dc4e47bEXAMPLE | 4 | | vpc-0ea9d41094EXAMPLE | tgw-055dc4e47bEXAMPLE | 2 | +------------------------+-------------------------+----+ -
Use o comando describe-vpc-peering-connections, apresentado a seguir, para obter as conexões de emparelhamento para as VPCs na região especificada. O parâmetro
--queryinclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.aws ec2 describe-vpc-peering-connections \ --regionus-east-2\ --query VpcPeeringConnections[*].[AccepterVpcInfo.VpcId,RequesterVpcInfo.VpcId] \ --output tableO seguinte é um exemplo de saída. As colunas mostram os IDs das VPCs que aceitam, os respectivos proprietários, os IDs das VPCs solicitantes e os proprietários correspondentes às solicitações para as VPs.
------------------------------------------------------------------------------------ | DescribeVpcPeeringConnections | +------------------------+---------------+------------------------+----------------+ | vpc-0ea9d41094EXAMPLE | 123456789012 | vpc-03b86de356EXAMPLE | 123456789012 | +------------------------+---------------+------------------------+----------------+ -
Use o comando describe-vpn-gateways, apresentado a seguir, para obter os gateways privados virtuais para a região especificada. O parâmetro
--queryinclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.aws ec2 describe-vpn-gateways \ --regionus-east-2\ --query VpnGateways[*].[VpcAttachments[0].VpcId,VpnGatewayId] \ --output tableO seguinte é um exemplo de saída. As colunas mostram os IDs da VPC e os IDs do gateway privado virtual.
---------------------------------------------------- | DescribeVpnGateways | +------------------------+-------------------------+ | vpc-0bf4c2739bEXAMPLE | vgw-0cb3226c4aEXAMPLE | +------------------------+-------------------------+ -
Use o comando describe-vpc-endpoints, apresentado a seguir, para obter os endpoints da VPC para a região especificada. O parâmetro
--queryinclui somente os campos especificados na saída. É possível incluir campos adicionais conforme necessário.aws ec2 describe-vpc-endpoints \ --regionus-east-2\ --query 'VpcEndpoints[*].[VpcId,VpcEndpointType,ServiceName||ServiceNetworkArn||ResourceConfigurationArn]' \ --output tableO seguinte é um exemplo de saída. A primeira coluna mostra o ID da VPC e a segunda coluna mostra o tipo de endpoint da VPC. A terceira coluna varia conforme o tipo de endpoint, mostrando o nome do serviço, o ARN da configuração do recurso ou o ARN da rede de serviço.
---------------------------------------------------------------------------------------------------------------------------------------- | DescribeVpcEndpoints | +------------------------+-----------------+-------------------------------------------------------------------------------------------+ | vpc-060415a18fcc9afde | Interface | com.amazonaws.vpce.us-west-2.vpce-svc-007832a03d60fc387 | | vpc-060415a18fcc9afde | Interface | com.amazonaws.vpce.us-west-2.vpce-svc-007832a03d60fc387 | | vpc-0bf4c2739bc05a694 | Gateway | com.amazonaws.us-west-2.s3 | | vpc-0ea9d410947d27b7d | Interface | com.amazonaws.us-west-2.logs | | vpc-0bf4c2739bc05a694 | Resource | arn:aws:vpc-lattice:us-east-2:123456789012:resourceconfiguration/rcfg-07129f3acded87625 | | vpc-0bf4c2739bc05a694 | ServiceNetwork | arn:aws:vpc-lattice:us-east-2:123456789012:servicenetwork/sn-0808d1748faee0c1e | | vpc-0bf4c2739bc05a694 | ServiceNetwork | arn:aws:vpc-lattice:us-east-2:123456789012:servicenetwork/sn-0808d1748faee0c1e | +------------------------+-----------------+-------------------------------------------------------------------------------------------+
Controles de segurança
Os controles de segurança fornecidos pela Amazon VPC determinam o acesso à rede às VPCs e aos recursos implantados nessas VPCs.
A importância deste aspecto
Após determinar o tráfego de entrada permitido para as sub-redes e recursos, e o tráfego de saída autorizado a deixar as sub-redes e os recursos, você pode planejar as regras de firewall necessárias para uma rede com equivalência funcional.
Controles de segurança
Grupos de segurança
Um grupo de segurança controla o tráfego específico de entrada e de saída diretamente no nível dos recursos. Os grupos de segurança representam o principal mecanismo para controlar o acesso aos recursos nas VPCs.
Como obter os grupos de segurança para as VPCs
Use o comando describe-security-groups, apresentado a seguir, para exibir os grupos de segurança para a VPC especificada.
aws ec2 describe-security-groups \ --filters Name=vpc-id,Values=vpc-1234567890abcdef0\ --query SecurityGroups[*].GroupId
Como obter as regras de entrada para um grupo de segurança
Use o comando describe-security-group-rules, apresentado a seguir, para exibir as regras para o grupo de segurança especificado, em que IsEgress é false.
aws ec2 describe-security-group-rules \ --filters Name=group-id,Values=sg-0abcdef1234567890\ --query 'SecurityGroupRules[?IsEgress==`false`]'
Como obter as regras de saída para um grupo de segurança
Use o comando describe-security-group-rules, apresentado a seguir, para exibir as regras para o grupo de segurança especificado, em que IsEgress é true.
aws ec2 describe-security-group-rules \ --filters Name=group-id,Values=sg-0abcdef1234567890\ --query 'SecurityGroupRules[?IsEgress==`true`]'
Network ACLs
Uma lista de controle de acesso (ACL) da rede permite ou nega tráfego específico de entrada e de saída no nível da sub-rede. É possível usar as ACLs de rede como defesa em profundidade caso um recurso seja implantado sem o grupo de segurança correto.
Como obter as ACLs de rede para as sub-redes
Use o comando describe-network-acls, apresentado abaixo, para exibir as ACLs da rede para a VPC especificada e as associações de sub-rede.
aws ec2 describe-network-acls \ --filters Name=vpc-id,Values=vpc-1234567890abcdef0\ --query "NetworkAcls[*].{ID:NetworkAclId,Subnets:Associations[].SubnetId}"
Como obter as regras de entrada para uma ACL da rede
Use o comando describe-network-acls, apresentado a seguir, para exibir as regras para a ACL da rede especificada, em que Egress é false.
aws ec2 describe-network-acls \ --network-acl-idsacl-0abcdef1234567890\ --query 'NetworkAcls[*].Entries[?Egress==`false`]'
Como obter as regras de saída para uma ACL da rede
Use o comando describe-network-acls, apresentado a seguir, para exibir as regras para a ACL da rede especificada, em que Egress é true.
aws ec2 describe-network-acls \ --network-acl-idsacl-0abcdef1234567890\ --query 'NetworkAcls[*].Entries[?Egress==`true`]'
Gerenciamento de tráfego
O gerenciamento eficaz do tráfego combina as decisões de roteamento em nível de rede, fornecidas pelas tabelas de rotas, com as estratégias de distribuição em nível de aplicação disponibilizadas pelo balanceamento de carga.
A importância deste aspecto
Os administradores de rede devem projetar sub-redes, roteamentom, resolução de DNS e balanceamento de carga para otimizar o fluxo de tráfego, ao mesmo tempo em que mantêm os limites de segurança e os requisitos de performance. Ao observar a configuração desses componentes na sua rede de VPC, você pode ajudar a garantir que os recursos em uma rede funcionalmente equivalente possam se comunicar com os mesmos clientes ou dispositivos que eles podem na sua rede de VPC.
Gerenciamento de tráfego
Tabelas de rotas
As tabelas de rotas determinam o fluxo do tráfego de rede entre limites de rede, tais como sub-redes, VPCs, redes on-premises e a internet.
O mapa de recursos no console da Amazon VPC fornece uma representação visual das tabelas de rotas para a VPC.
Como visualizar as tabelas de rotas de uma VPC usando o mapa de recursos
Abra o console da Amazon VPC, em https://console.aws.amazon.com/vpc/
. -
No painel de navegação, escolha VPCs.
-
Marque a caixa de seleção da VPC.
-
Escolha a guia Mapa de recursos.
-
O painel Tabelas de rotas lista todas as tabelas de rotas para a VPC. Ao passar o cursor sobre uma tabela de rotas, as sub-redes associadas e as conexões de rede são destacadas. Para obter mais detalhes, clique no link para abrir a página de detalhes da tabela de rotas.
Descrever suas tabelas de rotas
Use o comando describe-route-tables para descrever as tabelas de rotas da VPC especificada e as associações de sub-rede.
aws ec2 describe-route-tables \ --filters Name=vpc-id,Values=vpc-1234567890abcdef0\ --query "RouteTables[*].{ID:RouteTableId,Subnets:Associations[].SubnetId}"
Como obter as rotas para uma tabela de rotas
Use o comando describe-route-tables para descrever as rotas para a tabela de rotas especificada.
aws ec2 describe-route-tables \ --route-table-idsrtb-02ec01715bEXAMPLE\ --query RouteTables[*].Routes
Conjunto de opção de DHCP
Sua VPC tem um conjunto de opções de DHCP que você pode utilizar para definir diversas configurações de rede. Por exemplo, é possível configurar servidores de DNS personalizados de modo que as suas instâncias do EC2 possam resolver nomes de host internos usando sua infraestrutura de DNS existente. Para obter mais informações, consulte Conceitos do conjunto de opções DHCP.
Para descrever as opções de DHCP da sua VPC
Use o comando describe-dhcp-options a fim de descrever as opções de DHCP especificadas. O exemplo também obtém o ID das opções de DHCP para a VPC especificada usando o comando describe-vpcs.
aws ec2 describe-dhcp-options \ --dhcp-options-id "$(aws ec2 describe-vpcs \ --vpc-idvpc-1234567890abcdef0\ --query Vpcs[].DhcpOptionsId --output text)"
Veja a seguir um exemplo de saída para uma VPC que usa as opções de DHCP padrão.
{
"DhcpOptions": [
{
"OwnerId": "415546850671",
"Tags": [],
"DhcpOptionsId": "dopt-1234567890abcdef0",
"DhcpConfigurations": [
{
"Key": "domain-name",
"Values": [
{
"Value": "us-west-2.compute.internal"
}
]
},
{
"Key": "domain-name-servers",
"Values": [
{
"Value": "AmazonProvidedDNS"
}
]
}
]
}
]
}
Balanceadores de cargas
O balanceamento de carga distribui o tráfego de entrada proveniente dos clientes em diversos destinos. Os balanceadores de carga monitoram a integridade dos destinos e removem automaticamente os destinos que não estão íntegros da distribuição do tráfego, garantindo que somente destinos íntegros sejam usados. Isso melhora a disponibilidade e a performance da aplicação, além de otimizar a utilização dos recursos. Para obter mais informações, consulte o Manual do usuário do Elastic Load Balancing.
Descrever os balanceadores de carga
Use o comando describe-load-balancers para exibir os balanceadores de carga para a VPC especificada.
aws elbv2 describe-load-balancers \ --query 'LoadBalancers[?VpcId==`vpc-1234567890abcdef0`].LoadBalancerArn'
Recursos relacionados
A seguir estão serviços ou recursos opcionais que você pode estar utilizando na sua rede VPC: