GlusterFS Setup · 4 min read · Feb 05, 2026
Creare un server di archiviazione autonomo simile a NFS con GlusterFS 3.2.x su CentOS 6.3
Questo tutorial mostra come impostare un server di archiviazione autonomo su CentOS 6.3. Invece di NFS, utilizzerò GlusterFS qui. Il sistema client sarà in grado di accedere all’archiviazione come se fosse un filesystem locale. GlusterFS è un filesystem clusterizzato in grado di scalare fino a diversi petabyte. Aggrega vari mattoni di archiviazione su Infiniband RDMA o TCP/IP in un grande filesystem di rete parallelo. I mattoni di archiviazione possono essere costituiti da qualsiasi hardware commerciale come server x86_64 con RAID SATA-II e HBA Infiniband.
Non rilascio alcuna garanzia che questo funzionerà per te!
1 Nota preliminare
In questo tutorial utilizzo due sistemi, un server e un client:
- server1.example.com: indirizzo IP 192.168.0.100 (server)
- server2.example.com: indirizzo IP 192.168.0.101 (client)
Entrambi i sistemi dovrebbero essere in grado di risolvere il nome host dell’altro sistema. Se ciò non può essere fatto tramite DNS, dovresti modificare il file /etc/hosts in modo che appaia come segue su entrambi i sistemi:
vi /etc/hosts| 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 192.168.0.100 server1.example.com server1 192.168.0.101 server2.example.com server2 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 |
(Si può anche utilizzare indirizzi IP invece di nomi host nella seguente configurazione. Se preferisci utilizzare indirizzi IP, non devi preoccuparti se i nomi host possono essere risolti o meno.)
2 Abilitare repository aggiuntivi
server1/server2:
Per prima cosa importiamo le chiavi GPG per i pacchetti software:
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*Poi abilitiamo il repository EPEL6 sui nostri due sistemi CentOS:
rpm --import https://fedoraproject.org/static/0608B895.txtcd /tmp
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
rpm -ivh epel-release-6-7.noarch.rpmyum install yum-prioritiesModifica /etc/yum.repos.d/epel.repo…
vi /etc/yum.repos.d/epel.repo… e aggiungi la riga priority=10 alla sezione [epel]:
| [epel] name=Extra Packages for Enterprise Linux 6 - $basearch #baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch failovermethod=priority enabled=1 priority=10 gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6 [...] |
3 Impostare il server GlusterFS
server1.example.com:
GlusterFS è disponibile come pacchetto per EPEL, quindi possiamo installarlo come segue:
yum install glusterfs-serverCrea i collegamenti di avvio del sistema per il demone Gluster e avvialo:
chkconfig --levels 235 glusterd on
/etc/init.d/glusterd startIl comando
glusterfsd --versiondovrebbe ora mostrare la versione di GlusterFS che hai appena installato (3.2.7 in questo caso):
[root@server1 ~]# glusterfsd --version
glusterfs 3.2.7 built on Jun 11 2012 13:22:28
Repository revision: git://git.gluster.com/glusterfs.git
Copyright (c) 2006-2011 Gluster Inc.
GlusterFS viene fornito senza ALCUN GARANZIA.
Puoi ridistribuire copie di GlusterFS secondo i termini della GNU General Public License.
[root@server1 ~]# Se utilizzi un firewall, assicurati che le porte TCP 111, 24007, 24008, 24009-(24009 + numero di mattoni su tutti i volumi) siano aperte su server1.example.com.
Successivamente creiamo la condivisione chiamata testvol su localhost (= server1) nella directory /data (questa verrà creata se non esiste):
gluster volume create testvol server1.example.com:/data[root@server1 ~]# gluster volume create testvol server1.example.com:/data
La creazione del volume testvol è stata completata con successo. Si prega di avviare il volume per accedere ai dati.
[root@server1 ~]#Avvia il volume:
gluster volume start testvolPuoi controllare lo stato del volume con il comando
gluster volume info[root@server1 ~]# gluster volume infoVolume Name: testvol
Type: Distribute
Status: Started
Number of Bricks: 1
Transport-type: tcp
Bricks:
Brick1: server1.example.com:/data
[root@server1 ~]#Se ti dice che il volume è avviato, tutto va bene, altrimenti avvialo di nuovo.
Per impostazione predefinita, tutti i client possono connettersi al volume. Se desideri concedere l’accesso solo a client1.example.com (= 192.168.0.101), esegui:
gluster volume set testvol auth.allow 192.168.0.101Si prega di notare che è possibile utilizzare caratteri jolly per gli indirizzi IP (come 192.168.*) e che puoi specificare più indirizzi IP separati da virgola (ad es. 192.168.0.101,192.168.0.102).
Le informazioni sul volume dovrebbero ora mostrare lo stato aggiornato:
gluster volume info[root@server1 ~]# gluster volume infoVolume Name: testvol
Type: Distribute
Status: Started
Number of Bricks: 1
Transport-type: tcp
Bricks:
Brick1: server1.example.com:/data
Options Reconfigured:
auth.allow: 192.168.0.101
[root@server1 ~]# 4 Impostare il client GlusterFS
server2.example.com:
Sul client, possiamo installare il client GlusterFS come segue:
yum install glusterfs-clientPoi creiamo la seguente directory:
mkdir /mnt/glusterfsEcco fatto! Ora possiamo montare il filesystem GlusterFS su /mnt/glusterfs con il seguente comando:
mount.glusterfs server1.example.com:/testvol /mnt/glusterfsOra dovresti vedere la nuova condivisione negli output di…
mount[root@server2 ~]# mount
/dev/mapper/vg_client1-LogVol00 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)
server1.example.com:/testvol on /mnt/glusterfs type fuse.glusterfs (rw,allow_other,default_permissions,max_read=131072)
[root@server2 ~]#… e…
df -h[root@server2 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_client1-LogVol00
9.7G 1.7G 7.5G 19% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/sda1 504M 39M 440M 9% /boot
server1.example.com:/testvol
9.7G 1.7G 7.5G 19% /mnt/glusterfs
[root@server2 ~]#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| [...] server1.example.com:/testvol /mnt/glusterfs glusterfs defaults,_netdev 0 0 |
Per testare se il tuo /etc/fstab modificato funziona, riavvia il client:
rebootDopo il riavvio, dovresti trovare la condivisione negli output di…
df -h… e…
mount5 Link
- GlusterFS: http://www.gluster.org/
- Documentazione GlusterFS 3.2: http://download.gluster.com/pub/gluster/glusterfs/3.2/Documentation/AG/html/index.html
- CentOS: http://www.centos.org/
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.