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

Neste tutorial, explicamos o processo de criação de uma instância do Filestore em uma rede VPC compartilhada 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 privado a serviços na rede VPC compartilhada do projeto host.

Objetivos

Custos

Neste tutorial, usamos 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 ser qualificados para uma avaliação gratuita.

Ao concluir este tutorial, exclua os recursos criados para evitar o faturamento contínuo. Para mais informações, consulte Como fazer a limpeza.

Novos usuários do Google Cloud podem estar qualificados para uma avaliação gratuita.

Antes de começar

  1. Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como confirmar se o faturamento está ativado para o projeto.

  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, a rede VPC compartilhada precisa ter o acesso a serviços particulares ativado.

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

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

Console do Cloud

  1. No Console do 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 compartilhada 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.

Ferramenta gcloud

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 a instância do Filestore.
  • HOST_PROJECT_ID pelo ID do projeto host que contém a rede VPC compartilhada.

Se o acesso a serviços particulares 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, comece a criar instâncias do Filestore. Caso contrário, você precisará primeiro ativar o acesso privado a serviços.

Ativar o Acesso privado a serviços

Você precisa 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. Para mais informações, consulte Noções básicas sobre papéis.

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

Console do Cloud

Reservar um intervalo de endereços IP na rede VPC compartilhada para serviços gerenciados 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 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:

      • Selecione Automático.
      • No campo de texto, digite 20 como prefixo. Esse intervalo é usado por todos os serviços gerenciados pelo Google Cloud. Portanto, na prática, talvez você precise de algo maior. As instâncias do nível básico exigem um prefixo de /29 e as instâncias de alta escala exigem um prefixo /24.
  7. Clique em Alocar para criar o intervalo alocado.

Criar uma conexão particular com a rede VPC compartilhada e a rede de serviços gerenciados 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.

Ferramenta gcloud

  1. Reserve um intervalo de endereços IP na rede VPC compartilhada para serviços gerenciados pelo Google executando:

    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 tamanho de prefixo; As instâncias do nível básico exigem um prefixo /29 e as instâncias do nível de alta escala exigem um prefixo /24. 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 do Google Cloud, precisa 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. Crie uma conexão particular com a rede VPC compartilhada e a rede de serviços gerenciados do Google executando:

    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:

    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 a serviços privados.

Opcional: ativar o VPC Service Controls

Depois que o acesso privado a serviços for ativado, você poderá ativar o VPC Service Controls executando:

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 sua rede VPC compartilhada tem o acesso a serviços particulares ativado, é possível começar a criar instâncias do Filestore a partir de um projeto de serviço.

Console do Cloud

  1. No Console do 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 Tipo de instância como Básico.
    • Defina o Tipo de armazenamento para HDD.
    • Defina Alocar capacidade como 1 TB.
    • Defina a 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.

Ferramenta gcloud

gcloud [beta] 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.

Ativar 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 montá-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.

Como excluir a instância do Filestore

Console do Cloud

  1. No Console do Cloud, acesse a página de 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.

Ferramenta gcloud

Exclua a instância nfs-server:

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

A seguir