Esta página descreve como configurar o acesso de rede privado e encaminhar o tráfego numa Google Cloud rede.
Para configurar o acesso à rede privada, configura três projetos:
- Um projeto que contém uma rede da nuvem virtual privada (VPC) a ser usada pela instância de máquina virtual (VM) de destino ou pelo equilibrador de carga interno de destino.
- Um projeto que atua como um projeto de serviço do Service Directory.
- Um projeto para um Google Cloud produto com a configuração que invoca o acesso de rede privada. Um exemplo de um Google Cloud produto que pode chamar pontos finais através do acesso à rede privada é o Dialogflow CX.
Os artefactos dos projetos podem estar no mesmo projeto ou em projetos diferentes.
Antes de começar
Antes de configurar o acesso à rede privada, conclua os seguintes passos:
Para cada projeto, na Google Cloud consola, na página APIs e serviços, clique em Ativar APIs e serviços para ativar as APIs que quer usar, incluindo a API Service Directory.
Para associar a sua rede VPC a anfitriões nas instalações, crie um túnel do Cloud VPN ou uma ligação do Cloud Interconnect.
Certifique-se de que o Google Cloud projeto está dentro do perímetro dos VPC Service Controls do projeto de rede e do projeto do Service Directory para
servicedirectory.googleapis.com
.Saiba mais sobre os VPC Service Controls.
Configure o projeto para a rede VPC
Para configurar o projeto para a rede VPC, siga estes passos:
Crie uma rede de VPC ou selecione uma rede de VPC existente que tenha uma sub-rede apenas de IPv4 ou de pilha dupla na região que quer usar. As redes antigas não são suportadas.
Crie as regras de firewall de autorização de entrada necessárias.
Se o destino for uma VM ou um balanceador de carga de passagem interno de rede, as regras de firewall têm de permitir o tráfego TCP do intervalo
35.199.192.0/19
para as portas usadas pelo software em execução nas instâncias de VM de destino.Se o destino for um balanceador de carga de aplicações interno ou um balanceador de carga de rede de proxy interno, as regras da firewall têm de permitir o tráfego TCP do intervalo
35.199.192.0/19
para o endereço IP e as portas usadas pelo balanceador de carga.
Para mais informações acerca do intervalo
35.199.192.0/19
, consulte o artigo Caminhos para o Cloud DNS e o Service Directory.Conceda a função de serviço autorizado do Private Service Connect (
roles/servicedirectory.pscAuthorizedService
) da gestão de identidade e de acesso (IAM) ao agente de serviço do produto que vai chamar o ponto final. Google CloudPara mais informações acerca das funções e autorizações, consulte o artigo Autorizações e funções do diretório de serviços.
Configure o projeto do Service Directory
Para configurar o projeto do Service Directory, siga estes passos:
Na rede VPC, crie uma VM ou um balanceador de carga interno.
Conceda a função de leitor do diretório de serviços do IAM (
roles/servicedirectory.viewer
) ao agente de serviço do produtoGoogle Cloud que vai chamar o ponto final.Crie um espaço de nomes e um serviço do Service Directory. Em seguida, crie um ponto final para este serviço, seguindo os passos na secção seguinte.
Crie um ponto final com acesso à rede privada
Para criar um ponto final com acesso à rede privada configurado, siga estes passos:
Consola
- Na Google Cloud consola, aceda à página Namespaces do Service Directory. Aceda aos espaços de nomes do Service Directory
- Clique num espaço de nomes.
- Clique num serviço.
- Clique em Adicionar ponto final.
- Em Nome do ponto final, introduza um nome para o ponto final.
- Para Endereço IP, introduza um endereço IPv4, como
192.0.2.0
. - Em Porta, introduza um número de porta, como
443
ou80
. - Para ativar o acesso à rede privada, em Rede de VPC associada, selecione a opção
necessária:
- Para escolher a partir de uma lista de redes disponíveis, clique em Escolher a partir da lista e, de seguida, selecione a rede.
- Para especificar um projeto e uma rede, clique em Especificar por um projeto e um nome de rede e, de seguida, introduza o número do projeto e o nome da rede.
- Clique em Criar.
gcloud
Use o gcloud service-directory endpoints create
comando com o ID do projeto e o caminho de rede especificados.
gcloud service-directory endpoints create ENDPOINT_NAME \ --project=PROJECT_ID \ --location=REGION \ --namespace=NAMESPACE_NAME \ --service=SERVICE_ID \ --address=IP_ADDRESS \ --port=PORT_NUMBER \ --network=NETWORK_PATH
Substitua o seguinte:
ENDPOINT_NAME
: um nome para o ponto final que está a criar no seu serviço, comomy-endpoint
PROJECT_ID
: o ID do projetoREGION
: a Google Cloud região que contém o espaço de nomesNAMESPACE_NAME
: o nome que atribuiu ao espaço de nomes, comomy-namespace
SERVICE_ID
: o ID do serviçoIP_ADDRESS
: o endereço IP do ponto final, como192.0.2.0
PORT_NUMBER
: as portas em que os pontos finais estão a ser executados, normalmente443
ou80
NETWORK_PATH
: o URL para a rede, comoprojects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME
Configure o Google Cloud projeto de produto
Para configurar o Google Cloud projeto do produto, siga estes passos:
Configure o seu Google Cloud produto para chamar o serviço do Service Directory que criou. Os passos necessários dependem doGoogle Cloud produto específico.
Exemplos de utilização
Esta secção apresenta exemplos de utilização para configurar o acesso de rede privado.
Chamar um ponto final HTTP quando uma rede VPC, uma VM e o Service Directory estão no mesmo projeto
Neste exemplo de utilização, configura o Dialogflow CX, um Google Cloud produto para o processamento de linguagem natural, para chamar um ponto final HTTP na sua VM. Ao chamar o ponto final, certifique-se de que o tráfego não transita pela Internet pública.
Neste exemplo de utilização, cria os seguintes artefactos no mesmo projeto:
- Uma rede da VPC
- Uma VM
- Um serviço de diretório de serviços
- Dialogflow CX
A Figura 1 mostra como pode permitir que uma configuração de serviço Google de um projeto saia para uma VM. A VM reside numa rede de VPC do projeto.
Configure a sua rede e rede de destino
- Crie um projeto, como
myproject
. Crie uma rede VPC, como
vpc-1
.Ao criar a rede VPC, em Modo de criação de sub-redes, selecione Automático.
Crie uma regra de firewall, como
firewall-1
.Ao criar a regra de firewall, introduza ou selecione os seguintes valores:
- Para Rede, selecione
vpc-1
. - Para Intervalos de IPv4 de origem, introduza
35.199.192.0/19
. - Para Protocolos e portas, selecione TCP e introduza
443
ou80
.
- Para Rede, selecione
Na região
us-central1
, crie uma VM, comovm-1
.Ao criar a VM, introduza ou selecione os seguintes valores:
- Para Redes > Interfaces de rede, selecione
vpc-1
. - Para Firewall, selecione Permitir tráfego HTTP.
Se quiser usar HTTPS, selecione Permitir tráfego HTTPS. Certifique-se também de que instala um certificado Transport Layer Security (TLS) da infraestrutura de chave pública (PKI).
- Para Redes > Interfaces de rede, selecione
Na região
us-central1
, crie um espaço de nomes, comonamespace-1
.No espaço de nomes, registe um serviço do Service Directory, como
sd-1
.Crie um ponto final em
sd-1
. Para o endereço do ponto final, use o endereço IP interno devm-1
na porta443
. Para mais informações, consulte o artigo Crie um ponto final com acesso à rede privada.Conceda as seguintes funções de IAM ao agente de serviço do Google Cloud produto que vai chamar o ponto final:
- Função de visitante do diretório de serviços (
roles/servicedirectory.viewer
) - Função de serviço autorizado do Private Service Connect
(
roles/servicedirectory.pscAuthorizedService
)
- Função de visitante do diretório de serviços (
Opcional: se quiser adicionar mais VMs, pode configurar outra VM, como
vm-2
, e adicionar o respetivo ponto final, comoendpoint-2
.
Configure um Google Cloud produto
- Configurar uma Google Cloud configuração do produto, como " Cloud Scheduler, liga-me todos os minutos".
- Configure um pedido HTTP.
- Especifique que os pedidos devem ser feitos através de redes privadas, como através de
sd-1
. - Opcional: configure as definições do serviço de autoridade de certificação.
O produto Google Cloud pode agora invocar o pedido HTTP através de sd-1
.
Chame um ponto final HTTP quando uma rede VPC partilhada, uma VM e o Service Directory estão em projetos diferentes
Neste exemplo de utilização, configura o Dialogflow CX, um serviço de processamento de linguagem natural, para chamar um ponto final HTTP na sua VM. Google Cloud Ao chamar o ponto final, certifique-se de que o tráfego não transita pela Internet pública.
Neste exemplo de utilização, cria os seguintes artefactos em projetos diferentes:
- Uma rede de VPC partilhada
- Uma VM
- Um serviço de diretório de serviços
- Dialogflow CX
Antes de criar os projetos, tenha em atenção o seguinte:
- Certifique-se de que a invocação da API respeita o perímetro dos VPC Service Controls.
- Certifique-se de que a configuração do Google Cloud projeto de serviço permite a saída para uma VM que reside no projeto da rede VPC.
- O projeto do produtor pode não ser o mesmo que o projeto de Google Cloud serviço.
- Certifique-se de que são usados os perímetros dos VPC Service Controls de ambos os projetos.
- O projeto do Service Directory e o projeto de rede não têm de estar ligados, mas têm de fazer parte do mesmo VPC Service Controls.
- Na rede e no serviço, a firewall e o IAM estão desativados por predefinição.
A Figura 2 mostra como pode enviar tráfego através do acesso à rede privada com os perímetros dos controlos de serviços da VPC aplicados.
Configure o projeto de rede
- Crie um projeto, como
my-vpc-project
. Crie uma rede VPC, como
vpc-1
.Ao criar a rede VPC, para o Modo de criação de sub-redes, selecione Automático.
Crie uma regra de firewall, como
firewall-1
.Ao criar a regra, introduza ou selecione os seguintes valores:
- Para Rede, selecione
vpc-1
. - Para Intervalos de IPv4 de origem, introduza
35.199.192.0/19
. - Para Protocolos e portas, selecione TCP e introduza
443
ou80
.
- Para Rede, selecione
Na região
us-central1
, crie uma VM, comovm-1
.Ao criar a VM, introduza ou selecione os seguintes valores:
- Para Redes > Interfaces de rede, selecione
vpc-1
. - Para Firewall, selecione Permitir tráfego HTTP.
Se quiser usar HTTPS, selecione Permitir tráfego HTTPS. Certifique-se também de que instala um certificado Transport Layer Security (TLS) da infraestrutura de chave pública (PKI).
- Para Redes > Interfaces de rede, selecione
Se estiver a usar os VPC Service Controls, o perímetro dos VPC Service Controls permite que o Service Directory se ligue ao projeto de serviço e ao projeto do Service Directory. Google Cloud
Configure o projeto do Service Directory
Crie um projeto, como
my-sd-project
.Precisa de uma autorização de IAM adicional porque o projeto da rede VPC e o projeto do Service Directory são projetos diferentes.
No projeto de rede, conceda a função Network Attacher do Service Directory (
roles/servicedirectory.networkAttacher
) ao principal do IAM que cria o ponto final do Service Directory.Crie um ponto final do Service Directory que aponte para a VM na rede VPC:
- Na região
us-central1
, crie um espaço de nomes, comonamespace-1
. - No espaço de nomes, registe um serviço do Service Directory, como
sd-1
. - Crie um ponto final em
sd-1
. Para o endereço do ponto final, use o endereço IP interno devm-1
na porta443
. Para mais informações, consulte o artigo Crie um ponto final com acesso à rede privada.
- Na região
Conceda as seguintes funções de IAM ao agente de serviço do Google Cloud produto que vai chamar o ponto final:
- Função de visualizador do Service Directory (
roles/servicedirectory.viewer
) no projeto do Service Directory - Função de serviço autorizado do Private Service Connect (
roles/servicedirectory.pscAuthorizedService
) no projeto de rede
- Função de visualizador do Service Directory (
Se estiver a usar os VPC Service Controls, o perímetro dos VPC Service Controls permite que o Service Directory se ligue ao projeto de serviço e ao projeto do Service Directory. Google Cloud
Configure o Google Cloud projeto de serviço
- Ative a API para o serviço Google Cloud que está a usar.
- Para configurar o Google Cloud serviço
PUSH
, use o serviço Service Directory do projeto Service Directory.
Se estiver a usar os VPC Service Controls, o perímetro dos VPC Service Controls permite que o Service Directory se ligue ao projeto de rede e ao projeto do Service Directory.
Use o acesso à rede privada do Service Directory com o Dialogflow
Para ver instruções sobre como pode usar o acesso à rede privada do Service Directory com o Dialogflow, consulte o artigo Usar o Service Directory para acesso à rede privada.
O que se segue?
- Para ver uma vista geral do diretório de serviços, consulte a vista geral do diretório de serviços.
- Para saber mais sobre o Private Service Connect, consulte o artigo Private Service Connect.
- Para encontrar soluções para problemas comuns que possa ter ao usar o diretório de serviços, consulte a secção Resolução de problemas.