Criar uma instância do Filestore usando a CLI gcloud

Este guia de início rápido mostra como começar a usar o Filestore rapidamente usando a Google Cloud CLI. Neste tutorial, você aprenderá a realizar as seguintes tarefas:

  • Criar uma instância do Filestore.
  • Ativar o compartilhamento de arquivos dessa instância em uma VM cliente do Compute Engine.
  • Criar um arquivo no compartilhamento de arquivos ativado.
  • Excluir a instância do Filestore.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.

  3. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.

  4. Para inicializar a gcloud CLI, execute o seguinte comando:

    gcloud init
  5. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  6. Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.

  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the Filestore API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable file.googleapis.com
  9. Install the Google Cloud CLI.

  10. Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.

  11. Para inicializar a gcloud CLI, execute o seguinte comando:

    gcloud init
  12. Create or select a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  13. Se este guia estiver usando um projeto atual, verifique se você tem as permissões necessárias para concluir o guia. Se você criou um projeto, já tem as permissões necessárias.

  14. Verify that billing is enabled for your Google Cloud project.

  15. Enable the Filestore API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable file.googleapis.com
  16. Funções exigidas

    Para conseguir as permissões necessárias a fim de concluir o guia de início rápido, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:

    Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

    Também é possível conseguir as permissões necessárias usando papéis personalizados ou outros papéis predefinidos.

    Ao concluir as tarefas descritas neste documento, é possível evitar o faturamento contínuo excluindo os recursos criados. Para mais informações, consulte Limpar.

    Criar uma VM do Compute Engine

    Linux

    1. Create a Compute Engine instance. Configure the instance as follows:
      • Name the instance nfs-client.
      • Defina a flag --zone como us-central1-c.
      • Defina a flag --image-project como debian-cloud.
      • Defina a flag --image-family como debian-11.
      • Defina a flag --tags como http-server,.
      • gcloud compute instances create nfs-client --zone=us-central1-c --image-project=debian-cloud --image-family=debian-11 --tags=http-server,

    Windows

    1. Create a Compute Engine instance. Configure the instance as follows:
      • Name the instance nfs-client.
      • Defina a flag --zone como us-central1-c.
      • Defina a flag --image-project como windows-cloud.
      • Defina a flag --image-family como windows-2012-r2.
      • Defina a flag --tags como http-server,http-server,.
      • gcloud compute instances create nfs-client --zone=us-central1-c --image-project=windows-cloud --image-family=windows-2012-r2 --tags=http-server,http-server,

    Criar uma instância do Filestore

    Neste guia de início rápido, mostramos como criar uma instância na camada de serviço regional com o desempenho personalizado ativado. Para detalhes sobre como criar instâncias, consulte Criar uma instância.

    1. Criar uma instância do Filestore. Configure a instância desta maneira:

      • Nomeie a instância nfs-server.
      • Defina a sinalização --region como us-central1.
      • Defina a sinalização --tier como REGIONAL.
      • Defina a flag --performance como max-iops-per-tb=17000.

      • Defina a flag --file-share como name="vol1",capacity=1TB.

      • Defina a sinalização --network como name="default".

        gcloud filestore instances create nfs-server --region=us-central1 --tier=REGIONAL --performance=max-iops-per-tb=17000 --file-share=name="vol1",capacity=1TB --network=name="default"
    2. Receba informações sobre a instância do Filestore que você acabou de criar:

        gcloud filestore instances describe nfs-server --region=us-central1 

      O comando retorna algo como:

          createTime: '2025-02-12T09:15:08.163246004Z'
          customPerformanceSupported: true
          fileShares:
           -capacityGb: '1024'
              name: vol1
          name: projects/yourproject/locations/us-central1/instances/nfs-server
          networks:
          -connectMode: DIRECT_PEERING
            ipAddresses:
             - 10.0.0.2
            network: default
            reservedIpRange: 10.0.0.2/26
          performanceConfig:
            iopsPerTb:
              maxIopsPerTb: '17000'
          performanceLimits:
            maxIops: '17000'
            maxReadIops: '17000'
            maxReadThroughputBps: '417792000'
            maxWriteIops: '5100'
            maxWriteThroughputBps: '139264000'
          protocol: NFS_V3
          state: READY
          tier: REGIONAL

    Copie o endereço IP da instância para usar ao fazer a montagem do compartilhamento de arquivos. Neste guia de início rápido, usamos o endereço IP 10.0.0.2.

    Ativar o compartilhamento de arquivos do Filestore na instância nfs-client

    Linux

      Instância de
    1. Establish an SSH connection to the nfs-client :
      gcloud compute ssh nfs-client

    1. Instale o NFS executando os seguintes comandos na janela do terminal de nfs-client:

      sudo apt-get -y update &&
      sudo apt-get -y install nfs-common
      
    2. Crie um diretório de montagem na instância nfs-client para o compartilhamento de arquivos do Filestore:

      sudo mkdir /mnt/test
      
    3. Ative o compartilhamento de arquivos na instância nfs-client com o comando mount especificando o endereço IP da instância do Filestore, o nome do compartilhamento de arquivos e o diretório de ativação para ativação:

      sudo mount MOUNT-POINT-DIRECTORY /mnt/test
      

      em que:

      MOUNT-POINT-DIRECTORY é o caminho para o diretório em que o compartilhamento de arquivos do Filestore está montado. Por exemplo: 10.0.0.2:/vol1

    4. Opcional: confirme se o compartilhamento de arquivos do Filestore está ativado:

      df -h --type=nfs

    5. Torne o compartilhamento de arquivos acessível alterando as permissões:

      sudo chmod go+rw /mnt/test
      

    Windows

    Faça login na instância nfs-client e abra um prompt de comando como administrador.

    1. Crie uma conta e defina uma senha inicial para a instância nfs-client:

      gcloud compute reset-windows-password nfs-client
      
    2. Configure a instância para ativar a conexão a portas seriais:

      gcloud compute instances add-metadata nfs-client --metadata=serial-port-enable=1
      
    3. Insira uma sessão interativa:

      gcloud compute connect-to-serial-port nfs-client --port=2
      
    4. No prompt SAC>, crie um novo canal:

      cmd
      

      Um canal com o nome Cmd0001 é criado.

    5. Conecte-se ao canal:

      ch -sn Cmd0001
      
    6. Digite o nome de usuário e a senha da instância nfs-client e deixe o campo Domain em branco. Você está conectado à interface Command Prompt da instância nfs-client.

    Instalar o cliente NFS

    1. Em Command Prompt de nfs-client, alterne para Windows PowerShell:

      powershell
      
    2. Instalar o cliente NFS:

      Install-WindowsFeature -Name NFS-Client
      
    3. Reinicie a instância nfs-client quando solicitado:

      restart-computer
      
    4. No prompt SAC>, aguarde a seguinte notificação aparecer:

      EVENT: The CMD command is now available.

      Em seguida, execute os comandos cmd e ch -sn conforme instruído anteriormente para fazer login e reconectar-se à instância nfs-client.

    Configurar o código de usuário utilizado pelo cliente NFS

    1. No prompt de comando, execute powershell para alternar para o Windows PowerShell.
    2. Em PowerShell, execute os seguintes comandos para criar duas novas entradas de registro, AnonymousUid e AnonymousGid:

      New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
          -Name "AnonymousUid" -Value "0" -PropertyType DWORD
      
      New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" `
          -Name "AnonymousGid" -Value "0" -PropertyType DWORD
      
    3. Reinicie o serviço do cliente NFS:

      nfsadmin client stop
      
      nfsadmin client start
      

    Mapear o compartilhamento de arquivos vol1 para a instância nfs-client

    1. Saia de PowerShell:

      exit
      
    2. Em Command Prompt, monte o compartilhamento de arquivos na instância nfs-client com o comando mount especificando o endereço IP da instância do Filestore, o nome do compartilhamento de arquivos e a letra da unidade para montar:

      mount -o mtype=hard 10.0.0.2:/vol1 z:
      

    Criar um arquivo no compartilhamento de arquivos ativado

    Linux

    1. Na janela do terminal nfs-client, crie um arquivo chamado testfile executando o seguinte comando:

      echo 'This is a test' > /mnt/test/testfile
      
    2. Confirme se o arquivo foi criado executando o seguinte comando e verificando se testfile está no conteúdo do diretório retornado:

      ls /mnt/test
      

    Windows

    1. Na janela de prompt de comando da instância nfs-client, crie um arquivo chamado testfile:

      echo 'This is a test' > Z:\testfile
      
    2. Confirme se o arquivo foi criado executando o seguinte comando:

      dir Z:
      

      e verifique se testfile está no conteúdo do diretório retornado.

    Limpar

    Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, exclua o projeto do Google Cloud e os recursos.

    Excluir o projeto do Google Cloud

      Delete a Google Cloud project:

      gcloud projects delete PROJECT_ID

    Excluir a instância do Filestore

    Exclua a instância nfs-server:

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

    Excluir a instância do Compute Engine

    Exclua a instância:
    gcloud compute instances delete nfs-client

    A seguir