Montar uma instância do Filestore em VMs do Cloud TPU

O Filestore é um armazenamento conectado à rede (NAS) totalmente gerenciado para o Compute Engine. O Filestore oferece compatibilidade nativa para aplicativos empresariais existentes e dá suporte a qualquer cliente compatível com NFSv3.

Antes de começar

Para montar uma instância do Filestore na sua VM do Cloud TPU, adicione um papel do Filestore (editor do Cloud Filestore ou leitor do Cloud Filestore) à conta de serviço associada à sua VM do Cloud TPU. Se você não especificar uma conta de serviço personalizada ao criar uma VM do Cloud TPU, a VM do Cloud TPU usará a conta de serviço padrão do Compute Engine. Para mais informações sobre como especificar uma conta de serviço ao criar uma VM do Cloud TPU, consulte Configurar o ambiente do Cloud TPU. Para mais informações sobre como criar uma conta de serviço, consulte Criar contas de serviço.

Adicionar o papel de Editor do Filestore a uma conta de serviço

As instruções a seguir mostram como adicionar o papel de Editor do Cloud Filestore à conta de serviço padrão do Compute Engine. Siga estas instruções para adicionar o papel de Editor do Cloud Filestore a qualquer conta de serviço. É possível pesquisar e usar uma conta de serviço personalizada em vez da conta de serviço padrão do Compute Engine na etapa 2.

  1. Abra o Console do IAM.

  2. Selecione a guia Visualizar por principais e digite Name:Compute Engine default service account no campo Filtro.

  3. Clique em ao lado da conta de serviço. O console do IAM exibe uma caixa de diálogo que lista os papéis atribuídos à conta de serviço padrão do Compute Engine.

  4. Clique em para adicionar outro papel.

  5. Expanda o menu suspenso Selecionar um papel, digite Filestore no filtro e selecione Editor do Cloud Filestore.

  6. Clique em Salvar para dispensar a caixa de diálogo. Você adicionou o papel de Editor do Filestore à conta de serviço padrão do Compute Engine.

Para mais informações sobre contas de serviço, consulte Visão geral da conta de serviço. Para saber mais sobre os papéis do IAM, consulte Papéis e permissões.

Criar uma instância do Filestore

Crie uma instância do Filestore usando as instruções em Como criar instâncias do Filestore.

Montar uma instância do Filestore em uma VM do Cloud TPU

Os comandos usados para ativar uma instância do Filestore em um Cloud TPU dependem do uso de um único Cloud TPU ou de uma fração de pod do Cloud TPU.

Montar uma instância do Filestore em uma única VM da Cloud TPU

  1. Conectar-se à VM do Cloud TPU usando SSH.
          gcloud compute tpus tpu-vm ssh your-tpu-name \
            --zone=your-zone
        
  2. Instale o pacote nfs-common.
          sudo apt-get update --allow-releaseinfo-change \
            && sudo apt-get -y update \
            && sudo apt-get -y install nfs-common
        
  3. Criar um diretório para montar o NFS
          sudo mkdir -p mount-dir \
            && sudo chmod ugo+rw mount-dir
        
  4. Encontre o endereço IP do Filestore.
          gcloud filestore instances describe filestore-instance-name \
            --region filestore-region
        
  5. monte a instância do Filestore na VM do Cloud TPU no diretório ativado.
          sudo mount filestore-ip:file-share-name mount-dir-name
        

Montar uma instância do Filestore em uma fração do Pod do Cloud TPU

As frações do Pod do Cloud TPU são compostas por duas ou mais VMs do Cloud TPU. Os comandos a seguir usam o comando gcloud compute tpus tpu-vm ssh com as sinalizações --worker=all e --command para executar os comandos em todas as VMs do Cloud TPU de uma só vez.

  1. Instale o pacote nfs-common em todas as VMs do Cloud TPU na fração do pod.
            gcloud compute tpus tpu-vm ssh your-tpu-name \
              --project=your-gcp-project \
              --zone=your-zone \
              --worker=all \
              --command="sudo apt-get update --allow-releaseinfo-change && sudo apt-get -y update && sudo apt-get -y install nfs-common"
          
  2. Criar um diretório para ativar a instância do Filestore. Substitua mount-dir-name por um nome de diretório de sua escolha.
          gcloud compute tpus tpu-vm ssh your-tpu-name \
            --project=your-gcp-project \
              --zone=your-zone \
              --worker=all \
              --command="sudo mkdir -p mount-dir-name && sudo chmod ugo+rw mount-dir-name"
          
  3. Encontre o endereço IP da instância do Filestore.
          gcloud filestore instances describe filestore-instance-name \
            --region filestore-region
        
  4. monte a instância do Filestore na VM do Cloud TPU. Substitua o seguinte:
          sudo mount filestore-ip:file-share-name mount-dir
        

Como gravar dados na instância do Filestore

Conceda permissões de leitura e gravação do Linux no diretório em que você monta a instância do Filestore. Use o diretório como faria com o sistema de arquivos local.