Para configurar o acesso à rede particular para que o tráfego seja executado em uma rede do Google Cloud, configure o projeto que possui a rede VPC, o projeto do Diretório de serviços e o projeto de serviço do Google Cloud que você está usando. Esses três projetos podem ser os mesmos ou separados.
- Projeto de rede é o projeto da rede VPC.
- Projeto Directory do serviço é o projeto do serviço do Diretório de serviços. Ele pode ser um projeto de serviço na rede VPC compartilhada do projeto de rede.
- Projeto de serviço do Google Cloud é o projeto com a configuração que está invocando o acesso à rede privada. Por exemplo, uma configuração de serviço do Google Cloud.
Antes de começar
Este procedimento pressupõe que você tenha concluído as etapas a seguir.
- Ative as APIs que você quer acessar na página de APIs e serviços do Console do Google Cloud, incluindo a API do diretório de serviços.
- As instâncias de VM em uma rede VPC precisam ter um endereço IP privado.
- Para hosts locais, você deve ter um túnel existente do Cloud VPN ou uma conexão do Cloud Interconnect com sua rede VPC.
Como configurar o projeto de rede
Siga estas etapas para configurar o projeto de rede.
- Crie ou use uma rede VPC atual. Redes VPC de modo automático e personalizado são compatíveis. Redes legadas não.
Se o destino de destino for uma VM do Compute Engine ou um back-end do balanceador de carga interno, você precisará permitir a entrada por meio do firewall da VPC para acesso à rede particular. Os destinos precisam permitir a entrada TCP de
35.199.192.0/19
na porta apropriada (porta443
ou80
).Conceda à rede de serviços de gerenciamento de identidade e acesso (IAM, na sigla em inglês) o acesso ao projeto de serviço do Google Cloud. O projeto do Google Cloud precisa estar no perímetro do VPC Service Controls do serviço do Google Cloud e do projeto do Diretório de serviços para
servicedirectory.googleapis.com
.Para saber mais sobre o VPC Service Controls, consulte a Visão geral do VPC Service Controls.
Como configurar o projeto do Diretório de serviços
Siga estas etapas para configurar o projeto do Diretório de serviços.
- Crie uma máquina virtual (VM, na sigla em inglês) ou um balanceador de carga interno na rede VPC.
- Crie um serviço de diretório de serviços apontando para a VM ou balanceador de carga interno que você criou na rede VPC.
- Conceda à rede de serviços de IAM acesso à conta de serviço do Google Cloud. Para mais informações sobre papéis e permissões, consulte Permissões e papéis do diretório de serviço.
Como criar um endpoint com acesso a redes privadas
Para criar um endpoint com acesso à rede particular configurado, faça o seguinte.
Console
- Acesse a página "Namespaces" do Diretório de serviços no Console do Google Cloud.
Acessar a página "Namespaces do diretório de serviços" - Clique em um namespace.
- Clique em um serviço.
- Clique em more_vert e em Adicionar endpoint.
- Digite um nome de endpoint.
- Digite um endereço IP IPv4, como
192.0.2.0/24
. - Digite um número de Porta, como
443
ou80
. - Para ativar o acesso à rede privada, clique em Escolher na lista para escolher uma opção de uma lista de redes disponíveis em Rede VPC associada.
- Também é possível fornecer um ID de projeto específico e o nome da rede escolhendo Especificar por projeto e nome de rede.
- Clique em Criar.
gcloud
Execute o comando gcloud beta service-directory endpoints create
com o ID do projeto e o caminho da rede especificado.
gcloud beta 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:
ENDPOINT_NAME
: um nome para o endpoint que você está criando no seu serviço, comomy-endpoint
.PROJECT_ID
: o ID do projetoREGION
: a região do Google Cloud que contém o namespaceNAMESPACE_NAME
: o nome que você deu ao namespace, comomy-namespace
SERVICE_ID
: o ID do serviçoIP_ADDRESS
: o endereço IP do endpoint, como192.0.2.0/24
PORT_NUMBER
: as portas em que os endpoints estão sendo executados, normalmente443
ou80
NETWORK_PATH
: o URL para a rede, comoprojects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME
Como configurar o projeto de serviço do Google Cloud
- Ative a API de serviço do Google Cloud.
- Configure o serviço do Google Cloud usando o serviço de diretório de serviços criado no projeto de rede.
- Se você estiver usando o VPC Service Controls, verifique se o perímetro do VPC Service Controls permite que o diretório de serviço acesse o projeto de rede e o projeto do Service Directory.
Casos de uso
Esta seção apresenta exemplos de casos de uso para configurar o acesso à rede privada.
Como chamar um endpoint de HTTP quando uma rede VPC, uma VM e um diretório de serviços estiverem no mesmo projeto
É possível configurar um produto do Google Cloud para chamar um endpoint HTTP na sua VM. Esse trânsito não pode ser transportado pela Internet pública.
Nesta configuração, você tem um projeto com uma rede VPC, uma VM, um serviço de diretório de serviços e o serviço do Google Cloud no mesmo projeto.
Para configurar seu produto do Google Cloud usando o acesso privado à rede, siga estas etapas.
Configurar a rede e a rede de destino
- Crie um projeto, como
my-project
. - Crie uma rede VPC, como
VPC-1
(projects/project-number/locations/global/networks/my-network). - Conceda acesso de proxy à entrada em
VPC-1
ou à sub-rede ou VM. - Permitir a entrada de
35.199.192.0/19
. - Crie
VM-1
na regiãous-central1
emVPC-1
. - Configure-o para executar o serviço na porta
P
. - Se você preferir usar HTTPS, instale um certificado de segurança de camada de transporte (ICP, na sigla em inglês) de infraestrutura pública.
- Crie um serviço de diretório de serviços
SD-1
emREGION-1
. - Crie um endpoint em
SD-1
com o endereço IP interno deVM-1
=10.10.10.10
,P
=443
enetwork
=projects/project-number/global/networks/my-network
. Para instruções detalhadas, consulte Como criar um endpoint com acesso a rede privada configurado. Conceda à conta de serviço do Google Cloud os seguintes papéis do IAM:
servicedirectory.viewer
servicedirectory.pscAuthorizedService
Opcionalmente, você pode configurar
VM-2
e adicionarEndpoint-2
.
Configurar um produto do Google Cloud
- Defina a configuração do produto do Google Cloud
CONFIG-1
, como "Cloud Scheduler, me chame a cada minuto". - Configure uma solicitação HTTP.
- Especifique que a solicitação precisa vir por rede privada, como por meio de
SD-1
. - (Opcional) Defina as configurações do serviço de autoridade de certificação.
Agora, o produto do Google Cloud pode invocar a solicitação HTTP usando SD-1
.
Como chamar um endpoint de HTTP quando uma rede VPC, uma VM e um diretório de serviços estiverem em projetos diferentes
Nesta configuração de exemplo, você quer configurar um serviço do Google Cloud, como Events, Tasks ou Pub/Sub, para chamar um endpoint HTTP na sua VM. Neste exemplo, o projeto do Diretório de serviços, o projeto de rede e os projetos de serviço do Google Cloud são diferentes. Esse tráfego não pode estar conectado pela Internet pública. Como alternativa, essa invocação de API precisa respeitar o perímetro do VPC Service Controls.
Nesse caso, a configuração do projeto de serviço do Google Cloud permite a saída para uma VM de projeto de serviço do Google Cloud, que reside na rede VPC do projeto de rede.
O projeto de serviço do Google Cloud pode ser diferente do projeto produtor. Os perímetros do VPC Service Controls dos dois projetos são usados.
Criar um projeto de rede
Verifique se você tem as seguintes permissões do IAM:
servicedirectory.services.resolve
para o serviço de mensagensservicedirectory.networks.access
para a rede
Observações:
- O projeto de serviço e o projeto de rede não precisam ser conectados, mas precisam fazer parte dos mesmos VPC Service Controls.
- O firewall e o IAM ficam desativados por padrão na rede e no serviço.
Para criar o projeto de rede, siga estas etapas.
- Crie uma rede VPC, como
VPC-1
(projects/project-number/locations/global/networks/my-network). Ative o firewall da rede VPC.
Se estiver usando o VPC Service Controls, o perímetro do VPC Service Controls permitirá que o diretório de serviços se conecte ao projeto de serviço do Google Cloud e ao projeto do Service Directory.
Configurar o projeto no Diretório de serviços
- Crie uma VM ou um balanceador de carga interno na rede VPC.
- Crie um serviço de diretório de serviços que aponte para a VM ou o balanceador de carga interno na rede VPC.
- Conceda acesso
service read
do Diretório de serviços de IAM ao serviço de mensagens do projeto de serviço do Google Cloud. - Se estiver usando o VPC Service Controls, o perímetro do VPC Service Controls permitirá que o diretório de serviços se conecte ao projeto de serviço do Google Cloud e ao projeto do Service Directory.
Configurar o projeto de serviço do Google Cloud
- Ative a API do serviço de mensagens que você está usando.
- Configure o serviço de mensagem
PUSH
usando o serviço Diretório de serviços do projeto do Diretório de serviços. - Se estiver usando o VPC Service Controls, o perímetro do VPC Service Controls permitirá que o diretório de serviços se conecte ao projeto de rede e ao projeto do Service Directory.
A seguir
- Configure um endpoint do diretório de serviços.
- Para uma visão geral do Diretório de serviços, consulte esta página.
- Para saber mais sobre o Private Service Connect, consulte Conexão de serviço particular.
- Para encontrar soluções para problemas comuns que podem ser encontrados ao usar o Diretório de serviços, consulte Solução de problemas.