Ricerca nel sito web

Come installare GlusterFS su Rocky Linux


Su questa pagina

  1. Prerequisito
  2. Impostazione FQDN e /etc/hosts
  3. Impostazione della partizione
  4. Aggiunta del repository GlusterFS per Rocky Linux
  5. Installazione del server GlusterFS
  6. Apertura della porta con Firewalld
  7. Inizializzazione cluster GlusterFS
  8. Creazione del volume GlusterFS
  9. Montaggio del volume GlusterFS sulla macchina client
  10. Testare l'accesso in scrittura e l'alta disponibilità
  11. Conclusione

GlusterFS o Gluster File System è un file system distribuito gratuito e open source sviluppato da RedHat. GlusterFS è un file system scalabile formato da diversi server in un unico file system di entità che consente agli utenti di connettersi e montare il volume GlusterFS.

GlusterFS è un file system moderno in grado di gestire petabyte di dati, è anche facile da installare e manutenzionare e anche facile da ridimensionare il file system.

In questo tutorial imparerai come installare GlusterFS su due sistemi Rocky Linux e configurare il clustering tra due server. Tratteremo anche come montare il volume GlusterFS sulla macchina client.

Prerequisito

  • Due server Rocky Linux con un disco aggiuntivo su ogni server.
  • Su entrambi i server è configurata una password di root

Configurazione FQDN e /etc/hosts

Prima di iniziare, dovrai impostare il nome di dominio completo e il file /etc/hosts su ciascun server.

Di seguito è riportato il server dettagliato che utilizzeremo per creare il cluster GlusterFS:

  • server1.localdomain.lan con indirizzo IP 192.168.10.15
  • server2.localdomain.lan con indirizzo IP 192.168.10.20

Per impostare l'FQDN su ciascun server, esegui il comando hostnamectl di seguito.

Sul server1, esegui il comando hostnamectl di seguito.

sudo hostnamectl set-hostname server1.localdomain.lan

E su server2, esegui il seguente comando.

sudo hostnamectl set-hostname server2.localdomain.lan

Successivamente, modifica la configurazione /etc/hosts utilizzando l'editor nano.

sudo nano /etc/hosts

Incolla la seguente configurazione.

192.168.10.15 server1.localdomain.lan
192.168.10.20 server2.localdomain.lan

Salva il file premendo Ctrl+X e digitando Y per confermare.

Ora prova la connettività tra server1 e server2 utilizzando il comando ping di seguito.

ping -c3 server1.localdomain.lan
ping -c3 server2.localdomain.lan

Ogni nome di dominio locale verrà risolto nell'indirizzo IP corretto del server.

Impostazione della partizione

Per distribuire GlusterFS, si consiglia di utilizzare un'archiviazione su disco diversa, in particolare per l'ambiente di produzione.

Per questo tutorial, sia il server1 che il server2 hanno un disco secondario /dev/vdb1 con una dimensione di 5 GB.

Ora modifica la configurazione di /etc/fstab usando l'editor nano per aggiungere il tuo disco.

sudo nano /etc/fstab

Per server1, il disco /dev/vda1 verrà montato nella directory /data/vol1.

/dev/vda1 /data/vol1 ext4 default 0 0

E per server2, il disco /dev/vda1 verrà montato nella directory /data/vol2.

/dev/vda1 /data/vol2 ext4 default 0 0

Successivamente, monta il disco /dev/vda1 utilizzando il comando seguente.

sudo mount -a

Se non viene visualizzato alcun messaggio di errore, verifica l'elenco dei dischi montati su ciascun sistema eseguendo il comando df come indicato di seguito.

sudo df -h

Dovresti vedere che il disco /dev/vda1 è montato nella directory /data.

Ora, prima di iniziare l'installazione e la configurazione del cluster GlusterFS, eseguire il comando seguente per creare la directory brick0 all'interno della directory /data.

Sul server1, eseguire il comando seguente.

sudo mkdir -p /data/vol1/brick0

Per server2, eseguire il comando seguente.

sudo mkdir -p /data/vol2/brick0

Aggiunta del repository GlusterFS per Rocky Linux

Dopo aver configurato correttamente il disco, ora installerai i pacchetti GlusterFS sui tuoi server Rocky Linux.

L'attuale Rocky Linux non fornisce ancora pacchetti server GlusterFS, ma è possibile utilizzare i pacchetti GlusterFS della versione CentOS.

Aggiungi il repository GlusterFS al tuo sistema Rocky Linux usando il seguente comando.

sudo dnf install centos-release-gluster9

Digitare y per confermare l'installazione e premere INVIO per continuare.

Successivamente, vai alla directory /etc/yum.repos.d/ e modifica la configurazione del repository CentOS-Gluster-9.repo utilizzando nano editore.

cd /etc/yum.repos.d/
sudo nano CentOS-Gluster-9.repo

Modificare la riga baseurl utilizzando il repository Rocky Linux e commentare la riga mirrorlist come di seguito

# CentOS-Gluster-9.repo
#
# Please see http://wiki.centos.org/SpecialInterestGroup/Storage for more
# information

[centos-gluster9]
name=CentOS-$releasever - Gluster 9
#mirrorlist=http://mirrorlist.centos.org?arch=$basearch&release=$releasever&repo=storage-gluster-9
baseurl=https://dl.rockylinux.org/vault/centos/8.5.2111/storage/x86_64/gluster-9/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage

[centos-gluster9-test]
name=CentOS-$releasever - Gluster 9 Testing
baseurl=http://buildlogs.centos.org/centos/$releasever/storage/$basearch/gluster-9/
gpgcheck=0
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage

Salva il file usando Ctrl+X e Y per confermare.

Ora controlla il repository disponibile sul tuo sistema Rocky Linux usando il seguente comando.

sudo dnf repolist

Vedrai il repository di rilascio CentOS per GlusterFS 9.

Installazione del server GlusterFS

Ora installa i pacchetti GlusterFS sul sistema Rocky Linux usando il comando dnf qui sotto.

sudo dnf install glusterfs glusterfs-libs glusterfs-server

Digitare Y per confermare l'installazione e premere INVIO per continuare.

Al termine dell'installazione, avviare il servizio glusterfsd e aggiungerlo all'avvio del sistema utilizzando il seguente comando.

sudo systemctl enable glusterfsd.service
sudo systemctl start glusterfsd.service

Ora verifica lo stato del servizio glusterfsd utilizzando il comando seguente.

sudo systemctl status glusterfsd.service

Vedrai che il servizio glusterfsd è attivo con lo stato exited, il che significa che è in esecuzione, ma il gestore systemd non riesce a trovare alcun demone da monitorare.

Apertura della porta con Firewalld

Prima di iniziare a configurare il cluster GlusterFS, sarà necessario aprire la porta per il servizio GlusterFS.

Sui sistemi operativi RHEL basati su Linux, l'applicazione firewall predefinita è firewalld, che fornisce lo strumento della riga di comando firewall-cmd per la gestione del firewall.

Aggiungi il servizio glusterfs alla configurazione di firewalld e ricarica firewalld utilizzando il comando seguente.

sudo firewall-cmd --add-service=glusterfs --permanent
sudo firewall-cmd --reload

Successivamente, verifica l'elenco dei servizi su firewalld utilizzando il seguente comando.

sudo firewall-cmd --list-services

Vedrai che il servizio glusterfs è stato aggiunto a firewalld.

Inizializzazione del cluster GlusterFS

Il passaggio successivo sarà l'inizializzazione e la configurazione del cluster GlusterFS sui sistemi Rocky Linux.

Innanzitutto, inizializza il cluster GlusterFS utilizzando il seguente comando. Questo comando deve essere eseguito sul server server1 e può essere eseguito solo una volta.

Utilizzando questo comando, aggiungerai server2.localdomain.lan al peer GlusterFS su server1. Inoltre, il server2 verrà inizializzato automaticamente dopo il completamento del seguente comando.

sudo gluster peer probe server2.localdomain.lan

Ora dovresti vedere il messaggio di output peer probe: success.

Successivamente, verifica lo stato del peer su server1 utilizzando il seguente comando.

sudo gluster peer status

Dovresti vedere che c'è un solo peer su server1.

Inoltre, esegui il comando seguente su server2 per controllare i peer disponibili su server2.

sudo gluster peer status

Dovresti vedere che c'è solo un peer su server2.

Creazione del volume GlusterFS

Dopo aver inizializzato correttamente il cluster GlusterFS, creerai un nuovo volume GlusterFS che verrà utilizzato dai computer client.

In questo tutorial, creerai un nuovo volume con il nome myvolume con il tipo replica da 2 dischi da server1 e server2.

sudo gluster volume create myvolume replica 2 server1.localdomain.lan:/data/vol1/brick0 server2.localdomain.com:/data/vol2/brick0

Ora digita y per confermare e premi INVIO per creare il volume GlusterFS.

Quando il processo ha esito positivo, vedrai l'output come nello screenshot seguente.

Successivamente, avvia il volume Glusterfs myvolume utilizzando il seguente comando.

sudo gluster volume start myvolume

Vedrai il messaggio di output volume start: myvolume: success, che significa che myvolume è stato avviato.

Ora esegui il comando seguente per verificare lo stato del volume GLusterFS.

sudo gluster volume status

Di seguito vedrai lo stato di myvolume online e pronto per l'uso per i clienti.

Facoltativamente, puoi anche verificare lo stato del volume GlusterFS utilizzando il seguente comando.

sudo gluster volume info

Vedrai il volume myvolume con il tipo replicate e lo stato è avviato. Il myvolume si basa sul disco su server1 e server2.

Montaggio del volume GlusterFS sulla macchina client

Ora hai creato il volume GlusterFS myvolume. Successivamente, imparerai come configurare la macchina cline e montare il volume GlusterFS.

In questo tutorial utilizzeremo la macchina client con il nome client.

Modifica la configurazione di /etc/hosts sul tuo computer client utilizzando nano editor.

sudo nano /etc/hosts

Incolla la seguente configurazione.

192.168.10.15 server1.localdomain.lan
192.168.10.20 server2.localdomain.lan

Salva il file con Ctrl+X e digita Y per confermare.

Per verificare la connessione tra la macchina client e il server GlusterFS, eseguire il comando ping di seguito.

ping -c3 server1.localdomain.lan

vedrai che il comando client può connettersi al server GlusterFS.

Successivamente, installa il pacchetto client GlusterFS dal repository AppStream Rocky Linux utilizzando il seguente comando.

sudo dnf install glusterfs-client

Digitare y per confermare l'installazione e premere INVIO per continuare.

Al termine dell'installazione, creare una nuova directory di montaggio /data utilizzando il comando seguente.

sudo mkdir /data

Montare il volume GlusterFS myvolume nella directory /data utilizzando il comando mount di seguito.

sudo mount.glusterfs server1.localdomain.lan:/myvolume /data

Se non si verificano errori, il volume GlusterFS è stato montato correttamente sul computer client.

Eseguire il comando seguente per verificare il volume GlusterFS.

df -h

Vedrai che GlusterFS myvolume è stato montato correttamente nella directory /data sulla macchina client.

Testare l'accesso in scrittura e l'alta disponibilità

Sul computer client, vai alla directory /data e crea un nuovo file utilizzando il comando seguente.

Con questo comando, creerai 5 file nella directory /data.

cd /data
touch file{1..5}.md

Ora spostati su server1 e controlla la directory /data/vol1/brick0 usando il seguente comando.

ls /data/vol1/brick0

Dovresti vedere che il file è disponibile su server1.

Successivamente, spegni o spegni server1 utilizzando il seguente comando.

sudo shutdown -r now

Passa di nuovo a server2 e verifica lo stato di GlusterFS su server2 utilizzando il seguente comando.

sudo gluster peer status

Vedrai che lo stato del peer server1 è disconnected.

Verifica i file disponibili nella directory /data/vol2/brick0 da server2.

ls /data/vol2/brick0

Vedrai che tutti i file del client sono disponibili anche sul server2, il che significa che i dati vengono replicati dal server peer.

Ora se torni alla macchina client, vedrai che lo stato della connessione al server GlusterFS è ancora attivo e in esecuzione, anche quando il server1 è inattivo. Ciò significa che l'alta disponibilità di GlusterFS ha successo.

Conclusione

Congratulazioni! Ora hai installato e configurato correttamente lo storage cluster GlusterFS sui sistemi Rocky Linux. Inoltre, hai imparato come configurare il volume GlusterFS e montare il volume GlusterFS sul computer client.