Configurar o acesso à Internet para VMs de carga de trabalho
Você configura o serviço de rede de acesso à Internet para cargas de trabalho da VMware no Google Cloud VMware Engine por região. Direcione o tráfego vinculado à Internet das cargas de trabalho de VMs usando a borda da Internet do Google Cloud ou uma conexão local.
As VMs de carga de trabalho que podem acessar a Internet também podem acessar os serviços do Google Cloud usando o Acesso privado do Google. O acesso aos serviços do Google Cloud usando o Acesso privado do Google permanece nas redes do Google Cloud e não sai para a Internet.
O serviço de rede de acesso à Internet é compatível com o seguinte:
- Até 100 endereços IP públicos para cada região
- Até 300 regras de firewall por tabela de firewall
- Capacidade de até 2 Gbps em 128 mil conexões simultâneas para cada região
- Protocolos TCP, UDP e ICMP
O serviço de rede de acesso à Internet não oferece suporte ao recurso de gateway de nível de aplicativo (ALG, na sigla em inglês).
Antes de começar
Para alterar as configurações de acesso à Internet da nuvem privada, é preciso ter acesso de administrador ao VMware Engine.
Para ativar o acesso à Internet, você precisa de um intervalo de endereços CIDR de serviços Edge. Ao ativar os serviços de acesso à Internet ou de rede IP público, os gateways são implantados no contexto do locatário de serviço.
Use o intervalo de endereços CIDR dos serviços de borda para se direcionar aos gateways de IP público e da Internet do VMware Engine. O intervalo de endereços precisa atender aos seguintes requisitos:
- Estar em conformidade com o RFC 1918 como um intervalo particular.
- Não ter sobreposição com outros intervalos de endereços do VMware Engine, como o intervalo de endereço usado para dispositivos de gerenciamento ou segmentos NSX-T.
- Não se sobrepor a intervalos de endereços anunciados no VMware Engine, como aqueles usados para sub-redes de rede de nuvem privada virtual (VPC) ou redes locais;
- Dedique um intervalo de endereços IP com 26 bits de máscara de sub-rede (/26).
Google Cloud CLI e requisitos da API
Para usar a ferramenta de linha de comando gcloud
ou a API para gerenciar os recursos do VMware Engine, recomendamos configurar as ferramentas conforme descrito abaixo.
gcloud
Defina o ID do projeto padrão:
gcloud config set project PROJECT_ID
Defina uma região e uma zona padrão.
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 SDK Cloud.
API
Os exemplos de API neste conjunto de documentação usam a ferramenta de linha de comando cURL
para
consultar a API. Um token de acesso válido é necessário como parte da solicitação
cURL
. Há muitas maneiras de conseguir um token de acesso válido. As etapas a seguir
usam a ferramenta gcloud
para gerar um token de acesso:
Faça login no Google Cloud:
gcloud auth login
Gerar token de acesso e exportar para TOKEN:
export TOKEN=`gcloud auth print-access-token`
Verifique se o TOKEN está definido corretamente:
echo $TOKEN
Use agora o token de autorização nas solicitações para a API. 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 do VMware Engine para se comunicar com a API. Para usar essa abordagem, a biblioteca precisa estar instalada e o Application Default Credentials precisa estar configurado.
Faça o download e instale a biblioteca Python:
pip install google-cloud-vmwareengine
Execute os comandos no shell para configurar as informações do ADC:
gcloud auth application-default login
Ou use um arquivo de chave da conta de serviço:
export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
Para mais informações sobre a biblioteca, acesse a página de referência ou veja os exemplos de código no GitHub.
Configurar o serviço de acesso à Internet
É possível permitir que suas VMs de carga de trabalho tenham acesso à Internet criando ou atualizando uma política de rede.
Por padrão, o serviço de rede de acesso à Internet está desativado.
Desativar o serviço de acesso à Internet em uma região
Console
Para ativar o serviço de acesso à Internet em uma região, faça o seguinte:
No console do Google Cloud, acesse a página Políticas de rede.
Clique em Criar para criar uma nova função. Para editar uma política de rede atual, clique no ícone Mais
no final de uma linha e selecione Editar.Preencha os detalhes da política de rede, incluindo a escolha da rede e da região a que ela se aplica.
Alterne o Acesso à Internet para Ativado e, opcionalmente, ative o Serviço de endereço IP externo.
No campo CIDR dos serviços de borda, insira o intervalo de endereços a ser usado quando se direcionar ao gateway de Internet do VMware Engine (intervalo de endereços /26).
Clique em Criar.
O status do serviço muda para Ativado quando a operação é concluída, geralmente após alguns minutos.
gcloud
Usando 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:
NETWORK_POLICY_NAME
: o nome da política de rede.NETWORK_ID
: a rede em que essa política de rede é aplicável.IP_RANGE
: o intervalo CIDR a ser usado para gateways de acesso à Internet e de IP externo, em notação CIDR. É necessário um bloco CIDR RFC 1918 com um prefixo "/26".LOCATION
:global
para redes legadas 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:
NETWORK_POLICY_NAME
: o nome da política de rede. Precisa estar no formatoREGION-default
.PROJECT_ID
: o ID do projeto desta solicitaçãoLOCATION
:global
para redes legadas ou a região de uma rede padrãoIP_RANGE
: o intervalo CIDR a ser usado para gateways de acesso à Internet e de IP externo, em notação CIDR. É necessário um bloco CIDR RFC 1918 com um prefixo "/26".NETWORK_ID
: a rede desta política de rede.
Python
Desativar o serviço de acesso à Internet em uma região
Para desativar o serviço de acesso à Internet em uma região, faça o seguinte:
Console
No console do Google Cloud, acesse a página Políticas de rede.
Na linha correspondente à política de rede relevante, clique no ícone Mais
.Alterne o Acesso à Internet para Desativado.
- É necessário desativar o serviço de IP público antes de desativar o acesso à Internet.
- Exclua todos os endereços IP públicos alocados e gateways da VPN de ponto a site antes de desativar o serviço IP público.
Clique em Save.
O status do serviço muda para Desativado quando a operação é concluída, geralmente após alguns minutos.
gcloud
Usando a ferramenta gcloud
, execute o seguinte comando para atualizar uma política de rede:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --location LOCATION
Substitua:
NETWORK_POLICY_NAME
: o nome da política de rede.LOCATION
:global
para redes legadas 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:
PROJECT_ID
: o ID do projeto desta solicitaçãoLOCATION
:global
para redes legadas ou a região de uma rede padrãoNETWORK_POLICY_NAME
: o nome da política de rede.
Python
Usar uma conexão no local para acesso da carga de trabalho à Internet
Como opção, é possível direcionar o tráfego vinculado à Internet das VMs de carga de trabalho no VMware Engine por meio de uma conexão local. O tráfego é direcionado com base no estado a seguir:
- Divulgação de rota padrão (
0.0.0.0/0
) do local - Serviço de IP público do VMware Engine
- Serviço de acesso à Internet no VMware Engine
- VPC Service Controls na conexão de peering de VPC entre sua rede VPC e o VMware Engine
Ativar o roteamento do tráfego da Internet por uma conexão local
Para acessar a Internet a partir das VMs da carga de trabalho por meio de uma conexão local, siga estas duas etapas:
- Divulgar a rota padrão (
0.0.0.0/0
) do local por meio de uma conexão local (Cloud VPN ou Cloud Interconnect). Verifique o gateway do Cloud VPN ou o Cloud Router em que a conexão local com a VPN é encerrada. - Desative o acesso à Internet e o serviço de IP público para a rede do VMware Engine.
Console
No console do Google Cloud, acesse a página Políticas de rede.
Na linha correspondente à política de rede relevante, clique no ícone Mais
.Alterne o IP público para Desativado.
Alterne o Acesso à Internet para Desativado.
Clique em Save.
Se estiver usando uma rede legada do VMware Engine: ative o VPC Service Controls na conexão de peering de VPC entre a rede VPC e o VMware Engine usando o 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
Usando a ferramenta gcloud
, execute o seguinte comando para atualizar uma política de rede:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --no-external-ip-address \ --location LOCATION
Substitua:
NETWORK_POLICY_NAME
: o nome da política de rede.LOCATION
:global
para redes legadas ou a região de uma rede padrão
Se estiver usando uma rede legada do VMware Engine: ative o VPC Service Controls na conexão de peering de VPC entre a
rede VPC e o VMware Engine usando
gcloud services vpc-peerings enable-vpc-service-controls
comando:
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 estiver usando uma rede legada do VMware Engine: ative o VPC Service Controls na conexão de peering de VPC entre a
rede VPC e o VMware Engine usando
gcloud services vpc-peerings enable-vpc-service-controls
comando:
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 estiver usando uma rede legada do VMware Engine: ative o VPC Service Controls na conexão de peering de VPC entre a
rede VPC e o VMware Engine usando
gcloud services vpc-peerings enable-vpc-service-controls
comando:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
Ativar o VPC Service Controls é essencial para rotear o tráfego da Internet por uma conexão local ou VPC no seu projeto.
Quando o VPC Service Controls está ativado, o Google Cloud faz as seguintes mudanças de roteamento na rede VPC do produtor de serviços (neste caso, o projeto de locatário de serviço pareado com o VMware Engine):
- Remove a rota padrão IPv4 (destino
0.0.0.0/0
, gateway de Internet padrão de próximo salto). - Começa a encaminhar o tráfego da Internet usando a rota padrão de peering da VPC.
Exemplo:
Para ativar os VPC Service Controls em uma conexão de peering com uma rede chamada "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
Desativar o roteamento do tráfego da Internet por uma conexão local
Para desativar o roteamento do tráfego da Internet das VMs de carga de trabalho por meio de uma
conexão local, pare de divulgar a rota padrão (0.0.0.0/0
) e
desative os controles de serviço da VPC na conexão de peering da VPC.
Se você estiver usando uma rede legada do VMware Engine: desative o VPC Service Controls na conexão de peering entre a
rede 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
A seguir
- Aprenda a alocar um endereço IP público para uma VM na nuvem privada.
- Saiba como tabelas e regras de firewall filtram o tráfego de rede de entrada e saída em recursos de nuvem privada.