Configurar o acesso a serviços privados

O acesso a serviços privados é uma conexão privada segura entre sua rede de nuvem privada virtual (VPC) do Google Cloud e os serviços gerenciados pelo Google ou de terceiros. Ele permite que as instâncias de VM na sua rede VPC se comuniquem com esses serviços usando endereços IP internos, sem expor o tráfego à Internet pública.

Antes de começar

Para estabelecer uma conexão particular, atenda aos seguintes pré-requisitos:

  • Você precisa ter uma rede VPC atual para se conectar à rede do produtor de serviços. As instâncias de VM precisam usar essa rede VPC para se conectar a serviços por uma conexão particular.
  • Siga as etapas na página Antes de começar da API Live Stream para criar ou escolher um projeto do Google Cloud configurado corretamente.

Ativar o acesso a serviços particulares para a API Live Stream

O processo geral de configuração do acesso a serviços particulares é fornecido na documentação da nuvem privada virtual. Esta página adapta o processo para a API Live Stream.

  1. Instalar e configurar a Google Cloud CLI.

  2. Ative a API Service Networking.

    Execute o seguinte comando:

    Linux, macOS ou Cloud Shell

    gcloud services enable servicenetworking.googleapis.com
    

    Windows (PowerShell)

    gcloud services enable servicenetworking.googleapis.com
    

    Windows (cmd.exe)

    gcloud services enable servicenetworking.googleapis.com
    

  3. Para conseguir as permissões necessárias para configurar uma conexão particular, peça ao administrador para conceder a você o papel do IAM de Administrador de rede do Compute Engine (roles/compute.networkAdmin) no projeto do Google Cloud em que a rede VPC está localizada. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

    As permissões necessárias também estão disponíveis por meio de papéis personalizados ou outros papéis predefinidos.

  4. Na rede VPC, aloque um intervalo de IP nomeado usando o comando addresses create, conforme mostrado nos exemplos a seguir.

    Para especificar um intervalo de endereços e um comprimento de prefixo, que também é a máscara de sub-rede, use as sinalizações addresses e prefix-length. Por exemplo, para alocar o bloco CIDR 192.168.0.0/13, especifique 192.168.0.0 para o endereço e 13 para o tamanho do prefixo.

    Antes de usar os dados do comando abaixo, faça estas substituições:

    • RESERVED_RANGE_NAME: um nome para o intervalo alocado, como my-allocated-range.
    • DESCRIPTION: uma descrição para o intervalo, como allocated for my-service
    • VPC_NETWORK: o nome da rede VPC, como my-vpc-network

    Execute o seguinte comando:

    Linux, macOS ou Cloud Shell

    gcloud compute addresses create RESERVED_RANGE_NAME \
        --global \
        --purpose=VPC_PEERING \
        --addresses=192.168.0.0 \
        --prefix-length=13 \
        --description="DESCRIPTION" \
        --network=VPC_NETWORK
    

    Windows (PowerShell)

    gcloud compute addresses create RESERVED_RANGE_NAME `
        --global `
        --purpose=VPC_PEERING `
        --addresses=192.168.0.0 `
        --prefix-length=13 `
        --description="DESCRIPTION" `
        --network=VPC_NETWORK
    

    Windows (cmd.exe)

    gcloud compute addresses create RESERVED_RANGE_NAME ^
        --global ^
        --purpose=VPC_PEERING ^
        --addresses=192.168.0.0 ^
        --prefix-length=13 ^
        --description="DESCRIPTION" ^
        --network=VPC_NETWORK
    

    Você receberá uma resposta semelhante a esta

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/addresses/RESERVED_RANGE_NAME].

    Para especificar apenas o tamanho de um prefixo, use a sinalização prefix-length. Quando você omite o intervalo de endereços, o Google Cloud seleciona automaticamente um intervalo não utilizado na rede VPC. No exemplo a seguir, é selecionado um intervalo de endereços IP não utilizado com um comprimento de prefixo de 13 bits.

    Antes de usar os dados do comando abaixo, faça estas substituições:

    • RESERVED_RANGE_NAME: um nome para o intervalo alocado, como my-allocated-range.
    • DESCRIPTION: uma descrição para o intervalo, como allocated for my-service
    • VPC_NETWORK: o nome da rede VPC, como my-vpc-network

    Execute o seguinte comando:

    Linux, macOS ou Cloud Shell

    gcloud compute addresses create RESERVED_RANGE_NAME \
        --global \
        --purpose=VPC_PEERING \
        --prefix-length=13 \
        --description="DESCRIPTION" \
        --network=VPC_NETWORK
    

    Windows (PowerShell)

    gcloud compute addresses create RESERVED_RANGE_NAME `
        --global `
        --purpose=VPC_PEERING `
        --prefix-length=13 `
        --description="DESCRIPTION" `
        --network=VPC_NETWORK
    

    Windows (cmd.exe)

    gcloud compute addresses create RESERVED_RANGE_NAME ^
        --global ^
        --purpose=VPC_PEERING ^
        --prefix-length=13 ^
        --description="DESCRIPTION" ^
        --network=VPC_NETWORK
    

    Você receberá uma resposta semelhante a esta

    Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/addresses/RESERVED_RANGE_NAME].

    O exemplo anterior cria uma conexão particular com o Google para que as instâncias de VM na rede VPC fornecida (por exemplo, my-vpc-network) possam usar o acesso a serviços particulares para acessar os serviços do Google compatíveis.

    A API Live Stream requer a alocação de um bloco CIDR/13 por região. Se você planeja usar a API Live Stream em várias regiões, aloque um bloco maior. A tabela abaixo descreve o tamanho de bloco recomendado para alocar dependendo do número de regiões:

    Número de regiõeso valor da sinalização prefix-length.
    113
    212
    3-411
    5-810
    7-169
  5. Crie uma conexão particular entre a rede do produtor de serviço e a rede VPC:

    1. Crie uma conexão particular.

      Antes de usar os dados do comando abaixo, faça estas substituições:

      • RESERVED_RANGE_NAME: o nome do intervalo alocado que você criou na etapa anterior
      • VPC_NETWORK: o nome da rede VPC.
      • PROJECT_ID: o ID do projeto do Google Cloud que contém a rede VPC

      Execute o seguinte comando:

      Linux, macOS ou Cloud Shell

      gcloud services vpc-peerings connect \
          --service=servicenetworking.googleapis.com \
          --ranges=RESERVED_RANGE_NAME \
          --network=VPC_NETWORK \
          --project=PROJECT_ID
      

      Windows (PowerShell)

      gcloud services vpc-peerings connect `
          --service=servicenetworking.googleapis.com `
          --ranges=RESERVED_RANGE_NAME `
          --network=VPC_NETWORK `
          --project=PROJECT_ID
      

      Windows (cmd.exe)

      gcloud services vpc-peerings connect ^
          --service=servicenetworking.googleapis.com ^
          --ranges=RESERVED_RANGE_NAME ^
          --network=VPC_NETWORK ^
          --project=PROJECT_ID
      

      Você receberá uma resposta semelhante a esta

      Operation "operations/OPERATION_ID" finished successfully.

      Esse comando cria uma operação de longa duração (LRO, na sigla em inglês).

    2. Se o comando for bem-sucedido, pule para a próxima etapa. Caso contrário, verifique o status da operação.

      Antes de usar os dados do comando abaixo, faça estas substituições:

      • OPERATION_ID: o ID da operação retornada na etapa anterior

      Execute o seguinte comando:

      Linux, macOS ou Cloud Shell

      gcloud services vpc-peerings operations describe \
        --name=operations/OPERATION_ID
      

      Windows (PowerShell)

      gcloud services vpc-peerings operations describe `
        --name=operations/OPERATION_ID
      

      Windows (cmd.exe)

      gcloud services vpc-peerings operations describe ^
        --name=operations/OPERATION_ID
      

      Você receberá uma resposta semelhante a esta

      Operation "operations/OPERATION_ID" finished successfully.

  6. (Opcional) Se você estiver usando o VPC Service Controls, será necessário ativar o VPC-SC para a conexão particular que acabou de criar.

    Antes de usar os dados do comando abaixo, faça estas substituições:

    • VPC_NETWORK: o nome da rede VPC.

    Execute o seguinte comando:

    Linux, macOS ou Cloud Shell

    gcloud services vpc-peerings enable-vpc-service-controls \
        --service=servicenetworking.googleapis.com \
        --network=VPC_NETWORK
    

    Windows (PowerShell)

    gcloud services vpc-peerings enable-vpc-service-controls `
        --service=servicenetworking.googleapis.com `
        --network=VPC_NETWORK
    

    Windows (cmd.exe)

    gcloud services vpc-peerings enable-vpc-service-controls ^
        --service=servicenetworking.googleapis.com ^
        --network=VPC_NETWORK
    

    Você receberá uma resposta semelhante a esta

    Operation "operations/OPERATION_ID" finished successfully.

  7. (Opcional) Se você tiver uma rede local conectada à sua VPC, será possível configurar a conexão de peering para que os hosts locais possam se comunicar com a rede do produtor de serviços. Para mais informações, consulte Solução de problemas de hosts no local.