Como se conectar a buckets do Cloud Storage
Nesta página, apresentamos o Cloud Storage como uma opção para armazenar dados de machine learning e resultado do treinamento. Também descrevemos como conceder ao Cloud TPU acesso aos objetos de dados no Cloud Storage.
Antes de começar
É preciso ter uma conta de serviço do Cloud TPU para acessar um bucket do Cloud Storage.
Crie uma conta de serviço do Cloud TPU para seu projeto.
gcloud beta services identity create --service tpu.googleapis.com --project project-id
O comando retorna uma conta de serviço do Cloud TPU com o seguinte formato:
service-project-number@cloud-tpu.iam.gserviceaccount.com
Siga as instruções dos guias de início rápido do Cloud TPU ou Gerenciar TPUs para configurar o projeto Google Cloud e criar recursos de VM e TPU do Cloud TPU.
Gravar dados no Cloud Storage
Console
Acesse a página do Cloud Storage no console do Google Cloud.
Crie um novo bucket especificando as opções a seguir:
- Um nome exclusivo à sua escolha
- Classe de armazenamento padrão:
Standard
- Local: a região em que você criou o Cloud TPU. Para mais informações sobre regiões e disponibilidade de TPU, consulte Regiões e zonas de TPU.
CLI
Use o comando
gcloud storage buckets create
para criar um bucket do Cloud Storage:gcloud storage buckets create gs://bucket-name --location region
em que:
region é a região em que você criou o Cloud TPU. Para mais informações sobre regiões e disponibilidade de TPU, consulte Regiões e zonas de TPU.
bucket-name é o nome do bucket que você quer criar.
Use o comando
gcloud storage cp
para gravar arquivos no bucket do Cloud Storage:gcloud storage cp -r local-data-dir gs://bucket-name
em que local-data-dir é um caminho local para seus dados. Por exemplo:
$HOME/your-data
Conceder acesso ao Cloud TPU ao Cloud Storage
É necessário conceder ao Cloud TPU acesso de leitura e gravação aos objetos do Cloud Storage. Para isso, conceda o acesso necessário à conta de serviço do Cloud TPU usada por ele. As seções a seguir mostram como encontrar a conta de serviço do Cloud TPU e conceder o acesso necessário.
Autorizar a conta de serviço do Cloud TPU
A maneira recomendada de autorizar a conta de serviço do Cloud TPU é usando listas de controle de acesso (ACLs) refinadas. Também é possível conceder permissões mais amplas usando as permissões do IAM.
Como usar Access Control Lists (ACLs) refinadas para o Cloud TPU (recomendado)
Se você armazenar dados de treinamento no Cloud Storage, será necessário conceder à conta de serviço do Cloud TPU permissão de leitura e gravação no bucket.
Console
Acesse a página do navegador do Cloud Storage para ver seus buckets.
Selecione o bucket cuja ACL você quer modificar.
Selecione a guia Permissões.
Selecione Conceder acesso para adicionar uma nova permissão e digite o nome completo da conta de serviço na caixa de edição Novos principais.
Se você estiver lendo esse bucket, autorize a conta de serviço da TPU a ler esse recurso. Isso pode ser feito concedendo o papel
Storage Legacy > Storage Legacy Bucket Reader
à conta de serviço.Se você estiver gravando nesse bucket, autorize a conta de serviço da TPU a gravar nesse recurso. Isso pode ser feito concedendo o papel
Storage Legacy > Storage Legacy Bucket Writer
à conta de serviço.
CLI
Se você estiver lendo esse bucket, conceda a permissão de leitura à conta de serviço do Cloud TPU:
gcloud storage buckets add-iam-policy-binding gs://bucket-name --member=serviceAccount:service-account --role=roles/storage.objectViewer
Se você estiver gravando nesse bucket, conceda a permissão de gravação à conta de serviço do Cloud TPU:
gcloud storage buckets add-iam-policy-binding gs://bucket-name --member=serviceAccount:service-account --role=roles/storage.objectCreator
Como usar permissões do IAM para o Cloud TPU (alternativa)
Se você quiser conceder permissões mais amplas, em vez de permitir explicitamente o acesso a cada bucket, conceda à conta de serviço do Cloud TPU o papel de Administrador do Storage no Identity Access Management (IAM).
Clique no botão Conceder acesso para adicionar participantes ao projeto.
Insira os nomes da conta de serviço do Cloud TPU na caixa de texto Principais.
Clique na lista suspensa Papéis.
Ative os seguintes papéis:
Projeto > Leitor
Storage > Administrador do Storage
Cloud Storage FUSE
O Cloud Storage FUSE permite montar e acessar buckets do Cloud Storage como sistemas de arquivos locais. Isso permite que os aplicativos leiam e gravem objetos no bucket usando a semântica padrão de sistemas de arquivos.
Consulte a documentação do Cloud Storage FUSE para saber como ele funciona e como as operações do Cloud Storage FUSE são mapeadas. Confira mais informações sobre como usar o Cloud Storage FUSE, como instalar a CLI gcsfuse e montar buckets no GitHub.
Limpar
Desconecte-se do Cloud TPU, se ainda não tiver feito isso:
(vm)$ exit
No Cloud Shell, exclua a Cloud TPU:
gcloud compute tpus tpu-vm delete tpu-name --zone=zone
Execute
gcloud compute tpus tpu-vm list
para verificar se a VM foi excluída. A exclusão pode levar vários minutos.gcloud compute tpus tpu-vm list --zone=zone
Uma resposta como esta indica que suas instâncias foram excluídas.
Listed 0 items
Execute o comando a seguir para excluir o bucket do Cloud Storage e o conteúdo dele, substituindo bucket-name pelo nome do bucket que você criou:
gcloud storage rm --recursive gs://bucket-name
A seguir
- Para saber mais sobre como criar buckets do Cloud Storage e gravar dados neles, consulte a documentação de criação de buckets do Cloud Storage.
- Para mais informações sobre contas de serviço, consulte a visão geral da autenticação.