GlusterFS - Um Sistema de Arquivos Distribuídos

O GlusterFS é um sistema de arquivos de rede escalável adequado para tarefas intensivas em dados, como armazenamento em nuvem e streaming de mídia. O GlusterFS é um software gratuito e de código aberto.

[ Hits: 15.624 ]

Por: Daniel Lara Souza em 21/10/2020 | Blog: http://danniel-lara.blogspot.com/


Volume de Glusterfs Replicados



Neste volume, superamos o risco de perda de dados que está presente no volume distribuído. Aqui, cópias exatas dos dados são mantidas em todos os bricks. O número de réplicas no volume pode ser decidido pelo cliente ao criar o volume.

Então, precisamos ter pelo menos dois bricks para criar um volume com 2 réplicas, ou um mínimo de 3 bricks para criar um volume de 3 réplicas. Uma grande vantagem de tal volume, é que mesmo que um brick falhe, os dados ainda podem ser acessados a partir de seus bricks replicados. Esse volume é usado para uma melhor confiabilidade e redundância de dados.
Linux: GlusterFS um sistema de arquivos distribuídos
Vamos configurar agora um Storage Replicado, com 2 servidores (server1 e server2) como mostra a imagem acima.

O ideal seria com 3 server, mas com 2 só para demonstração. Uso para essa configuração:
  • S.O. CentOS 8.2
  • 01 Disco de 100GB (Storage)

Antes, é importante adicionar nos hosts de cada server, os nomes e IP de cada um. Exemplo, em cada /etc/hosts tem que ter exatamente essas configurações:

cat /etc/hosts
192.168.0.199 server1
192.168.0.198 server2


Instale o Gluster nos 2 servidores. Instale o repo do CentOS gluster8:

# dnf -y install centos-release-gluster8

Ajuste o repo:

# sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/CentOS-Gluster-8.repo

Instale:

# dnf --enablerepo=centos-gluster8,PowerTools -y install glusterfs-server

Inicie o serviço:

# systemctl enable --now glusterd

Ajuste as regras de firewall:

# firewall-cmd --add-service=glusterfs --permanent

Reload no firewalld:

# firewall-cmd --reload

Em cada servidor, já tenho formatado e montado o /dev/sdb de 100GB, ponto de montagem /glusterfs.

Agora, em todos os 2 servidores vamos criar um diretório comum entre eles

# mkdir /glusterfs/replicado

Vamos configurar o nosso gluster. O server1:

# gluster peer probe server2
# gluster volume create vol_replica replica 2 transport tcp \
server1:/glusterfs/replicado \ server2:/glusterfs/replicado


Bom, como falei, é recomentado e ideal em replicação usar 3 servers, mas 2 servers funciona, pois ele informa que o ideal é usar 3 servers.
Linux: GlusterFS um sistema de arquivos distribuídos
Agora vamos montar:

# mount.glusterfs server1,server2:/vol_replica /mnt/gluster
Linux: GlusterFS um sistema de arquivos distribuídos

Vamos criar 2 arquivos:

# touch /mnt/gluster/teste1
# touch /mnt/gluster/teste2
Linux: GlusterFS um sistema de arquivos distribuídos

Vamos ver os arquivos no server1:
Linux: GlusterFS um sistema de arquivos distribuídos

No server2:
Linux: GlusterFS - Um Sistema de Arquivos Distribuídos

Bom, tem a maneira mais elegante de se montar , usando um arquivo de configuração. Crie o diretório "glusterfs" no seu /etc/. Isso se não existir, é claro, geralmente em máquinas client não tem:

# mkdir /etc/glusterfs

E crie um arquivo e edita o mesmo "vol_replica.vol":

# cat /etc/glusterfs/vol_replica.vol
volume remote1
  type protocol/client
  option transport-type tcp
  option remote-host server1
  option remote-subvolume /glusterfs/replicado
end-volume

volume remote2
  type protocol/client
  option transport-type tcp
  option remote-host server2
  option remote-subvolume /glusterfs/replicado
end-volume

volume replicate
  type cluster/replicate
  subvolumes remote1 remote2
end-volume

volume writebehind
  type performance/write-behind
  option window-size 1MB
  subvolumes replicate
end-volume

volume cache
  type performance/io-cache
  option cache-size 512MB
  subvolumes writebehind
end-volume


E para montar:

# mount.glusterfs /etc/glusterfs/vol_replica.vol /mnt/gluster
Linux: GlusterFS um sistema de arquivos distribuídos


Página anterior     Próxima página

Páginas do artigo
   1. Introdução e Volume de Glusterfs Distribuídos
   2. Volume de Glusterfs Replicados
   3. Volume Glusterfs Replicado e Distribuído
Outros artigos deste autor

FreeIPA - uma solução integrada de identidade e autenticação para ambientes de rede Linux/UNIX

AlmaLinux - Sua Alternativa ao CentOS

Podman - um mecanismo de contêiner sem daemon

MariaDB + phpMyAdmin no Ubuntu 12.04 LTS

Configurando Docker Swarm no Rocky Linux

Leitura recomendada

Instalando o KUbuntu / Ubuntu no notebook eeepc da Asus

Armazenamento de arquivos em Linux: um estudo de caso

Criando um pacote TXZ no Slackware

Montando partições NTFS no Fedora 3 através do Captive

RAID, tudo que você precisa saber

  
Comentários
[1] Comentário enviado por removido em 22/10/2020 - 11:12h

Parabéns Daniel.

[2] Comentário enviado por maurixnovatrento em 24/10/2020 - 22:47h


Muito bom artigo.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[3] Comentário enviado por danniel-lara em 26/10/2020 - 08:42h


[1] Comentário enviado por michelreis em 22/10/2020 - 11:12h

Parabéns Daniel.


Obrigado

[4] Comentário enviado por danniel-lara em 26/10/2020 - 08:43h


[2] Comentário enviado por mauricio123 em 24/10/2020 - 22:47h


Muito bom artigo.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

Obrigado

[5] Comentário enviado por Carlos_Cunha em 19/02/2021 - 14:13h

Parabéns pelo Artigo!
Uma duvida que sempre tive(e tenho) é por exemplo, tenho um servidor que ja possui 100G de dados, e resolvi implementar o GlusterFS em modo replicação, como fazer ele replicar essa dados já existentes ?
Procurei e nunca achei, dados novos ele replica, mas o dados existente antes do Glusterfs é meu problema.



#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts