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 com os aplicativos empresariais atuais e é compatível com qualquer cliente compatível com NFSv3.

Antes de começar

Para montar uma instância do Filestore na VM do Cloud TPU, você precisa adicionar um papel do Filestore (editor ou leitor do Cloud Filestore) à conta de serviço associada à VM do Cloud TPU. Se você não especificar uma conta de serviço personalizada ao criar uma VM do Cloud TPU, ela vai 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 a função 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 mostra uma caixa de diálogo com a lista de papéis atribuídos à conta de serviço padrão do Compute Engine.

  4. Clique em para adicionar outro papel.

  5. Abra 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 das contas 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 seguindo 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 montar uma instância do Filestore em uma Cloud TPU dependem se você está usando uma única Cloud TPU ou um selo da Cloud TPU.

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

  1. Conecte-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 seu diretório de montagem. Substitua filestore-ip, file-share-name e mount-dir pelo endereço IP, nome do compartilhamento de arquivos e diretório de montagem do FileStore.
          sudo mount filestore-ip:file-share-name mount-dir
        

Montar uma instância do Filestore em um slice do Cloud TPU

As frações 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 flags --worker=all e --command para executar os comandos em todas as VMs da Cloud TPU de uma só vez.

  1. Instale o pacote nfs-common em todas as VMs do Cloud TPU na sua fatia.
            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. Crie um diretório para montar a instância do Filestore. Substitua mount-dir 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 && sudo chmod ugo+rw mount-dir"
          
  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 no seu slice do Cloud TPU. Substitua filestore-ip, file-share-name e mount-dir pelo endereço IP, nome do compartilhamento de arquivos e diretório de montagem do FileStore.
          gcloud compute tpus tpu-vm ssh your-tpu-name \
            --project=your-gcp-project \
              --zone=your-zone \
              --worker=all \
              --command="sudo mount filestore-ip:file-share-name mount-dir"
          

Como gravar dados na instância do Filestore

Garanta que você concede permissões de leitura e gravação do Linux no diretório em que monta a instância do Filestore. Você pode usar o diretório como se fosse seu sistema de arquivos local.