Montando um Oracle Cloud Object Storage Bucket em um File System em Linux

Hoje trago um artigo muito legal de uma necessidade que surgiu para apresentar um Object Storage no Linux para realizar um backup.

Você pode usá-lo para fazer backup do seu banco de dados, carregararquivos  e muito mais.

Pré-requisitos:

Certifique-se de que o bucket que você está tentando montar está no compartimento listado para compatibilidade S3; por padrão,  é o root compartment do seu tenancy.

Se você precisar alterar isso, as configurações estão localizadas em  Administration->Tenancy Details->Edit Object Storage Setting

Criando um Object Storage Bucket na OCI Console.

Clique em Object Storage

Informe o nome do seu bucket and clique em Create.

Instalando s3fs-fuse

Você pode instalar o s3fs-fuse usando um pacote prebuilt do repositório Oracle Linux EPEL. Neste post, estou usando o RPM binário.

Configurando Credentials

Na Oracle Cloud Infrastructure Console, click em Profile ícone no canto superior direito, e selecione User Settings.

Clique em Customer Secret Keys, e em seguida clique Generate Secret Key.

Dê à chave um nome significativo (no meu caso, bk_orap2g), em seguida, clique Generate Secret Key. 

Copie e salve a chave secreta porque ela não será mostrada novamente.

As credenciais S3 são criadas usando uma chave de acesso e a chave secreta. A chave de acesso é exibida na área Customer Secret Keys da Console.

Generate Secret Key: bk_orap2g
Generated Key: xxxxxxxxxxxxN5ujFRYICdG5RQbiuyxi07+PWrLdE=
Access key: cc3e970b898676154xxxxxxxxxxxxxxxxxxxxxxxx

Crie o diretório e atribua as permissões

# mkdir /home/oracle/bkp_db
# chown oracle:oinstall /home/oracle/bkp_db

Monte o sistema de arquivos


$ s3fs bucket2fs /home/oracle/bkp_db -o passwd_file==${HOME}/.password-bk -o url=https://mynamespace.compat.objectstorage..oraclecloud.com/ -o nomultipart -o use_path_request_style

 
Adicione uma entrada no arquivo /etc/fstab.


#s3fs
bk_orap2g /home/oracle/bkp_db fuse.s3fs _netdev,allow_other,nomultipart,use_path_request_style,passwd_file=/home/oracle/.passwd-bk,url=https://mynamespace.bej2.objectstorage.eu-frankfurt-1.oraclecloud.com/ 0 0


 
Se você tiver o seguinte erro, altere a permissão de /usr/bin/fusermount:
fuse: failed to exec fusermount: Permission denied


[oracle@ora2pg ~]$ ls -l /usr/bin/fusermount
-rwsr-x---. 1 root fuse 32584 Fev 25 2021 /usr/bin/fusermount

 
Execute o seguinte comando e tente novamente:

[oracle@ora2pg ~]# sudo chmod +x /usr/bin/fusermount


[oracle@ora2pg ~]$ ls -l /usr/bin/fusermount
-rwsr-x--x. 1 root fuse 32584 Fev 25 2021 /usr/bin/fusermount

 

Se houver um problema, adicione o parâmetro Debug para ajudar a solucionar problemas:

[oracle@ora2pg ~]$ s3fs bucket-1 /test_bucket -o passwd_file=${HOME}/.passwd-s3fs -o dbglevel=info -f -o curldbg=

Espero que isso te ajude!!!

Fique ligado, seguindo no twitter @aontalba e no Linkedin

André Luiz Dutra Ontalba

DBA ATG Oracle há 27 anos, especialista em Banco de Dados Oracle e SQL SERVER, MySQL, Azure, AWS, Oracle Cloud. Bacharel em Ciências da Computação Pós Graduado pela FIAP em Administração de Banco de dados, MBA em Administração de TI pela FGV a MBA em Master Information Technology pela FIAP e BABSON e Mestrado em Gestão Estratégica em Tecnologias de Informação pela UNIATLANTICO e UNIB . Com sólidos conhecimentos em Banco de Dados e Sistemas operacionais, possui certificações Oracle OCP 10g/11/12g/2019 Oracle Cloud Professional, AWS Professional, Azure Expert e mais 85 outra certificações. Strategic Customer Service Manager at Oracle / Oracle ACE Alumni Member

1 comentário

  1. Não ficou claro a parte de montar o arquivo de senhas.
    vc gravou dentro do arquivo de senha o acces_key:pass_key? ou pass_key:access_key?

    Além disso o mododebug tb não ficou claro.

    De resto ta show. Grato

Deixe um comentário

Your email address will not be published. Required fields are marked *