Minio — Tenha seu próprio S3 Storage

Minio — Tenha seu próprio S3 Storage

Minio é um storage de objetos, de alta performance e distribuído. A grande vantagem de usá-lo, reside em sua total compatibilidade com o Amazon S3. Neste artigo explico como subir um minio server em sua própria infraestrutura, criar um bucket para armazenar os dados e fazer a montagem no Ubuntu usando s3fs para armazenar os seus arquivos.

A instalação do Minio é relativamente simples, basta executar os passos abaixo:

wget https://dl.minio.io/server/minio/release/linux-amd64/minio -O /usr/local/bin/minio
chmod +x /usr/local/bin/minio

Inicie o servidor, digite o comando:

root@storage:~# minio server /mnt/data &

Iniciado o servidor, na tela aparecerão os dados de acesso:

Drive Capacity: 8.4 GiB Free, 9.6 GiB Total

Endpoint:  http://10.100.0.113:9000  http://10.0.2.15:9000  http://172.17.0.1:9000  http://127.0.0.1:9000
AccessKey: VL8XZ7C65RYY20SUO5VM 
SecretKey: ih4K7jv+E+SaUqtuE8kH1KSa8sPzYmmHrH/4HiYy 

Browser Access:
   http://10.100.0.113:9000  http://10.0.2.15:9000  http://172.17.0.1:9000  http://127.0.0.1:9000

Command-line Access: https://docs.minio.io/docs/minio-client-quickstart-guide
   $ mc config host add myminio http://10.100.0.113:9000 VL8XZ7C65RYY20SUO5VM ih4K7jv+E+SaUqtuE8kH1KSa8sPzYmmHrH/4HiYy

Veja que o servidor está ouvindo em vários endereços, como a máquina do Vagrant estava em modo bridge, para acessar no navegador, usei o seguinte endereço:

http://10.100.0.113:9000

Ao acessar, aparecerá a seguinte tela:

O login é feito usando o AccessKey e o SecretKey, exibidos ao iniciar o servidor do Minio.

AccessKey: VL8XZ7C65RYY20SUO5VM
SecretKey: ih4K7jv+E+SaUqtuE8kH1KSa8sPzYmmHrH/4HiYy

Realizado o login, será mostrada a seguinte tela:

No canto inferior direito podemos criar um Bucket. No caso, eu criei um Bucket chamado dados.

Em seguida, a instalação do s3fs, em uma máquina Ubuntu, para fazer a montagem no filesystem e subir os arquivos.

root@storage:~# apt-get -f install s3fs -y 

Com o s3fs instalado, será criado um arquivo chamado passwd-s3fs. Este, armazenará as credentials de acesso que serão usadas para fazer a autenticação e a montagem no meu servidor.

root@storage:~# echo "VL8XZ7C65RYY20SUO5VM:ih4K7jv+E+SaUqtuE8kH1KSa8sPzYmmHrH/4HiYy" > /etc/passwd-s3fs
root@storage:~# chmod 640 /etc/passwd-s3fs 

Agora, a montagem do diretório:

root@storage:~# s3fs  dados /root/teste_minio -o allow_other,use_path_request_style,nonempty,url=http://10.100.0.113:9000,passwd_file=/etc/passwd-s3fs
root@storage:~# 

Para verificar se o diretório foi montado, basta digitar o comando df -h:

root@storage:~# df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            490M     0  490M   0% /dev
tmpfs           100M  3.2M   97M   4% /run
/dev/sda1       9.7G  1.3G  8.4G  13% /
tmpfs           497M     0  497M   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           497M     0  497M   0% /sys/fs/cgroup
tmpfs           100M     0  100M   0% /run/user/1000
vagrant         106G   60G   47G  56% /vagrant
s3fs            256T     0  256T   0% /root/teste_minio

Por fim,  o s3fs foi montado em /root/teste_minio

Para testar o funcionando, podemos simplesmente criar um arquivo dentro desse diretório, averiguando se irá para o servidor do Minio:

root@storage:~# touch /root/teste_minio/post_blog.txt

Na interface gráfica, comprovamos que o arquivo está no servidor.

Valeu! é Nóis!

alissonmachado.com.br

Anterior 4linux participa do meetup

About author

Alisson Machado
Alisson Machado 13 posts

Desenvolvedor Python e Arquiteto DevOps 8 anos de experiência em projetos FOSS (Free and Open Source Software) e Python; Certificações LPI1, LPI2 e SUSE CLA

View all posts by this author →

Você pode gostar também

Kong API – Instalando o API Gateway e seu Dashboard

Estive envolvido num projeto de migração, algumas aplicações internas para o modelo de micro serviço. No caso, cada parte do código se tornaria um projeto independente, dessa forma, agilizando os

DevOps 1Comments

Infraestrutura Ágil: TI versionada como um software!

Os métodos ágeis fizeram a área de desenvolvimento de software evoluir muito, através do desenvolvimento de softwares baseados em testes e garantindo entregas contínuas. Da mesma forma que este processo

Destaques 0 Comentários

Ferramentas do mundo DevOps

Gitlab: um dos sistemas de controle de versão mais usados e baseado no GIT. Permite criar e gerenciar múltiplas versões de código, fazer comparações e aditar alterações. Puppet: normalmente usado

0 Comentários

Ainda não há comentários!

Você pode ser o primeiro a comentar este post!

Deixe uma resposta