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. 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. In the Google Cloud console, on the project selector page, click Create project to begin creating a new Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Make sure that you have the following role or roles on the project: Storage Admin (roles/storage.admin), Storage Bucket Viewer (roles/storage.bucketViewer)

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Acessar o IAM
    2. Selecionar um projeto.
    3. Clique em CONCEDER ACESSO.
    4. No campo Novos principais, insira seu identificador de usuário. Normalmente, é o endereço de e-mail de uma Conta do Google.

    5. Na lista Selecionar um papel, escolha um.
    6. Para conceder outros papéis, clique em Adicionar outro papel e adicione cada papel adicional.
    7. Clique em Salvar.
  5. Install the Google Cloud CLI.

  6. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  7. To initialize the gcloud CLI, run the following command:

    gcloud init
  8. In the Google Cloud console, on the project selector page, click Create project to begin creating a new Google Cloud project.

    Go to project selector

  9. Make sure that billing is enabled for your Google Cloud project.

  10. Make sure that you have the following role or roles on the project: Storage Admin (roles/storage.admin), Storage Bucket Viewer (roles/storage.bucketViewer)

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Acessar o IAM
    2. Selecionar um projeto.
    3. Clique em CONCEDER ACESSO.
    4. No campo Novos principais, insira seu identificador de usuário. Normalmente, é o endereço de e-mail de uma Conta do Google.

    5. Na lista Selecionar um papel, escolha um.
    6. Para conceder outros papéis, clique em Adicionar outro papel e adicione cada papel adicional.
    7. Clique em Salvar.
  11. Install the Google Cloud CLI.

  12. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  13. To initialize the gcloud CLI, run the following command:

    gcloud init
  14. Tenha um bucket do Cloud Storage que você queira montar. Se você ainda não tiver um, crie um novo bucket.
  15. 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 Google Cloud APT:

      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 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:

      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