GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Archiviazione ad alta disponibilità con GlusterFS su Ubuntu 18.04 LTS

Glusterfs è un filesystem di rete scalabile con capacità di scalare a diversi petabyte e gestire migliaia di client. È un file system distribuito e open source che imposta le risorse di archiviazione su disco da più server in un unico spazio dei nomi. È adatto per attività ad alta intensità di dati come l'archiviazione su cloud e lo streaming di dati multimediali.

In questo tutorial, mostrerò come configurare un server di archiviazione ad alta disponibilità con GlusterFS su Ubuntu 18.04 LTS (Bionic Beaver). Useremo 3 server Ubuntu, 1 server come client e altri 2 come storage. Ciascun server di archiviazione sarà un mirror dell'altro e i file verranno replicati su entrambi i server di archiviazione.

Prerequisiti

  • 3 server Ubuntu 18.04
    • 15.00.10 - gfs01
    • 15.00.11 - gfs02
    • 15.00.12 - client01
  • privilegi radice

Cosa faremo?

  1. Preinstallazione di GlusterFS
  2. Installa il server GlusterFS
  3. Configura i server GlusterFS
  4. Impostazione del client GlusterFS
  5. Test di replica/mirroring

Fase 1 - Preinstallazione di GlusterFS

Il primo passo che dobbiamo fare prima di installare glusterfs su tutti i server è configurare il file degli host e aggiungere il repository GlusterFS a ciascun server.

Configura file host

Accedi a ciascun server e ottieni l'accesso come root con il comando 'sudo su', quindi modifica il file '/etc/hosts'.

vim /etc/hosts

Incolla la configurazione degli host di seguito.

10.0.15.10 gfs01
10.0.15.11 gfs02
10.0.15.12 client01

Salva ed esci.

Ora esegui il ping di ogni server utilizzando il nome host come di seguito.

ping -c 3 gfs01
ping -c 3 gfs02
ping -c 3 client01

Ogni nome host verrà risolto in ogni indirizzo IP del server.

Aggiungi repository GlusterFS

Installa il pacchetto software-proprietà-comune sul sistema.

sudo apt install software-properties-common -y

Aggiungi la chiave e il repository glusterfs eseguendo i comandi seguenti.

wget -O- https://download.gluster.org/pub/gluster/glusterfs/3.12/rsa.pub | apt-key add -
sudo add-apt-repository ppa:gluster/glusterfs-3.12

Il comando aggiornerà tutti i repository. E abbiamo già aggiunto il repository glusterfs a tutti i sistemi.

Passaggio 2:installazione del server GlusterFS

In questo passaggio, installeremo il server glusterfs sui server "gfs01" e "gfs02".

Installa glusterfs-server usando il comando apt.

sudo apt install glusterfs-server -y

Ora avvia il servizio glusterd e abilitalo all'avvio ogni volta all'avvio del sistema.

sudo systemctl start glusterd
sudo systemctl enable glusterd

Il server Glusterfs è ora attivo e funzionante sui server "gfs01" e "gfs02".

Verifica i servizi e la versione del software installato.

systemctl status glusterd
glusterfsd --version

Passaggio 3:configurazione dei server GlusterFS

I servizi Glusterd sono ora attivi e funzionanti e il prossimo passo che faremo sarà configurare quei server creando un pool di archiviazione affidabile e creando il volume glusterfs distribuito.

Crea uno storage pool affidabile

Dal server 'gfs01', dobbiamo aggiungere il server 'gfs02' allo storage pool glusterfs.

Esegui il comando seguente.

gluster peer probe gfs02

Ora vedremo il risultato "peer probe:success" e abbiamo aggiunto il server "gfs02" al pool di archiviazione attendibile.

Controlla lo stato del pool di archiviazione e l'elenco utilizzando i comandi seguenti.

gluster peer status
gluster pool list

E vedrai che il server "gfs02" è connesso al cluster peer ed è nell'elenco dei pool.

Imposta volume GlusterFS distribuito

Dopo aver creato lo storage pool attendibile, creeremo un nuovo volume glusterfs distribuito. Creeremo il nuovo volume glusterfs in base alla directory di sistema.

Nota:

  • Per la produzione del server, si consiglia di creare il volume glusterfs utilizzando la partizione diversa, non utilizzando una directory di sistema.

Crea una nuova directory '/glusterfs/distributed' su ogni server bot 'gfs01' e 'gfs02'.

mkdir -p /glusterfs/distributed

E dal server 'gfs01', crea il volume glusterfs distribuito denominato 'vol01' con 2 repliche 'gfs01' e 'gfs02'.

gluster volume create vol01 replica 2 transport tcp \
gfs01:/glusterfs/distributed \
gfs02:/glusterfs/distributed \
force

Ora abbiamo creato il volume distribuito "vol01":avvia "vol01" e controlla le informazioni sul volume.

gluster volume start vol01
gluster volume info vol01

E di seguito il risultato.

A questo punto, abbiamo creato il volume 'vol01' con il tipo 'Replica' e 2 mattoni sul server 'gfs01' e 'gfs02'. Tutti i dati verranno distribuiti automaticamente a ciascun server di replica e siamo pronti per montare il volume.

Sotto le informazioni sul volume "vol01" dal server "gfs02".

Fase 4 - Configurazione del client GlusterFS

In questo passaggio, monteremo il volume glusterfs 'vol01' sul client Ubuntu e dobbiamo installare il client glusterfs sul server client.

Installa glusterfs-client sul sistema Ubuntu utilizzando il comando apt.

sudo apt install glusterfs-client -y

Ora crea una nuova directory '/mnt/glusterfs' una volta completata l'installazione di glusterfs-client.

mkdir -p /mnt/glusterfs

E monta il volume distribuito glusterfs 'vol01' nella directory '/mnt/glusterfs'.

sudo mount -t glusterfs gfs01:/vol01 /mnt/glusterfs

Ora controlla il volume disponibile sul sistema.

df -h /mnt/glusterfs

E otterremo il volume glusterfs montato nella directory '/mnt/glusterfs'.

Aggiuntivo:

Per montare glusterfs in modo permanente sul sistema client Ubuntu, possiamo aggiungere il volume a '/etc/fstab'.

Modifica il file di configurazione '/etc/fstab'.

vim /etc/fstab

E incolla la configurazione di seguito.

gfs01:/vol01 /mnt/glusterfs glusterfs defaults,_netdev 0 0

Salva ed esci.

Ora riavvia il server e quando sarà online, otterremo il volume glusterfs 'vol01' montato automaticamente tramite fstab.

Fase 5 - Test di replica/mirroring

In questo passaggio, testeremo il mirroring dei dati su ciascun nodo del server.

Monta il volume glusterfs 'vol01' su ciascun server glusterfs.

Sul server 'gfs01'.

mount -t glusterfs gfs01:/vol01 /mnt

Sul server 'gfs02'.

mount -t glusterfs gfs02:/vol01 /mnt

Ora torna al client Ubuntu e vai alla directory '/mnt/glusterfs'.

cd /mnt/glusterfs

Crea alcuni file usando il comando touch.

touch file01 file02 file03

Ora controlla su ciascun server - 'gfs01' e 'gfs02' e otterremo tutti i file che abbiamo creato dalla macchina client.

cd /mnt/
ls -lah

Ecco il risultato del server 'gfs01'.

Ed ecco il risultato del server 'gfs02'.

Tutti i file che abbiamo creato dalla macchina client verranno distribuiti a tutti i server dei nodi del volume glusterfs.


Ubuntu
  1. Come installare Nextcloud con Nginx su Ubuntu 18.04 LTS

  2. Come configurare iSCSI Storage Server su Ubuntu 18.04 LTS

  3. Come configurare un server di archiviazione iSCSI su Ubuntu 20.04 LTS

  4. Creazione di un server di archiviazione autonomo simile a NFS con GlusterFS 3.2.x su Ubuntu 12.10

  5. Configurazione iniziale del server con Ubuntu 20.04 LTS (Focal Fossa)

Come eseguire l'aggiornamento a Ubuntu 20.04 LTS Server

Come installare il server VsFTPD con TLS su Ubuntu 18.04 LTS

Come eseguire l'aggiornamento a Ubuntu Server 22.04 LTS

Come installare Jellyfin Media Server su Ubuntu 20.04 LTS Server/Desktop

Come installare Plex Media Server su Ubuntu 20.04 LTS Server/Desktop

Come installare phpMyAdmin con Apache su Ubuntu 22.04 LTS