Monte um bucket do Cloud Storage usando o Cloud Storage FUSE

Saiba como montar um bucket do Cloud Storage como um sistema de arquivos local usando o Cloud Storage FUSE. Assim, é possível interagir com seus objetos usando a semântica padrão de sistema de arquivos.

Neste guia de início rápido, você concluirá as seguintes tarefas:

  • Instalar o Cloud Storage FUSE no Debian ou no Ubuntu

  • Montar o bucket como uma pasta na máquina

  • Fazer upload de um objeto para o bucket

Use a Google Cloud CLI para criar e gerenciar o objeto no bucket de armazenamento e a CLI do gcsfuse para montar o bucket na sua máquina.

Antes de começar

Para configurar um projeto, siga estas etapas:

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, clique em Criar projeto para começar a criar um novo projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. Instale a CLI do Google Cloud.
  5. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  6. No console do Google Cloud, na página do seletor de projetos, clique em Criar projeto para começar a criar um novo projeto do Google Cloud.

    Acessar o seletor de projetos

  7. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  8. Instale a CLI do Google Cloud.
  9. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  10. Tenha um bucket do Cloud Storage que você queira montar. Se você ainda não tiver um, crie um novo bucket.

Instale o Cloud Storage FUSE

Para instalar o Cloud Storage FUSE, siga as instruções a seguir usando o shell local no Debian ou no Ubuntu:

  1. Adicione o URL de distribuição do Cloud Storage FUSE como uma origem de pacote:

    export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s`
    echo "deb https://packages.cloud.google.com/apt $GCSFUSE_REPO main" | sudo tee /etc/apt/sources.list.d/gcsfuse.list
  2. Importe a chave pública do repositório APT do Google Cloud:

    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
  3. Atualize a lista de pacotes disponíveis:

    sudo apt-get update
  4. Instale o Cloud Storage FUSE e a dependência FUSE:

    sudo apt-get install fuse gcsfuse
  5. Quando solicitado, pressione Enter para confirmar.

  6. Confirme se o Cloud Storage FUSE foi instalado:

    gcsfuse -v

    Se for bem-sucedido, o comando retornará uma saída semelhante a esta:

    gcsfuse version 0.41.12 (Go version go1.18.4)

Monte o bucket

Para montar o bucket no sistema de arquivos local, siga estas etapas:

  1. Gere o Application Default Credentials usando o comando gcloud auth application-default login:

    gcloud auth application-default login

    O Cloud Storage FUSE carrega automaticamente as credenciais.

  2. Crie um diretório para montar o bucket de armazenamento:

    mkdir "$HOME/mount-folder"
  3. Monte o bucket de armazenamento usando o comando gcsfuse:

    gcsfuse BUCKET_NAME "$HOME/mount-folder"

    Substitua BUCKET_NAME pelo nome do bucket que você quer montar.

    Se bem-sucedido, o comando vai retornar uma saída com um texto semelhante ao seguinte:

    File system has been successfully mounted.

faça upload de um objeto no bucket

Para fazer o download de um objeto de exemplo e fazer upload dele para o bucket montado, siga estas etapas:

Imagem de um gatinho para fazer upload no bucket.

  1. Clique com o botão direito na imagem acima e salve-a em algum lugar do computador, por exemplo, na área de trabalho.

    Também é possível fazer o download da imagem usando o comando cURL curl -O https://cloud.google.com/storage/images/kitten.png.

  2. Copie a imagem do local salvo para a pasta em que o bucket está montado usando o comando cp:

    cp kitten.png "$HOME/mount-folder/kitten.png"
  3. Verifique se a imagem foi copiada para o sistema de arquivos local e se o upload dela para o bucket foi bem-sucedido seguindo as etapas abaixo:

    1. Para verificar se kitten.png foi copiado para o sistema de arquivos local, execute ls na pasta em que o bucket está montado:

      ls "$HOME/mount-folder"

      Se a operação de cópia tiver sido bem-sucedida, kitten.png será retornado na saída.

    2. Para listar o conteúdo do bucket, use o comando gcloud storage ls:

      gcloud storage ls gs://BUCKET_NAME

      Substitua BUCKET_NAME pelo nome do bucket.

      Se o upload da imagem para o bucket foi bem-sucedido, kitten.png será retornado na saída.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, exclua os recursos seguindo estas etapas:

  1. Desconecte o bucket de armazenamento da sua máquina Linux usando a ferramenta fusermount:

    fusermount -u "$HOME/mount-folder"
  2. Para excluir o bucket e tudo que estiver dentro dele, use o comando gcloud storage rm com o sinalizador --recursive:

    gcloud storage rm gs://BUCKET_NAME --recursive

    Substitua BUCKET_NAME pelo nome do bucket.

    Se for bem-sucedido, o comando retornará uma saída semelhante a esta:

    Removing gs://my-bucket/kitten.png#1676488739323620...
     Removing gs://my-bucket/...

A seguir