GlusterFS Installazione · 7 min read · Nov 30, 2025

Come installare e configurare GlusterFS su Ubuntu 22.04

GlusterFS è uno storage distribuito software-defined, gratuito e open-source sviluppato da Gluster Inc, e poi da Redhat. Fornisce interfacce per lo storage di oggetti, blocchi e file ed è utilizzato per carichi di lavoro ad alta intensità di dati come storage cloud, CDN e streaming multimediale. Può scalare in modo modulare per memorizzare più petabyte di dati. Supporta più protocolli come NFS, SMB, CIFS, HTTP e FTP. È perfettamente adatto per vari casi d’uso che richiedono la gestione di grandi quantità di dati.

In questo tutorial, impareremo come impostare un volume GlusterFS replicato su Ubuntu 22.04.

Requisiti

  • Due server che eseguono Ubuntu 22.04 con 2 GB di Hardisk esterno su ciascuno.
  • Un indirizzo IP statico 192.168.10.10 è configurato su node1 e 192.168.10.11 è configurato su node2.
  • Una password di root è configurata su entrambi i server.

Iniziare

Prima di iniziare, è consigliato aggiornare tutti i pacchetti di sistema su entrambi i server. Puoi aggiornarli eseguendo il seguente comando su entrambi i server.

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

Una volta aggiornati tutti i pacchetti di sistema, riavviali per applicare le modifiche.

Successivamente, dovrai anche modificare il file /etc/hosts su entrambi i server e impostare la risoluzione dei nomi in modo che ciascun server possa comunicare con l’altro per nome host. Puoi farlo con il seguente comando:

nano /etc/hosts

Aggiungi le seguenti righe:

192.168.10.10 node1
192.168.10.11 node2

Salva e chiudi il file quando hai finito.

Installa il server GlusterFS

Per impostazione predefinita, GlusterFS è disponibile nel repository predefinito di Ubuntu 22.04. Puoi installarlo su entrambi i server utilizzando il seguente comando.

apt-get install glusterfs-server -y

Una volta installato il pacchetto GlusterFS, avvia il servizio GlusterFS e abilitalo per avviarsi all’avvio con il seguente comando:

systemctl start glusterd  
systemctl enable glusterd

Puoi anche controllare lo stato del servizio GlusterFS con il seguente comando:

systemctl status glusterd

Dovresti vedere il seguente output:

? glusterd.service - GlusterFS, un server di file system clusterizzato
     Loaded: loaded (/lib/systemd/system/glusterd.service; disabled; vendor preset: enabled)
     Active: active (running) since Sat 2022-11-05 04:10:13 UTC; 7s ago
       Docs: man:glusterd(8)
    Process: 92014 ExecStart=/usr/sbin/glusterd -p /var/run/glusterd.pid --log-level $LOG_LEVEL $GLUSTERD_OPTIONS (code=exited, status=0/SUCC>
   Main PID: 92015 (glusterd)
      Tasks: 9 (limit: 4579)
     Memory: 7.1M
        CPU: 2.260s
     CGroup: /system.slice/glusterd.service
             ??92015 /usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO

Nov 05 04:10:11 ubuntu2204 systemd[1]: Starting GlusterFS, un server di file system clusterizzato...
Nov 05 04:10:13 ubuntu2204 systemd[1]: Avviato GlusterFS, un server di file system clusterizzato.

Una volta terminato, puoi procedere al passaggio successivo.

Crea storage GlusterFS

Per creare uno storage GlusterFS, avrai bisogno di un hard disk esterno su entrambi i server. Dovrai anche creare una partizione su un hard disk esterno (/dev/sdb) su entrambi i server.

Per creare una nuova partizione su /dev/sdb, esegui il seguente comando:

fdisk /dev/sdb

Dovresti vedere il seguente output:

Benvenuto in fdisk (util-linux 2.31.1).
Le modifiche rimarranno in memoria solo fino a quando non decidi di scriverle.
Fai attenzione prima di usare il comando di scrittura.

Il dispositivo non contiene una tabella delle partizioni riconosciuta.
Creata una nuova etichetta disco DOS con identificatore disco 0x06091fe8.

Comando (m per aiuto): n
Tipo di partizione
   p   primaria (0 primaria, 0 estesa, 4 libera)
   e   estesa (contenitore per partizioni logiche)
Seleziona (predefinito p): p
Numero di partizione (1-4, predefinito 1): 
Primo settore (2048-4194303, predefinito 2048): 
Ultimo settore, +settori o +dimensione{K,M,G,T,P} (2048-4194303, predefinito 4194303): 

Creata una nuova partizione 1 di tipo 'Linux' e di dimensione 2 GiB.

Comando (m per aiuto): w
La tabella delle partizioni è stata modificata.
Chiamando ioctl() per rileggere la tabella delle partizioni.
Sincronizzazione dischi.

Successivamente, formatta la partizione con il seguente comando:

mkfs.xfs /dev/sdb1

Dovresti vedere il seguente output:

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

Successivamente, crea una directory per lo storage GlusterFS su entrambi i server con il seguente comando:

mkdir /glustervolume

Successivamente, monta il disco /dev/sdb1 su una directory /glustervolume.

mount.xfs /dev/sdb1 /glustervolume

Successivamente, modifica il file /etc/fstab e rendi il montaggio persistente attraverso il riavvio:

nano /etc/fstab

Aggiungi la seguente riga:

/dev/sdb1 /glustervolume xfs defaults 0 0

Salva e chiudi il file, quindi esegui il seguente comando per applicare le modifiche:

mount -a

Ora puoi controllare la directory montata con il seguente comando:

df -h

Dovresti vedere il seguente output:

Filesystem      Size  Used Avail Use% Mounted on
tmpfs           393M  1.1M  392M   1% /run
/dev/sda2        79G  8.6G   67G  12% /
tmpfs           2.0G     0  2.0G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           393M  4.0K  393M   1% /run/user/0
/dev/sdb1       2.0G   35M  2.0G   2% /glustervolume

Configura il volume GlusterFS

Per prima cosa, dovrai creare un pool di storage fidato aggiungendo node2 a node1. Per farlo, esegui il seguente comando su node1:

gluster peer probe node2

Puoi verificare il pool di storage aggiunto con il seguente comando:

gluster pool list

Dovresti ottenere il seguente output:

UUID                    Hostname    State
52245177-ce2e-4217-8da5-2ee7a33dcf46    node2       Connected 
b6da6e83-b1ea-46de-8904-1c5345b1c229    localhost   Connected 

Successivamente, crea una directory brick su entrambi i nodi con il seguente comando:

mkdir /glustervolume/vol1

Successivamente, crea un volume chiamato vol1 con due repliche:

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

Successivamente, avvia il volume utilizzando il seguente comando:

gluster volume start vol1

Puoi controllare lo stato del volume creato con il seguente comando:

gluster volume status

Dovresti ottenere il seguente output:

Status of volume: vol1
Gluster process                             TCP Port  RDMA Port  Online  Pid
------------------------------------------------------------------------------
Brick node1:/glustervolume/vol1               49152     0          Y       7198 
Brick node2:/glustervolume/vol1               49152     0          Y       13214
Self-heal Daemon on localhost               N/A       N/A        Y       6121 
Self-heal Daemon on node2                   N/A       N/A        Y       12768
 
Task Status of Volume vol1
------------------------------------------------------------------------------
There are no active volume tasks

Ora puoi controllare le informazioni sul volume creato utilizzando il seguente comando:

gluster volume info vol1

Dovresti ottenere il seguente output:

Volume Name: vol1
Type: Replicate
Volume ID: a1023sd6d-81rt-12a2-bc4e-a4gd156c5331
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: node1:/glustervolume/vol1
Brick2: node2:/glustervolume/vol1
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off

Successivamente, monta il volume creato sulla directory /opt su entrambi i nodi modificando il file /etc/fstab in modo che il tuo volume sia disponibile dopo l’avvio del server.

nano /etc/fstab

Aggiungi la seguente riga:

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

Salva e chiudi il file quando hai finito. Quindi, esegui il seguente comando per applicare le modifiche:

mount -a

Test di replicazione

Il tuo server GlusterFS è ora installato e configurato. Ora è il momento di testare la replicazione tra entrambi i nodi.

Per prima cosa, crea due file su node1:

touch /opt/test1 /opt/test2

Ora, vai su node2 e esegui il seguente comando:

ls -l /opt/

Dovresti vedere gli stessi file che hai creato su 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

Ora, ferma il servizio GlusterFS su node2 con il seguente comando:

service glusterd stop

Successivamente, vai su node1 e controlla lo stato del peer:

gluster peer status

Dovresti vedere che node2 è stato disconnesso:

Number of Peers: 1

Hostname: node2
Uuid: a134f146-1220-3avd-d3f6-1c2554a87sa1
State: Peer in Cluster (Disconnected)

Puoi anche controllare lo stato del volume con il seguente comando:

gluster volume status

Dovresti vedere il seguente output:

Status of volume: vol1
Gluster process                             TCP Port  RDMA Port  Online  Pid
------------------------------------------------------------------------------
Brick node1:/glustervolume/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

Successivamente, crea altri due file su node1:

touch /opt/test3 /opt/test4

Ora, vai su node2 e avvia il servizio GlusterFS con il seguente comando:

service glusterd start

Ora, controlla la directory /opt su node2:

ls -l /opt/

Dovresti vedere che tutti i file da node1 sono stati replicati e sono ora disponibili.

total 0
-rw-r--r-- 1 root root 0 Nov  7 13:42 test1
-rw-r--r-- 1 root root 0 Nov  7 13:42 test2
-rw-r--r-- 1 root root 0 Nov  7 13:44 test3
-rw-r--r-- 1 root root 0 Nov  7 13:44 test4

Conclusione

Congratulazioni! hai installato e configurato con successo un server Glusterfs replicato a due nodi su Ubuntu 22.04. Per ulteriori informazioni, leggi la pagina della documentazione di GlusterFS. Sentiti libero di chiedermi se hai domande.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.