GlusterFS · 3 min read · Feb 04, 2026
Archiviazione Distribuita Su Quattro Nodi Di Archiviazione Con GlusterFS Su Fedora 12 - Pagina 2
3 Configurazione Del Client GlusterFS
client1.example.com:
C’è un pacchetto rpm del client GlusterFS per Fedora 12, ma il problema è che si otterranno errori come df: /mnt/glusterfs': Software caused connection abort o df:/mnt/glusterfs’: Transport endpoint is not connected quando si prova ad accedere alla condivisione GlusterFS. Ecco perché costruiamo il client GlusterFS dai sorgenti per evitare questi problemi.
Prima di costruire il client GlusterFS, installiamo le sue dipendenze:
yum groupinstall 'Development Tools'yum groupinstall 'Development Libraries'yum install libibverbs-devel fuse-develPoi scarichiamo i sorgenti di GlusterFS 2.0.9 (si prega di notare che questa è la stessa versione installata sul server!) e costruiamo GlusterFS come segue:
cd /tmp
wget http://ftp.gluster.com/pub/gluster/glusterfs/2.0/LATEST/glusterfs-2.0.9.tar.gz
tar xvfz glusterfs-2.0.9.tar.gz
cd glusterfs-2.0.9
./configureAlla fine del comando ./configure, dovresti vedere qualcosa del genere:
[...]
GlusterFS configure summary
===========================
FUSE client : yes
Infiniband verbs : yes
epoll IO multiplex : yes
Berkeley-DB : yes
libglusterfsclient : yes
argp-standalone : no
[root@client1 glusterfs-2.0.9]#make && make install
ldconfigControlla la versione di GlusterFS successivamente (dovrebbe essere 2.0.9):
glusterfs --version[root@client1 glusterfs-2.0.9]# glusterfs --version
glusterfs 2.0.9 built on Feb 19 2010 19:20:46
Repository revision: v2.0.9
Copyright (c) 2006-2009 Gluster Inc.
GlusterFS viene fornito SENZA NESSUNA GARANZIA.
Puoi ridistribuire copia di GlusterFS sotto i termini della GNU General Public License.
[root@client1 glusterfs-2.0.9]# Poi creiamo le seguenti due directory:
mkdir /mnt/glusterfs
mkdir /etc/glusterfsSuccessivamente creiamo il file /etc/glusterfs/glusterfs.vol:
vi /etc/glusterfs/glusterfs.vol| volume remote1 type protocol/client option transport-type tcp option remote-host server1.example.com option remote-subvolume brick end-volume volume remote2 type protocol/client option transport-type tcp option remote-host server2.example.com option remote-subvolume brick end-volume volume remote3 type protocol/client option transport-type tcp option remote-host server3.example.com option remote-subvolume brick end-volume volume remote4 type protocol/client option transport-type tcp option remote-host server4.example.com option remote-subvolume brick end-volume volume distribute type cluster/distribute subvolumes remote1 remote2 remote3 remote4 end-volume volume writebehind type performance/write-behind option window-size 1MB subvolumes distribute end-volume volume cache type performance/io-cache option cache-size 512MB subvolumes writebehind end-volume |
Assicurati di utilizzare i nomi host o gli indirizzi IP corretti nelle righe option remote-host!
Ecco fatto! Ora possiamo montare il filesystem GlusterFS su /mnt/glusterfs con uno dei seguenti due comandi:
glusterfs -f /etc/glusterfs/glusterfs.vol /mnt/glusterfsoppure
mount -t glusterfs /etc/glusterfs/glusterfs.vol /mnt/glusterfsDovresti ora vedere la nuova condivisione negli output di…
mount[root@client1 ~]# mount
/dev/mapper/vg_server5-lv_root on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/etc/glusterfs/glusterfs.vol on /mnt/glusterfs type fuse.glusterfs (rw,allow_other,default_permissions,max_read=131072)
[root@client1 ~]#… e…
df -h[root@client1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_server5-lv_root
29G 2.5G 25G 10% /
tmpfs 185M 0 185M 0% /dev/shm
/dev/sda1 194M 23M 161M 13% /boot
/etc/glusterfs/glusterfs.vol
114G 9.8G 99G 10% /mnt/glusterfs
[root@client1 ~]#( server1.example.com, server2.example.com, server3.example.com e server4.example.com hanno ciascuno circa 28.5GB di spazio per il filesystem GlusterFS, in modo che la condivisione risultante abbia una dimensione di circa 4 x 28.5GB (114GB).)
Invece di montare manualmente la condivisione GlusterFS sul client, potresti modificare /etc/fstab in modo che la condivisione venga montata automaticamente all’avvio del client.
Apri /etc/fstab e aggiungi la seguente riga:
vi /etc/fstab| [...] /etc/glusterfs/glusterfs.vol /mnt/glusterfs glusterfs defaults 0 0 |
Per testare se la tua modifica a /etc/fstab funziona, riavvia il client:
rebootDopo il riavvio, dovresti trovare la condivisione negli output di…
df -h… e…
mount4 Test
Ora creiamo alcuni file di test sulla condivisione GlusterFS:
client1.example.com:
touch /mnt/glusterfs/test1
touch /mnt/glusterfs/test2
touch /mnt/glusterfs/test3
touch /mnt/glusterfs/test4
touch /mnt/glusterfs/test5
touch /mnt/glusterfs/test6Ora controlliamo la directory /data/export su server1.example.com, server2.example.com, server3.example.com e server4.example.com. Noterai che ogni nodo di archiviazione contiene solo una parte dei file/directory che compongono la condivisione GlusterFS sul client:
server1.example.com:
ls -l /data/export[root@server1 ~]# ls -l /data/export
total 0
-rw-r--r-- 1 root root 0 2010-02-22 20:15 test1
-rw-r--r-- 1 root root 0 2010-02-22 20:15 test2
-rw-r--r-- 1 root root 0 2010-02-22 20:15 test5
[root@server1 ~]#server2.example.com:
ls -l /data/export[root@server2 ~]# ls -l /data/export
total 0
-rw-r--r-- 1 root root 0 2010-02-22 20:15 test4
[root@server2 ~]#server3.example.com:
ls -l /data/export[root@server3 ~]# ls -l /data/export
total 0
-rw-r--r-- 1 root root 0 2010-02-22 20:15 test6
[root@server3 ~]#server4.example.com:
ls -l /data/export[root@server4 ~]# ls -l /data/export
total 0
-rw-r--r-- 1 root root 0 2010-02-22 20:15 test3
[root@server4 ~]#5 Link
- GlusterFS: http://www.gluster.org/
- Fedora: http://fedoraproject.org/
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.