GlusterFS · 7 min read · Nov 26, 2025

Como Instalar e Configurar GlusterFS no Ubuntu

GlusterFS é um sistema de arquivos de rede gratuito, de código aberto e escalável, desenvolvido primeiro pela Gluster Inc. e depois pela Redhat. É especificamente projetado para cargas de trabalho intensivas em dados, como armazenamento em nuvem, CDN e streaming de mídia. Ele é capaz de lidar com petabytes de dados e, portanto, pode atender a milhares de clientes. Suporta vários protocolos, como NFS, SMB, CIFS, HTTP e FTP. Com o GlusterFS, você pode combinar diferentes recursos de armazenamento em disco em um único namespace global.

Neste tutorial, aprenderemos como configurar um volume GlusterFS replicado no Ubuntu 18.04.

Requisitos

  • Dois servidores rodando Ubuntu 18.04 com 2 GB de HDD externo em cada um.
  • Um endereço IP estático 172.20.10.5 está configurado no node1 e 172.20.10.6 está configurado no node2.
  • Uma senha de root está configurada em ambos os servidores.

Começando

Antes de começar, você precisará atualizar ambos os servidores com a versão mais recente. Você pode atualizá-los executando o seguinte comando em ambos os servidores.

apt-get update -y  
apt-get upgrade -y

Uma vez que ambos os servidores estejam atualizados, reinicie-os para aplicar as mudanças.

Em seguida, você precisará configurar a resolução de hostname em ambos os servidores para que cada servidor possa se comunicar entre si pelo hostname. Você pode fazer isso editando o arquivo /etc/hosts em ambos os servidores:

nano /etc/hosts

Adicione as seguintes linhas:

172.20.10.5 node1
172.20.10.6 node2

Salve e feche o arquivo quando terminar.

Instalar GlusterFS

Primeiro, você precisará instalar o pacote GlusterFS em ambos os servidores. Por padrão, o GlusterFS não está disponível no repositório padrão do Ubuntu 18.04. Portanto, você precisará adicionar o repositório GlusterFS em ambos os servidores.

Primeiro, instale o pacote necessário com o seguinte comando:

apt-get install software-properties-common -y

Em seguida, adicione o repositório com o seguinte comando:

add-apt-repository ppa:gluster/glusterfs-5

Em seguida, instale o servidor GlusterFS com o seguinte comando:

apt-get install glusterfs-server -y

Uma vez que a instalação tenha sido concluída, inicie o serviço GlusterFS e habilite-o para iniciar na inicialização com o seguinte comando:

systemctl start glusterd  
systemctl enable glusterd

Você também pode verificar o status do serviço GlusterFS com o seguinte comando:

systemctl status glusterd

Você deve ver a seguinte saída:

? glusterd.service - GlusterFS, a clustered file-system server
   Loaded: loaded (/lib/systemd/system/glusterd.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-11-07 12:51:15 UTC; 48s ago
 Main PID: 7199 (glusterd)
    Tasks: 8 (limit: 505)
   CGroup: /system.slice/glusterd.service
           ??7199 /usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO

Nov 07 12:51:06 ubuntu systemd[1]: Starting GlusterFS, a clustered file-system server...
Nov 07 12:51:15 ubuntu systemd[1]: Started GlusterFS, a clustered file-system server.

Criar Armazenamento GlusterFS

Em seguida, você precisará criar uma partição no disco rígido externo (/dev/sdb) em ambos os servidores.

Para criar uma nova partição em /dev/sdb, execute o seguinte comando:

fdisk /dev/sdb

Você deve ver a seguinte saída:

Welcome to fdisk (util-linux 2.31.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x06091fe8.

Command (m for help): n
Partition type
   p   primary (0 primary, 0 extended, 4 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-4194303, default 2048): 
Last sector, +sectors or +size{K,M,G,T,P} (2048-4194303, default 4194303): 

Created a new partition 1 of type 'Linux' and of size 2 GiB.

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Em seguida, formate a partição com o seguinte comando:

mkfs.xfs /dev/sdb1

Você deve ver a seguinte saída:

meta-data=/dev/sdb1              isize=512    agcount=4, agsize=131008 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=0, rmapbt=0, reflink=0
data     =                       bsize=4096   blocks=524032, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Em seguida, crie um diretório para o armazenamento GlusterFS em ambos os servidores com o seguinte comando:

mkdir /glusterdata

Em seguida, monte o disco /dev/sdb1 em um diretório /glusterdata.

mount.xfs /dev/sdb1 /glusterdata

Em seguida, torne a montagem persistente entre reinicializações editando o arquivo /etc/fstab:

nano /etc/fstab

Adicione a seguinte linha:

/dev/sdb1 /glusterdata xfs defaults 0 0

Salve e feche o arquivo e, em seguida, execute o seguinte comando para aplicar as mudanças:

mount -a

Agora você pode verificar o diretório montado com o seguinte comando:

df -h

Você deve ver a seguinte saída:

Filesystem      Size  Used Avail Use% Mounted on
udev            211M     0  211M   0% /dev
tmpfs            49M 1016K   48M   3% /run
/dev/sda2        30G  4.3G   25G  16% /
tmpfs           241M   12K  241M   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           241M     0  241M   0% /sys/fs/cgroup
/dev/loop0       87M   87M     0 100% /snap/core/4486
tmpfs            49M     0   49M   0% /run/user/0
/dev/loop1       90M   90M     0 100% /snap/core/7917
/dev/sdb1       2.0G   35M  2.0G   2% /glusterdata

Configurar Volume GlusterFS

Primeiro, você precisará criar um pool de armazenamento confiável adicionando o node2 no node1. Para fazer isso, execute o seguinte comando no node1:

gluster peer probe node2

Você pode listar o pool de armazenamento com o seguinte comando:

gluster pool list

Você deve obter a seguinte saída:

UUID                    Hostname    State
d049b519-9210-4bfa-a1c6-0d1454a88ea0    node2       Connected 
dbb9252e-6082-4d31-aaef-1b99e0e0c369    localhost   Connected 

Em seguida, crie um diretório de brick em ambos os nós com o seguinte comando:

mkdir /glusterdata/vol1

Em seguida, crie um volume chamado vol1 com duas réplicas:

gluster volume create vol1 replica 2 node1:/glusterdata/vol1 node2:/glusterdata/vol1

Em seguida, inicie o volume usando o seguinte comando:

gluster volume start vol1

Você pode verificar o status do volume criado com o seguinte comando:

gluster volume status

Você deve obter a seguinte saída:

Status of volume: vol1
Gluster process                             TCP Port  RDMA Port  Online  Pid
------------------------------------------------------------------------------
Brick node1:/glusterdata/vol1               49152     0          Y       7987 
Brick node2:/glusterdata/vol1               49152     0          Y       18565
Self-heal Daemon on localhost               N/A       N/A        Y       8010 
Self-heal Daemon on node2                   N/A       N/A        Y       18588
 
Task Status of Volume vol1
------------------------------------------------------------------------------
There are no active volume tasks

Você também pode ver as informações sobre o volume criado com o seguinte comando:

gluster volume info vol1

Você deve obter a seguinte saída:

Volume Name: vol1
Type: Replicate
Volume ID: e093ae7a-70ac-42b8-ab3f-a8bd186c5740
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: node1:/glusterdata/vol1
Brick2: node2:/glusterdata/vol1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off

Em seguida, monte o volume criado no diretório /mnt em ambos os nós editando o arquivo /etc/fstab para que seu volume esteja disponível após a inicialização do servidor.

nano /etc/fstab

Adicione a seguinte linha:

localhost:/vol1 /mnt glusterfs defaults,_netdev 0 0

Salve e feche o arquivo quando terminar. Em seguida, execute o seguinte comando para aplicar as mudanças:

mount -a

Testar Replicação

O servidor GlusterFS agora está instalado e configurado. É hora de testar a replicação entre os dois nós.

Primeiro, crie dois arquivos no node1:

touch /mnt/file1 /mnt/file2

Agora, vá para o node2 e execute o seguinte comando:

ls -l /mnt/

Você deve ver os mesmos arquivos que você criou no node1:

total 0
-rw-r--r-- 1 root root 0 Nov  7 13:42 file1
-rw-r--r-- 1 root root 0 Nov  7 13:42 file2

Agora, pare o serviço GlusterFS no node2 com o seguinte comando:

service glusterd stop

Em seguida, vá para o node1 e verifique o status do peer:

gluster peer status

Você deve ver que o node2 foi desconectado:

Number of Peers: 1

Hostname: node2
Uuid: d049b519-9210-4bfa-a1c6-0d1454a88ea0
State: Peer in Cluster (Disconnected)

Você também pode verificar o status do volume com o seguinte comando:

gluster volume status

Você deve ver a seguinte saída:

Status of volume: vol1
Gluster process                             TCP Port  RDMA Port  Online  Pid
------------------------------------------------------------------------------
Brick node1:/glusterdata/vol1               49152     0          Y       7987 
Self-heal Daemon on localhost               N/A       N/A        Y       8010 
 
Task Status of Volume vol1
------------------------------------------------------------------------------
There are no active volume tasks

Em seguida, crie dois outros arquivos no node1:

touch /mnt/file3 /mnt/file4

Agora, vá para o node2 e inicie o serviço GlusterFS com o seguinte comando:

service glusterd start

Agora, verifique o diretório /mnt no node2:

ls -l /mnt/

Você deve ver que todos os arquivos do node1 foram replicados e agora estão disponíveis.

total 0
-rw-r--r-- 1 root root 0 Nov  7 13:42 file1
-rw-r--r-- 1 root root 0 Nov  7 13:42 file2
-rw-r--r-- 1 root root 0 Nov  7 13:44 file3
-rw-r--r-- 1 root root 0 Nov  7 13:44 file4

Conclusão

Parabéns! você instalou e configurou com sucesso um Volume Glusterfs Replicado de dois nós no servidor Ubuntu 18.04. Você também pode configurar Volume Glusterfs Distribuído, Volume Glusterfs Replicado Distribuído, Volume Glusterfs Estriado e Volume Glusterfs Distribuído Estriado.

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.