Criar uma instância em uma rede VPC compartilhada em projetos de serviço


Neste tutorial, você verá o processo de criação de uma instância do Filestore em uma rede de VPC compartilhada a partir de um projeto de serviço.

É possível criar instâncias do Filestore em uma rede VPC compartilhada no projeto host ou em um dos projetos de serviço associados. Ao criar uma instância no projeto host, selecione a rede VPC compartilhada normalmente, e os clientes do projeto de serviço podem se conectar à instância. No entanto, se você quiser criar a instância em um projeto de serviço, primeiro ative o acesso a serviços particulares na rede VPC compartilhada pelo projeto host.

Objetivos

Custos

Neste documento, você usará os seguintes componentes faturáveis do Google Cloud:

Para gerar uma estimativa de custo baseada na projeção de uso deste tutorial, use a calculadora de preços. Novos usuários do Google Cloud podem estar qualificados para uma avaliação gratuita.

Ao concluir as tarefas descritas neste documento, é possível evitar o faturamento contínuo excluindo os recursos criados. Saiba mais em Limpeza.

Antes de começar

  1. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  2. Crie uma rede VPC compartilhada com um projeto host e um projeto de serviço conectado.
  3. Ative as APIs Filestore and Service Networking.

    Ative as APIs

Ativar o acesso a serviços privados na rede VPC compartilhada

Para criar uma instância do Filestore em um projeto de serviço que usa uma rede VPC compartilhada, essa rede precisa ter o acesso a serviços particulares (PSA, na sigla em inglês) ativado. Consulte Como configurar um intervalo de endereços IP reservados para requisitos específicos do Filestore.

Verificar se o acesso a serviços particulares está ativado para a rede VPC compartilhada

Verifique se o acesso ao serviço particular já está ativado para a rede VPC compartilhada usando um dos seguintes métodos:

Console do Google Cloud

  1. No console do Google Cloud, acesse a página "Instâncias do Filestore".

    Acessar a página de instâncias do Filestore

  2. Clique em Criar instância.

  3. Selecione a rede VPC que você quer usar.

  4. Clique em Opções de rede avançadas.

  5. A seção Conexão de acesso a serviços privados indica se o acesso a serviços privados está ativado.

CLI da gcloud

Execute este comando services vpc-peerings list:

gcloud beta services vpc-peerings list \
    --network=SHARED_VPC_NAME \
    --project=HOST_PROJECT_ID

Substitua:

  • SHARED_VPC_NAME pelo nome da rede VPC compartilhada que você quer usar para sua instância do Filestore.
  • HOST_PROJECT_ID pelo ID do projeto host que contém a rede VPC compartilhada.

Se o acesso privado a serviços já estiver ativado, a resposta mostrará que um peering foi estabelecido para servicenetworking-googleapis-com:

network: projects/PROJECT_NUMBER/global/networks/SHARED_VPC_NAME
peering: servicenetworking-googleapis-com
reservedPeeringRanges: RANGES

Se o acesso a serviços particulares estiver ativado para a rede VPC compartilhada, será possível começar a criar instâncias do Filestore nele. Caso contrário, primeiro você precisará ativar o acesso privado a serviços.

Ativar o acesso a serviços privados

É necessário ter o papel de Proprietário (roles/owner), Editor (roles/editor) ou Administrador de gerenciamento de rede (roles/networkmanagement.admin) para criar intervalos de endereços IP alocados e gerenciar conexões particulares. Se você não tiver esses privilégios, entre em contato com o administrador da rede. Saiba mais em Noções básicas sobre papéis.

Ative o acesso a serviços particulares em uma rede VPC compartilhada usando um dos seguintes métodos:

Console do Google Cloud

Reservar um intervalo de endereços IP na rede VPC compartilhada para serviços gerenciados do Google

  1. Acesse a página "Redes VPC" no Console do Google Cloud.

    Acessar a página "Redes VPC"

  2. Selecione o projeto host que contém a rede VPC compartilhada que você quer usar.

  3. Clique no nome da rede VPC compartilhada em que você quer criar a instância do Filestore.

  4. Selecione a guia Conexão de serviço privado.

  5. Na guia Conexão de serviço privado, selecione Intervalos de IP alocados para serviços.

  6. Clique em Alocar intervalo de IP e configure-o da seguinte maneira:

    • Name: google-service-range
    • Descrição: Peering range for Google managed services
    • Intervalo de IP:

      • Selecionar Automático.
      • No campo de texto, digite 20 como prefixo. Esse intervalo é usado por todos os serviços gerenciados do Google Cloud. Portanto, na prática, você pode precisar de algo maior. As instâncias de nível básico exigem um prefixo de /29 e instâncias de nível zonal com um intervalo de capacidade maior (anteriormente SSD de alta escala) e instâncias de nível por zona com um intervalo de capacidade menor exigem um prefixo /26.
  7. Clique em Alocar para criar o intervalo alocado.

Crie uma conexão particular para a rede VPC compartilhada e a rede de serviços gerenciada pelo Google

  1. Acesse a página "Redes VPC" no Console do Google Cloud.

    Acessar a página "Redes VPC"

  2. Selecione o projeto host que contém a rede VPC compartilhada que você quer usar.

  3. Clique no nome da rede VPC compartilhada em que você quer criar a instância do Filestore.

  4. Selecione a guia Conexão de serviço privado.

  5. Na guia Conexão de serviço privado, selecione a guia Conexões privadas com os serviços.

  6. Clique em Criar conexão.

  7. Em Alocação atribuída, selecione google-service-range.

  8. Clique em Conectar para criar a conexão.

CLI da gcloud

  1. Reserve um intervalo de endereços IP na rede VPC compartilhada para serviços gerenciados do Google executando o seguinte comando compute addresses create:

    gcloud compute addresses create google-service-range \
        --global \
        --purpose=VPC_PEERING \
        --prefix-length=PREFIX \
        --description="Peering range for Google managed services" \
        --network=SHARED_VPC_NAME \
        --project=PROJECT_ID
    

    Substitua:

    • PREFIX por um comprimento de prefixo; As instâncias de nível básico exigem um prefixo /29 e as instâncias de nível zonal exigem um prefixo /26. No entanto, esse intervalo é usado por todos os serviços gerenciados do Google Cloud. Se você planeja usar várias instâncias do Filestore ou outros serviços gerenciados pelo Google Cloud, precisará de um prefixo maior, por exemplo, /20.
    • SHARED_VPC_NAME pelo nome da rede VPC compartilhada em que você quer criar a instância do Filestore;
    • PROJECT_ID pelo ID do projeto host que contém a rede VPC compartilhada.
  2. Execute o comando services vpc-peerings connect para criar uma conexão particular para a rede VPC compartilhada e a rede de serviços gerenciados do Google:

    gcloud services vpc-peerings connect \
        --service=servicenetworking.googleapis.com \
        --ranges=google-service-range \
        --network=SHARED_VPC_NAME \
        --project=HOST_PROJECT_ID
    

    Substitua:

    • SHARED_VPC_NAME pelo nome da rede VPC compartilhada em que você quer criar a instância do Filestore;
    • HOST_PROJECT_ID pelo ID do projeto host que contém a rede VPC compartilhada.

    O comando inicia uma operação de longa duração e retorna um nome de operação.

  3. Verifique se a operação foi bem-sucedida usando o comando services vpc-peerings operations describe:

    gcloud services vpc-peerings operations describe \
        --name=OPERATION_NAME
    

    Substitua OPERATION_NAME pelo nome da operação retornado na etapa anterior.

Para mais informações sobre como alocar intervalos de endereços IP e criar conexões particulares, consulte Como configurar o acesso privado a serviços.

Opcional: ativar o VPC Service Controls

Depois que o acesso a serviços particulares estiver ativado, será possível ativar o VPC Service Controls. Para fazer isso, execute o comando services vpc-peerings enable-vpc-service-controls:

gcloud beta services vpc-peerings enable-vpc-service-controls \
    --network=SHARED_VPC_NAME \
    --project=HOST_PROJECT_ID \
    --service=servicenetworking.googleapis.com

Substitua:

  • SHARED_VPC_NAME pelo nome da rede VPC compartilhada em que você quer criar a instância do Filestore.
  • HOST_PROJECT_ID pelo ID do projeto host que contém a rede VPC compartilhada.

Para mais informações sobre como usar o Filestore com o VPC Service Controls, consulte Como proteger instâncias com um perímetro de serviço.

Criar uma instância do Filestore na rede VPC compartilhada

Depois que a rede VPC compartilhada tiver acesso de serviços particulares ativado, será possível começar a criar instâncias do Filestore a partir de um projeto de serviço.

Console do Google Cloud

  1. No console do Google Cloud, acesse a página "Instâncias do Filestore".

    Acessar a página de instâncias do Filestore

  2. Clique em Criar instância e configure a instância da seguinte maneira:

    • Defina o ID da instância como nfs-server.
    • Defina o Tipo de instância como Básico.
    • Defina Tipo de armazenamento como HDD.
    • Defina Alocar capacidade como 1 TB.
    • Defina Região como us-central1 e Zona como us-central1-c.
    • Defina Rede VPC como a rede VPC compartilhada, que aparece no formato "projects/HOST_PROJECT_ID/global/networks/SHARED_VPC_NAME".
    • Defina Nome do compartilhamento de arquivos como vol1.
    • Defina Intervalo de IP alocado como Usar um intervalo de IP alocado automaticamente.
    • Defina Controles de acesso como Conceder acesso a todos os clientes.
  3. Clique em Criar.

CLI da gcloud

Execute este comando instances create:

gcloud filestore instances create nfs-server \
    --project=SERVICE_PROJECT_ID \
    --zone=us-central1-c \
    --tier=BASIC_HDD \
    --file-share=name="vol1",capacity=1TiB \
    --network=name="projects/HOST_PROJECT_ID/global/networks/SHARED_VPC_NAME",connect-mode=PRIVATE_SERVICE_ACCESS

Substitua:

  • SERVICE_PROJECT_ID pelo ID do projeto de serviço em que você quer criar uma instância do Filestore;
  • HOST_PROJECT_ID pelo ID do projeto host que contém a rede VPC compartilhada.
  • SHARED_VPC_NAME pelo nome da rede VPC compartilhada em que você quer criar a instância do Filestore.

Opcional: importar rotas de sub-rede

Se as instâncias do Filestore usarem IPs públicos (endereços IP não RFC 1918) e você quiser ativar o PSA, será preciso importar as rotas de sub-rede IP pública da instância para a rede VPC compartilhada. Para isso, atualize o peering de VPC da rede de serviços para permitir a importação de rotas de sub-rede com IPs públicos. Para mais informações, consulte Atualizar uma conexão de peering.

Montar sua instância em um cliente de projeto de serviço

Depois de criar uma instância do Filestore em uma rede VPC compartilhada, é possível ativá-la em qualquer cliente que esteja na mesma rede. Para instruções sobre montagem, consulte Como montar compartilhamentos de arquivos em clientes do Compute Engine.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.

Excluir a instância do Filestore

Console do Google Cloud

  1. No console do Google Cloud, acesse a página "Instâncias do Filestore".

    Acessar a página de instâncias do Filestore

  2. Clique no código da instância nfs-server para abrir a página de detalhes da instância.

  3. Clique em Excluir .

  4. Quando solicitado, digite o código da instância.

  5. Clique em Excluir.

CLI da gcloud

Exclua a instância nfs-server usando o comando instances delete:

gcloud filestore instances delete nfs-server --zone=us-central1-c

A seguir