Dimensione: 4598
Commento:
|
Dimensione: 5154
Commento: Revisionata
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 4: | Linea 4: |
[[Indice()]] | [[Indice(depth=2)]] |
Linea 6: | Linea 6: |
= GlusterFS: un file system distribuito = | = Introduzione = |
Linea 8: | Linea 8: |
== Introduzione == | Questa pagina contiene le istruzioni utili per installare il filesystem clusterizzato '''GlusterFS''', capace di gestire molti petabytes di dati. |
Linea 10: | Linea 10: |
[http://www.gluster.org/ GlusterFS] è un file system clusterizzato capace di gestire molti petabytes di dati. | = Preparativi = |
Linea 12: | Linea 12: |
''Quella che segue è un'installazione di esempio su un sistema Ubuntu-like.'' == Installazione == L'ultima release di [http://www.ubuntu.com/getubuntu/releasenotes/810 Ubuntu] (8.10 ovvero '''''Ibex''''') ha pacchettizato sia Fuse che GlusterFS; viene quindi divisa la sezione di installazione a seconda si utilizzi la Ibex (se non lo avete ancora fatto, {{{apt-get dist-upgrade}}} funziona a meraviglia) oppure un'altra versione Debian-like in cui i due software non sono ancora disponibili in ''APT''. === Installazione Ibex === Il lato client di GlusterFS usa '''Fuse''' per il ''mount''. === Installazione da sorgente === Il lato client di GlusterFS usa '''Fuse''' per il ''mount''. Scaricare l'ultima versione di GlusterFS da [http://europe.gluster.org/glusterfs/1.3/]. E' consigliabile installare anche una versione patchata di Fuse, fatta su misura per GlusterFS (migliori performance IO ed altro). Si può scaricare da [http://europe.gluster.org/glusterfs/fuse/]. {{{ $ cd /opt/source $ mkdir glusterFS $ wget http://europe.gluster.org/glusterfs/1.3/glusterfs-1.3.8pre6.tar.gz $ wget http://europe.gluster.org/glusterfs/fuse/fuse-2.7.2glfs9.tar.gz $ tar xvzf glusterfs-1.3.8pre6.tar.gz $ tar xvzf fuse-2.7.2glfs9.tar.gz |
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 |
Linea 40: | Linea 16: |
Per prima cosa occorre installare Fuse (ricordandosi di effettuare un backup del modulo originale di fuse, se è già installato). {{{ $ sudo mv /lib/modules/2.6.22-14/kernel/fs/fuse/fuse.ko /lib/modules/2.6.22-14/kernel/fs/fuse/fuse.ko.orig $ cd fuse-2.7.2glfs9/ $ ./configure --prefix=/opt/fuse --enable-kernel-module $ make $ sudo make install $ sudo ldconfig $ sudo rmmod fuse $ sudo modprobe fuse |
= Installazione = 0. Scaricare all'interno della propria '''Home''' l'ultima versione di '''GlusterFS''' da [http://europe.gluster.org/glusterfs/ questo indirizzo]. 0. Scaricare una patch di Fuse pensata per aumentare le prestazioni di '''GlusterFS''' da [http://europe.gluster.org/glusterfs/fuse/ questo indirizzo]. 0. 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 |
Linea 52: | Linea 30: |
Adesso è la volta di GlusterFS. {{{ $ cd glusterfs-1.3.8pre6/ $ LDFLAGS='-L/opt/fuse/lib' CPPFLAGS='-I/opt/fuse/include' ./configure --prefix=/opt/glusterfs $ make $ sudo make install |
0. 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 |
Linea 60: | Linea 40: |
0. 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 }}} |
|
Linea 61: | Linea 47: |
== Configurazione == | = Configurazione = |
Linea 63: | Linea 49: |
Questa installazione fa uso di 2 servers ed 1 client. Prima occorre creare su entrambi i servers (chiamiamoli ''remote1'' e ''remote2'') la directory condivisa. {{{ |
Viene mostrato come applicare la configurazione per due server («remote1» e «remote2») ed un client. 0. Creare la cartella `/data/export` digitando il seguente comando all'interno di una finestra di terminale:{{{ |
Linea 69: | Linea 54: |
Su entrambi i servers (''remote1'' e ''remote2'') editare il file `/opt/glusterfs/etc/glusterfs/glusterfs-server.vol` {{{ | 0. Su entrambi i servers modificare con un [http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto editor di testo] e con i [http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo privilegi di amministrazione] il file `/opt/glusterfs/etc/glusterfs/glusterfs-server.vol` apportando le seguenti modifiche:{{{ |
Linea 83: | Linea 68: |
e sul client editare il file `/opt/glusterfs/etc/glusterfs/glusterfs-client.vol` {{{ |
0. Sul client modificare con un [http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto editor di testo] e con i [http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo privilegi di amministrazione] il file `/opt/glusterfs/etc/glusterfs/glusterfs-client.vol` apportando le seguenti modifiche:{{{ |
Linea 89: | Linea 73: |
option remote-host ''remote1.indirizzo.ip'' | option remote-host remote1.indirizzo.ip |
Linea 96: | Linea 80: |
option remote-host ''remote2.indirizzo.ip'' | option remote-host |
Linea 104: | Linea 88: |
}}} Sostituire le diciture «remote1.indirizzo.ip» e «remote2.indirizzo.ip» con l'indirizzo IP dei due server. 0. 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 |
|
Linea 106: | Linea 94: |
Infine avviare il demone su entrambi i servers {{{ $ sudo /opt/glusterfs/sbin/glusterfsd -f /opt/glusterfs/etc/glusterfs/glusterfs-server.vol }}} |
0. 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. |
Linea 111: | Linea 99: |
e montare la directory remota sul client {{{ $ sudo /opt/glusterfs/sbin/glusterfs -f /opt/glusterfs/etc/glusterfs/glusterfs-client.vol /mnt/glusterfs $ # oppure $ sudo /opt/glusterfs/sbin/glusterfs -s remote1.indirizzo.ip /mnt/glusterfs }}} |
0. Per montare la cartella in modo automatico all'avvio del sistema, modificare con un [http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto editor di testo] e con i [http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo 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. |
Linea 118: | Linea 104: |
Si può montare la directory anche con il comando ''mount'' {{{ $ sudo mount -t glusterfs remote1.indirizzo.ip /mnt/glusterfs }}} |
||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/warning.png,,center)]] ||<style="padding:0.5em; border:none;">'''Non bisogna mai scrivere direttamente all'interno della cartella gestita da GlusterFS, ovvero in questo esempio in `/data/export`.'''|| |
Linea 123: | Linea 106: |
Per montare la direcotry in modo automatico all'avvio del sistema, aggiungere una riga al file `/etc/fstab` {{{ remote1.indirizzo.ip /mnt/glusterfs glusterfs defaults 0 0 }}} |
= Ulteriori risorse = |
Linea 128: | Linea 108: |
oppure {{{ /opt/glusterfs/etc/glusterfs/glusterfs-client.vol /mnt/glusterfs glusterfs defaults 0 0 }}} '''ATTENZIONE:''' '''''Non bisogna MAI tentare di scrivere direttamente nella directory gestita da GlusterFS, ovvero in questo esempio in /data/export !!''''' == Ulteriori risorse == * [http://www.gluster.org/ Home di GlusterFS] * [http://www.gluster.org/docs/index.php/GlusterFS Wiki di GlusterFS] * [http://www.piemontewireless.net Wiki dell'autore dell'articolo] |
* [http://www.gluster.org/ Sito ufficiale del progetto] * [http://www.gluster.org/docs/index.php/GlusterFS Wiki su GlusterFS] |
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 [http://europe.gluster.org/glusterfs/ questo indirizzo].
Scaricare una patch di Fuse pensata per aumentare le prestazioni di GlusterFS da [http://europe.gluster.org/glusterfs/fuse/ 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 [http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto editor di testo] e con i [http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo 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 [http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto editor di testo] e con i [http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo 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 [http://wiki.ubuntu-it.org/Ufficio/EditorDiTesto editor di testo] e con i [http://wiki.ubuntu-it.org/AmministrazioneSistema/Sudo 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. |
Ulteriori risorse
[http://www.gluster.org/ Sito ufficiale del progetto]
[http://www.gluster.org/docs/index.php/GlusterFS Wiki su GlusterFS]