Come installare GlusterFS su Rocky Linux
Su questa pagina
- Prerequisito
- Impostazione FQDN e /etc/hosts
- Impostazione della partizione
- Aggiunta del repository GlusterFS per Rocky Linux
- Installazione del server GlusterFS
- Apertura della porta con Firewalld
- Inizializzazione cluster GlusterFS
- Creazione del volume GlusterFS
- Montaggio del volume GlusterFS sulla macchina client
- Testare l'accesso in scrittura e l'alta disponibilità
- 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.