Ir ao conteúdo

Instalação e Configuração do MinIO

Salve Salve Pessoal!

Hoje vamos ver como podemos instalar e configurar o MinIO.

O MinIO é um sistema de armazenamento do tipo object storage, compatível com as features de API do S3 da AWS.

É um sistema  de alto desempenho, muito simples de instalar e usar, também é Kubernetes Native, ou seja, compatível com todas as soluções que usam kubernetes, seja em nuvens públicas ou ambientes on-primise.

O MinIO é um sistema definido por software, 100% de código aberto sob a licença GNU AGPL v3.

Para maiores informações sobre o MinIO acessem o link abaixo:

https://min.io/

Agora vamos ao que interessa. 😀

A instalação do MinIO pode ser feita de diversas formas, através de um Kubernetes Operator para ambientes Kubernetes, usando containers como Docker ou Podman, em sistemas operacionais Linux, Windows e macOS.

Para esse laboratório nós vamos fazer a instalação e configuração direto em um servidor Linux e vamos configurar ele como um serviço do systemd, nós podemos fazer a instalação usando o sistema de pacotes apt e rpm, porém vamos usar o binário.

1 – Faça o download do binário do MinIO.

# wget https://dl.min.io/server/minio/release/linux-amd64/minio

2 – Mova o binário para o /usr/local/bin.

# mv minio /usr/local/bin/

3 – Crie um usuário chamado minio-user.

# useradd -M -s /bin/false minio-user

4 – Configure a permissão para o usuário minio-user e de execução.

# chmod +x /usr/local/bin/minio
# chown minio-user: /usr/local/bin/minio

5 – Crie um diretório que será usado para o armazenamentos dos dados, pode ser um nome qualquer de sua escolha.

# mkdir /minio

6 –  Configure a permissão do diretório para o usuário minio-user.

# chown minio-user: /minio

7 – Crie o arquivo /etc/default/minio com os seguinte conteúdo.

MINIO_VOLUMES="/minio" (Diretório que será usado pelo MinIO para armazenar os dados)
MINIO_OPTS="--address :9199 --console-address :9001" (Portas web e console de acesso ao MinIO)
MINIO_ROOT_USER=administrador (Usuário com permissões de root/administrador do MinIO)
MINIO_ROOT_PASSWORD=Mudar@123 (Senha do usuário root/administrador)
MINIO_CONFIG_ENV_FILE=/etc/default/minio (configura o MinIO reler as configurações através do minio cliente 'mc admin service restart') 

8 – Baixe o arquivo de configuração do systemd.

# wget https://raw.githubusercontent.com/minio/minio-service/master/linux-systemd/minio.service

9 – Mova o arquivo minio.service para o diretório /etc/systemd/system.

# mv minio.service /etc/systemd/system

10 – Execute os seguintes comandos para o systemd reconhecer, habilitar e iniciar o serviço do MinIO.

# systemctl daemon-reload
# systemctl enable minio.service
# systemctl start minio.service

11 – Agora só abrir seu navegador e acessar o IP ou FQDN do servidor na porta 9001 e logar com o usuário e senha configurados no arquivos /etc/default/minio.

Pronto, MinIO instalado e configurado, no próximo post irei mostrar como podemos criar e configurar um certificado auto assinado no MinIO, e depois como podemos criar buckets, usuários e permissões.

Até o próximo post!

😀

Publicado emCLOUDDEVOPSLINUX

14 Comentários

  1. Lucas Montarroios Lucas Montarroios

    Show de bola! Excelente escrita e conteúdo, meu amigo. Uma coisa legal é que o MinIO utiliza do JBOD e faz um excelente trabalho na distribuição dos dados e replicação, garantindo a recuperação em caso de falha de um dos discos. Um erro comum nas operações é configurar o MinIO em cima de um ambiente com RAID, tornando a performance precária.

    Um abraço.

  2. Cleyton Silva Cleyton Silva

    Grande Rodrigo, quando chego na parte de rodar os comandos:
    # systemctl enable minio.service
    # systemctl start minio.service

    aparece essa mensagem:
    [root@ipanema systemd]# systemctl enable minio.service
    Failed to enable unit: Unit file minio.service does not exist.

  3. Levi França Levi França

    Mestre Rodrigo, erro quando executo o comando:
    # systemctl start minio.service

    aparece essa mensagem:
    Assertion failed oon job for minio.service

    • Rodrigo Lira Rodrigo Lira

      Olá Levi, aparentemente isso é erro na unidade do systemd, você verificou se as configuções e caminhos estão corretos?

  4. Fabio Daniel Fabio Daniel

    mestre.. consegui instalar tudo certinho.. so que me deparei com o seguinte problema.. quando crio 2 buckets

    filial 1
    filial 2

    ai qd copio alguma coisa no filial 2 .. ele nao aparece nada nesse bucket.. ele ta indo para o bucket filial 1.. estranho .. pq to jogando no filial 2 mas ele ta indo para o filial 1

    • Rodrigo Lira Rodrigo Lira

      Olá Fabio, estranho, você criou as permissões na bucket correta, pode ser que você tenha trocado sem querer não?

      Boa sorte!

  5. Bruno Holanda Bruno Holanda

    Grande Rodrigo, fizemos a instalação seguindo seu passo a passo e me deparei com um erro ao enviar muitos arquivos para o bucket, a aplicação qndo esta fazendo o envio me retorna um erro :

    12/06/2024 02:19:01 :: Error: REST API error: ‘S3 error: You did not provide the number of bytes specified by the Content-Length HTTP header.
    Code: IncompleteBody’, error code: 400
    Other: Key: ‘Veeam/Backup/teste/Clients/{7ae9e9d8-e0b7-42ce-9cae-03f1e7ce61a4}/54264b43-2a83-41a1-9934-d9888f259de5/CloudStg/Data/{0d9d676e-9f80-4968-b59d-1c01ccc227c4}/{6084f01f-700a-461d-937e-dcff865de2e7}/40522_51d03eb0b07c2540a09ce01501c9e33f_00000000000000000000000000000000’, BucketName: ‘repositorio-teste’, Resource: ‘/repositorio-teste/Veeam/Backup/teste/Clients/{7ae9e9d8-e0b7-42ce-9cae-03f1e7ce61a4}/54264b43-2a83-41a1-9934-d9888f259de5/CloudStg/Data/{0d9d676e-9f80-4968-b59d-1c01ccc227c4}/{6084f01f-700a-461d-937e-dcff865de2e7}/40522_51d03eb0b07c2540a09ce01501c9e33f_00000000000000000000000000000000’, Region: ‘us-east-1’, HostId: ‘fad4b3083214c3b0ad28cc0f83fd770a8fd5fb5e47b065bc7cae01b61e817e1a’
    Failed to download disk ‘VDI – 01-flat.vmdk’.
    Shared memory connection was closed.
    Failed to upload disk ‘>’
    Agent failed to process method {DataTransfer.SyncDisk}.

    Você ja viu esse erro?

    • Rodrigo Lira Rodrigo Lira

      Olá Bruno, para falar a verdade nunca peguei esse erro não, você está tentando fazer um backup de VM usando veeam pelo que eu entendi, poderia verificar se não é alguma compatibilidade ou algo do tipo.

      Boa sorte!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Descubra mais sobre Rodrigo Lira

Assine agora mesmo para continuar lendo e ter acesso ao arquivo completo.

Continue reading