Introduzione
Questa pagina contiene le istruzioni utili per installare il filesystem clusterizzato GlusterFS, capace di gestire molti petabytes di dati.
Preparativi
Prima di iniziare ad apportare delle modifiche al modulo nel kernel è consigliato creare una copia di sicurezza del file originale, quindi digitare il seguente comando all'interno di una finestra di terminale:
sudo mv /lib/modules/`uname -r`/kernel/fs/fuse/fuse.ko /lib/modules/`uname -r`/kernel/fs/fuse/fuse.ko.orig
Installazione
Scaricare all'interno della propria Home l'ultima versione di GlusterFS da questo indirizzo.
Scaricare una patch di Fuse pensata per aumentare le prestazioni di GlusterFS da questo indirizzo.
Copiare i pacchetti scaricati in precedenza all'interno della cartella /opt/source e scompattarli, digitando i seguenti comandi all'interno di una finestra di terminale:
mkdir /opt/source/glusterFS sudo cp glusterfs-*.tar.gz /opt/source/glusterFS sudo cp fuse-*.tar.gz /opt/source/glusterFS tar xvzf glusterfs-*.tar.gz tar xvzf fuse-*.tar.gz
Installare il pacchetto fuse digitando i seguenti comandi all'interno di una finestra di terminale:
cd fuse-*/ ./configure --prefix=/opt/fuse --enable-kernel-module make sudo make install sudo ldconfig sudo rmmod fuse sudo modprobe fuse
Installare il pacchetto GlusterFS digitando i seguenti comandi all'interno di una finestra di terminale:
cd glusterfs-* LDFLAGS='-L/opt/fuse/lib' CPPFLAGS='-I/opt/fuse/include' ./configure --prefix=/opt/glusterfs make sudo make install
Configurazione
Viene mostrato come applicare la configurazione per due server («remote1» e «remote2») ed un client.
Creare la cartella /data/export digitando il seguente comando all'interno di una finestra di terminale:
sudo mkdir -p /data/export
Su entrambi i servers modificare con un editor di testo e con i privilegi di amministrazione il file /opt/glusterfs/etc/glusterfs/glusterfs-server.vol apportando le seguenti modifiche:
# file: /opt/glusterfs/etc/glusterfs/glusterfs-server.vol volume brick type storage/posix option directory /data/export end-volume volume server type protocol/server option transport-type tcp/server option auth.ip.brick.allow * subvolumes brick end-volume
Sul client modificare con un editor di testo e con i privilegi di amministrazione il file /opt/glusterfs/etc/glusterfs/glusterfs-client.vol apportando le seguenti modifiche:
# file: /opt/glusterfs/etc/glusterfs/glusterfs-client.vol volume remote1 type protocol/client option transport-type tcp/client option remote-host remote1.indirizzo.ip option remote-subvolume brick end-volume volume remote2 type protocol/client option transport-type tcp/client option remote-host option remote-subvolume brick end-volume volume mirror0 type cluster/afr subvolumes remote1 remote2 end-volume
Sostituire le diciture «remote1.indirizzo.ip» e «remote2.indirizzo.ip» con l'indirizzo IP dei due server.Avviare il demone su entrambi i servers digitando all'interno di una finestra di terminale il seguente comando:
sudo /opt/glusterfs/sbin/glusterfsd -f /opt/glusterfs/etc/glusterfs/glusterfs-server.vol
Montare la cartella remota sul client digitando uno dei seguenti comandi:
sudo /opt/glusterfs/sbin/glusterfs -f /opt/glusterfs/etc/glusterfs/glusterfs-client.vol /mnt/glusterfs sudo /opt/glusterfs/sbin/glusterfs -s remote1.indirizzo.ip /mnt/glusterfs
Sostituire la dicitura «remote1.indirizzo.ip» con l'indirizzo IP del primo server.Per montare la cartella in modo automatico all'avvio del sistema, modificare con un editor di testo e con i privilegi di amministrazione il file /etc/fstab aggiungendo solo una delle seguenti righe:
remote1.indirizzo.ip /mnt/glusterfs glusterfs defaults 0 0 /opt/glusterfs/etc/glusterfs/glusterfs-client.vol /mnt/glusterfs glusterfs defaults 0 0
Sostituire la dicitura «remote1.indirizzo.ip» con l'indirizzo IP del primo server.
Non bisogna mai scrivere direttamente all'interno della cartella gestita da GlusterFS, ovvero in questo esempio in /data/export. |