Adicionando bucket do Cloud Storage em instância do Compute Engine

Neste tutorial vamos mostrar como adicionar um bucket do storage cloud em instância no Compute Engine. Para isso é necesssário esta com uma conta criada no Google Cloud e com uma instância linux.

Criando Storage Bucket

  1. Na console do Google cloud vá em Storage e clique em Storage, e será redirecionado para a tela de criação de bucket, basta você clicar em Create Bucket:

2. Nos criamos um bucket chamado 01test-project-bucket¹( é necessário respeitar a nomeclatura pois o Google Cloud Plataform exige um padrão ):

Criando conta de serviço( Service Account) IAM

3. Na console do IAM, clique em Create service Account 

 

4. Nos criamos um usuário test-storage-project  e aplicamos permissão Full para o Storage Console e selecione Furnish a new private key com o tipo JSON, (guarde o arquivo JSON).

 

Habilitando o API Storage Cloud JSON e adicionando o usuário para acessar o bucket:

5. Na barra de pesquisa, faça uma busca “API Storage JSON” e selecione primeira opção quer surgir:

6. Habilite Google Storage JSON API:

 

7. Note que o usuário que cadastramos test-storage-project  já esta foi inserido em Credentials, mas você pode adicionar outros usuários de serviços e baixar o arquivo JSON para cadastrar gcloud o servidor.

Montando o bucket criado na instânca do Google Computer

8. Execute o comando gcloud computer scp para enviar o arquivo  JSON ao servidor:

$gcloud compute scp test-project-.json instance-1: --zone us-east1-b --project "ProjectID"

9. Acesse a instância via ssh e com o arquivo  JSON execute gcloud auth activate-service-account para ativar o usuário de serviço:

$gcloud auth activate-service-account --key-file=test-project-.json
$gcloud auth list
Credentialed Accounts
ACTIVE  ACCOUNT
        87787224155-compute@developer.gserviceaccount.com
*       teste-storage-project@asdfasdfsad--1234.iam.gserviceaccount.com
To set the active account, run:
    $ gcloud config set account `ACCOUNT

10.Instale o pacote gcsfuse  e execute os comando abaixo para montar o disco, lembrando que o usuário precisa ter as devidas permissões para montar.

$ gcsfuse --key-file=/dir/to_file_json/teste-project-.json 01test-project-bucket /mnt/gcscloud/ 
Using mount point: /mnt/gcscloud
Opening GCS connection...
Opening bucket...
Mounting file system...
File system has been successfully mounted

$ ls /mnt/gcscloud/
test teste 

Esse foi um post elaborado pela equipe Onx Solutions, qualquer dúvida entre contato  com a nossa equipe.

Fonte:

Understanding Roles: https://cloud.google.com/iam/docs/understanding-roles
Bucket naming: https://cloud.google.com/storage/docs/naming#requirements
Fuse Install: https://github.com/GoogleCloudPlatform/gcsfuse/
API Reference: https://cloud.google.com/storage/docs/json_api/v1/?hl=en_US

Obrigado

Etiquetas: ,

About: Bezaleel Ramos

Fundador da empresa Onx Solutions em Goiânia. Formado em Tecnologia em Redes de Computadores pela Universidade Nove de Julho em São Paulo. Possui certificações LPIC-1,LPIC-2, ZABBIX Certified Specialist,Novell Certified Linux Administrator (CLA) e Linux Administrator for SUSE Linux Enterprise.