Configure o acesso à Internet para VMs de cargas de trabalho
Configura o serviço de rede de acesso à Internet para cargas de trabalho do VMware no Google Cloud VMware Engine por região. Pode direcionar o tráfego ligado à Internet das VMs de carga de trabalho através do limite da Internet do Google Cloudou de uma ligação no local.
As VMs de carga de trabalho que podem aceder à Internet também podem aceder aos serviços através do acesso privado à Google. Google Cloud O acesso aos Google Cloud serviços através do acesso privado da Google permanece nas Google Cloud redes e não sai para a Internet.
O serviço de rede de acesso à Internet suporta o seguinte:
- Até 100 endereços IP públicos para cada região
- Até 300 regras de firewall por tabela de firewall
- Débito de até 2 Gbps em 128 mil ligações simultâneas para cada região
- Protocolos TCP, UDP e ICMP
O serviço de rede de acesso à Internet não suporta a capacidade de gateway ao nível da aplicação (ALG).
Antes de começar
Para fazer alterações às definições de acesso à Internet da sua nuvem privada, tem de ter acesso de administrador ao VMware Engine.
Para ativar o acesso à Internet, precisa de um intervalo de endereços CIDR de serviços periféricos. Quando ativa o acesso à Internet ou os serviços de rede IP pública, as gateways são implementadas no contexto do inquilino do serviço.
Use o intervalo de endereços CIDR dos serviços periféricos para resolver gateways de IP público e da Internet do VMware Engine. O intervalo de endereços tem de cumprir os seguintes requisitos:
- Estar em conformidade com a RFC 1918 como intervalo privado.
- Não se sobrepõem a outros intervalos de endereços do VMware Engine, como o intervalo de endereços usado para dispositivos de gestão ou segmentos NSX.
- Não ter sobreposição com nenhum intervalo de endereços anunciado ao VMware Engine, como os usados para sub-redes da rede da nuvem virtual privada (VPC) ou redes no local.
- Dedique um intervalo de endereços IP com 26 bits de máscara de sub-rede (/26).
Requisitos da API e da CLI Google Cloud
Para usar a ferramenta de linha de comandos gcloud
ou a API para gerir os recursos do VMware Engine, recomendamos que configure as ferramentas conforme descrito abaixo.
gcloud
Defina o ID do projeto predefinido:
gcloud config set project PROJECT_ID
Defina uma região e uma zona predefinidas:
gcloud config set compute/region REGION
gcloud config set compute/zone ZONE
Para mais informações sobre a ferramenta gcloud vmware
,
consulte os documentos de referência do Cloud SDK.
API
Os exemplos de API neste conjunto de documentação usam a ferramenta de linha de comandos cURL
para consultar a API. É necessária uma chave de acesso válida como parte do pedido.cURL
Existem várias formas de obter um token de acesso válido. Os passos seguintes usam a ferramenta gcloud
para gerar um token de acesso:
Inicie sessão em Google Cloud:
gcloud auth login
Gere o token de acesso e exporte-o para TOKEN:
export TOKEN=`gcloud auth print-access-token`
Verifique se o TOKEN está definido corretamente:
echo $TOKEN
Agora, use o token de autorização nos seus pedidos à API. Por exemplo:
curl -X GET -H "Authorization: Bearer \"$TOKEN\"" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations
Python
Os exemplos de código Python nesta documentação usam a biblioteca VMware Engine para comunicar com a API. Para poder usar esta abordagem, a biblioteca tem de estar instalada e as credenciais predefinidas da aplicação devem estar configuradas.
Transfira e instale a biblioteca Python:
pip install google-cloud-vmwareengine
Configure as informações do ADC executando esses comandos na shell:
gcloud auth application-default login
Em alternativa, use um ficheiro de chave da conta de serviço:
export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
Para mais informações sobre a biblioteca, visite a página de referência ou veja exemplos de código no GitHub.
Configure o serviço de acesso à Internet
Pode permitir que as VMs de carga de trabalho tenham acesso à Internet criando ou atualizando uma política de rede.
Por predefinição, o serviço de rede de acesso à Internet está desativado.
Ative o serviço de acesso à Internet numa região
Consola
Para ativar o serviço de acesso à Internet numa região, faça o seguinte:
Na Google Cloud consola, aceda à página Políticas de rede.
Clique em Selecionar um projeto e, de seguida, selecione a organização, a pasta ou o projeto que contém a rede do VMware Engine para a qual quer ativar o serviço de acesso à Internet.
Clique em Criar para criar uma nova política. Se quiser editar uma política de rede existente, clique no ícone Mais
no final de uma linha e selecione Editar.Preencha os detalhes da sua política de rede, incluindo a escolha da rede e da região às quais a política se aplica.
Ative o Acesso à Internet e, opcionalmente, ative o Serviço de endereço IP externo.
No campo CIDR dos serviços de limite, introduza o intervalo de endereços a usar quando se dirigir ao gateway de Internet do VMware Engine (intervalo de endereços /26).
Clique em Criar.
O estado do serviço muda para Ativado quando a operação estiver concluída, normalmente após alguns minutos.
gcloud
Com a ferramenta gcloud
, execute o seguinte comando para criar uma política de rede:
gcloud vmware network-policies create NETWORK_POLICY_NAME \ --vmware-engine-network projects/PROJECT_ID/locations/LOCATIONS/vmwareEngineNetworks/NETWORK_ID \ --edge-services-cidr=IP_RANGE \ --location=LOCATION \ --internet-access
Substitua o seguinte:
NETWORK_POLICY_NAME
: o nome desta política de rede.NETWORK_ID
: a rede à qual esta política de rede se aplicaIP_RANGE
: o intervalo CIDR a usar para acesso à Internet e gateways de acesso IP externo, na notação CIDR. É necessário um bloco CIDR RFC 1918 com um prefixo "/26".LOCATION
:global
para redes antigas ou a região de uma rede padrão
API
curl -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies?networkPolicyId=NETWORK_POLICY_NAME '{ "vmwareEngineNetwork":"projects/PROJECT_ID/locations/LOCATION/vmwareEngineNetworks/NETWORK_ID", "edgeServiceCidr":IP_RANGE, "internetAccess: { "enabled": true }, "externalIp": { "enabled": true } }"
Substitua o seguinte:
NETWORK_POLICY_NAME
: o nome desta política de rede. Tem de estar no formatoREGION-default
.PROJECT_ID
: o ID do projeto para este pedidoLOCATION
:global
para redes antigas ou a região de uma rede padrãoIP_RANGE
: o intervalo CIDR a usar para acesso à Internet e gateways de acesso IP externo, na notação CIDR. É necessário um bloco CIDR RFC 1918 com um prefixo "/26".NETWORK_ID
: a rede para esta política de rede
Python
Diretrizes para a rede otimizada para mobilidade (MON) do HCX
Quando configurar o acesso à Internet para VMs migradas através do HCX com a funcionalidade Mobility Optimized Networking (MON), é necessária uma configuração de encaminhamento específica para garantir a conetividade.
Para segmentos de extensão da camada 2 (L2E) que foram ativados com MON, as VMs migradas não têm automaticamente as respetivas rotas anunciadas ao serviço de Internet do VMware Engine. Para garantir que estas VMs podem aceder à Internet, tem de realizar a seguinte ação:
- Ative a redistribuição de rotas estáticas para BGP no router de nível 1.
Este passo manual é fundamental para anunciar as rotas dos seus segmentos com MON ativado, o que lhes permite encaminhar o tráfego da Internet através do ambiente do VMware Engine. Sem esta configuração, as VMs nestes segmentos não podem aceder à Internet pública.
Desative o serviço de acesso à Internet numa região
Para desativar o serviço de acesso à Internet numa região, faça o seguinte:
Consola
Na Google Cloud consola, aceda à página Políticas de rede.
Clique em Selecionar um projeto e, de seguida, selecione a organização, a pasta ou o projeto que contém a rede do VMware Engine para a qual quer desativar o serviço de acesso à Internet.
Na linha correspondente à política de rede relevante, clique no ícone Mais
.Ative/desative o Acesso à Internet para Desativado.
- Tem de desativar o serviço de IP público antes de poder desativar o acesso à Internet.
- Tem de eliminar todos os endereços IP públicos atribuídos e gateways de VPN ponto a site antes de poder desativar o serviço de IP público.
Clique em Guardar.
O estado do serviço muda para Desativado quando a operação estiver concluída, normalmente após vários minutos.
gcloud
Com a ferramenta gcloud
, execute o seguinte comando para atualizar a política de rede:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --location LOCATION
Substitua o seguinte:
NETWORK_POLICY_NAME
: o nome desta política de redeLOCATION
:global
para redes antigas ou a região de uma rede padrão
API
curl -X PATCH -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies/NETWORK_POLICY_NAME?updateMask=internetAccess.enabled,externalIp.enabled -d "{ "internetAccess: { "enabled": false }, "externalIp": { "enabled": false } }"
Substitua o seguinte:
PROJECT_ID
: o ID do projeto para este pedidoLOCATION
:global
para redes antigas ou a região de uma rede padrãoNETWORK_POLICY_NAME
: o nome desta política de rede
Python
Use uma ligação no local para o acesso à Internet da carga de trabalho
Opcionalmente, pode direcionar o tráfego ligado à Internet das VMs de carga de trabalho no VMware Engine através de uma ligação nas instalações. O tráfego é direcionado com base no estado do seguinte:
- Anúncio de trajeto predefinido (
0.0.0.0/0
) a partir de local - Serviço de IP público do VMware Engine
- Serviço de acesso à Internet do VMware Engine
- VPC Service Controls na ligação de intercâmbio da VPC entre a sua rede da VPC e o VMware Engine
Ative o encaminhamento do tráfego da Internet através de uma ligação no local
Para aceder à Internet a partir das VMs da carga de trabalho através de uma ligação no local, tem de concluir dois passos:
- Anuncie o encaminhamento predefinido (
0.0.0.0/0
) a partir das instalações através de uma ligação nas instalações (Cloud VPN ou Cloud Interconnect). Verifique o gateway da Cloud VPN ou o Cloud Router onde a ligação no local à sua VPN termina. - Desative o acesso à Internet e o serviço de IP público para a rede do VMware Engine.
Consola
Na Google Cloud consola, aceda à página Políticas de rede.
Clique em Selecionar um projeto e, de seguida, selecione a organização, a pasta ou o projeto que contém a rede do VMware Engine para a qual quer ativar o serviço de acesso à Internet.
Na linha correspondente à política de rede relevante, clique no ícone Mais
.Ative/desative o IP público para Desativado.
Ative/desative o Acesso à Internet para Desativado.
Clique em Guardar.
Se usar uma rede do VMware Engine antiga: ative os VPC Service Controls na ligação de peering de VPC entre a sua rede de VPC e o VMware Engine através do comando
gcloud services vpc-peerings enable-vpc-service-controls
:gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
gcloud
Com a ferramenta gcloud
, execute o seguinte comando para atualizar a política de rede:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --no-external-ip-address \ --location LOCATION
Substitua o seguinte:
NETWORK_POLICY_NAME
: o nome desta política de redeLOCATION
:global
para redes antigas ou a região de uma rede padrão
Se usar uma rede do VMware Engine antiga: ative os VPC Service Controls na ligação de peering de VPC entre a sua rede de VPC e o VMware Engine através do comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
API
curl -X PATCH -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies/NETWORK_POLICY_NAME?updateMask=internetAccess.enabled,externalIp.enabled "{ "internetAccess: { "enabled": false }, "externalIp: { "enabled": false } }"
Se usar uma rede do VMware Engine antiga: ative os VPC Service Controls na ligação de peering de VPC entre a sua rede de VPC e o VMware Engine através do comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK_NAME \ --service=servicenetworking.googleapis.com
Python
Defina internet_access e external_ip como False
.
Se usar uma rede do VMware Engine antiga: ative os VPC Service Controls na ligação de peering de VPC entre a sua rede de VPC e o VMware Engine através do comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
A ativação dos VPC Service Controls é essencial para encaminhar o tráfego de Internet através de uma ligação no local ou de uma VPC no seu projeto.
Quando os VPC Service Controls estão ativados, Google Cloud faz as seguintes alterações de encaminhamento na rede VPC do produtor de serviços (neste caso, o projeto de inquilino de serviço com intercâmbio com o VMware Engine):
- Remove o encaminhamento predefinido IPv4 (destino
0.0.0.0/0
, gateway de Internet predefinido do próximo salto). - Começa a encaminhar o tráfego da Internet através da rota predefinida da interligação de VPCs.
Exemplo:
Para ativar os VPC Service Controls para um intercâmbio de rede com o nome "my-network" no projeto atual, use o comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=my-network \ --service=servicenetworking.googleapis.com
Desative o encaminhamento do tráfego da Internet através de uma ligação no local
Para desativar o encaminhamento do tráfego de Internet das VMs da carga de trabalho através de uma ligação nas instalações, pare de anunciar o encaminhamento predefinido (0.0.0.0/0
) e desative os VPC Service Controls na ligação de peering de VPC.
Se usar uma rede do VMware Engine antiga: desative os VPC Service Controls na ligação de peering de VPC entre a sua rede de VPC e o VMware Engine. Use o comando gcloud services vpc-peerings disable-vpc-service-controls
:
gcloud services vpc-peerings disable-vpc-service-controls \ --network=VPC_NETWORK_NAME \ --service=servicenetworking.googleapis.com
O que se segue?
- Saiba como atribuir um endereço IP público a uma VM na sua nuvem privada.
- Saiba como as tabelas de firewall e as regras de firewall filtram o tráfego de rede para e a partir de recursos da nuvem privada.