GlusterFS Tutorial · 3 min read · Feb 05, 2026
Striping Across Four Storage Nodes With GlusterFS On CentOS 5.4
Este tutorial muestra cómo hacer striping de datos (segmentación de datos lógicamente secuenciales, como un solo archivo, de modo que los segmentos puedan asignarse a múltiples dispositivos físicos de manera round-robin y, por lo tanto, escribirse de manera concurrente) a través de cuatro servidores de almacenamiento individuales (que ejecutan CentOS 5.4) con GlusterFS. El sistema cliente (CentOS 5.4 también) podrá acceder al almacenamiento como si fuera un sistema de archivos local. GlusterFS es un sistema de archivos en clúster capaz de escalar a varios petabytes. Agrega varios bloques de almacenamiento a través de Infiniband RDMA o TCP/IP en una gran red de sistema de archivos paralelo. Los bloques de almacenamiento pueden estar hechos de cualquier hardware común, como servidores x86_64 con RAID SATA-II y HBA Infiniband.
Por favor, tenga en cuenta que este tipo de almacenamiento no proporciona ninguna característica de alta disponibilidad/tolerancia a fallos, como sería el caso con el almacenamiento replicado.
¡No emito ninguna garantía de que esto funcione para usted!
1 Nota Preliminar
En este tutorial utilizo cinco sistemas, cuatro servidores y un cliente:
- server1.example.com: dirección IP 192.168.0.100 (servidor)
- server2.example.com: dirección IP 192.168.0.101 (servidor)
- server3.example.com: dirección IP 192.168.0.102 (servidor)
- server4.example.com: dirección IP 192.168.0.103 (servidor)
- client1.example.com: dirección IP 192.168.0.104 (cliente)
Los cinco sistemas deben poder resolver los nombres de host de los otros sistemas. Si esto no se puede hacer a través de DNS, debe editar el archivo /etc/hosts para que contenga las siguientes líneas en los cinco sistemas:
vi /etc/hosts| [...] 192.168.0.100 server1.example.com server1 192.168.0.101 server2.example.com server2 192.168.0.102 server3.example.com server3 192.168.0.103 server4.example.com server4 192.168.0.104 client1.example.com client1 [...] |
(También es posible usar direcciones IP en lugar de nombres de host en la configuración siguiente. Si prefiere usar direcciones IP, no tiene que preocuparse de si los nombres de host se pueden resolver o no.)
2 Configuración de los Servidores GlusterFS
server1.example.com/server2.example.com/server3.example.com/server4.example.com:
GlusterFS no está disponible como paquete para CentOS 5.4, por lo tanto, tenemos que construirlo nosotros mismos. Primero, instalamos los requisitos previos:
yum groupinstall 'Development Tools'yum groupinstall 'Development Libraries'yum install libibverbs-devel fuse-develLuego descargamos la última versión de GlusterFS desde http://www.gluster.org/download.php y la construimos de la siguiente manera:
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
./configureAl final del comando ./configure, debería ver algo como esto:
[...]
Resumen de configuración de GlusterFS
===========================
Cliente FUSE : yes
verbos de Infiniband : yes
epoll IO multiplex : yes
Berkeley-DB : yes
libglusterfsclient : yes
argp-standalone : no
[root@server1 glusterfs-2.0.9]#make && make install
ldconfigVerifique la versión de GlusterFS después (debería ser 2.0.9):
glusterfs --version[root@server1 glusterfs-2.0.9]# glusterfs --version
glusterfs 2.0.9 construido el Mar 1 2010 15:34:50
Revisión del repositorio: v2.0.9
Copyright (c) 2006-2009 Gluster Inc.
GlusterFS viene con ABSOLUTAMENTE NINGUNA GARANTÍA.
Puede redistribuir copias de GlusterFS bajo los términos de la Licencia Pública General de GNU.
[root@server1 glusterfs-2.0.9]# A continuación, creamos algunos directorios:
mkdir /data/
mkdir /data/export
mkdir /data/export-ns
mkdir /etc/glusterfsAhora creamos el archivo de configuración del servidor GlusterFS /etc/glusterfs/glusterfsd.vol que define qué directorio se exportará (/data/export) y qué cliente tiene permitido conectarse (192.168.0.104 = client1.example.com):
vi /etc/glusterfs/glusterfsd.vol| volume posix type storage/posix option directory /data/export end-volume volume locks type features/locks subvolumes posix end-volume volume brick type performance/io-threads option thread-count 8 subvolumes locks end-volume volume server type protocol/server option transport-type tcp/server option auth.addr.brick.allow 192.168.0.104 subvolumes brick end-volume |
Por favor, tenga en cuenta que es posible usar comodines para las direcciones IP (como 192.168.*) y que puede especificar múltiples direcciones IP separadas por comas (por ejemplo, 192.168.0.104,192.168.0.105).
Después creamos el siguiente enlace simbólico…
ln -s /usr/local/sbin/glusterfsd /sbin/glusterfsd… y luego los enlaces de inicio del sistema para el servidor GlusterFS y lo iniciamos:
chkconfig --levels 35 glusterfsd on
/etc/init.d/glusterfsd startRecibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.