GlusterFS · 4 min read · Feb 05, 2026

Creando un Servidor de Almacenamiento Independiente Similar a NFS Con GlusterFS 3.2.x En CentOS 6.3

Este tutorial muestra cómo configurar un servidor de almacenamiento independiente en CentOS 6.3. En lugar de NFS, usaré GlusterFS aquí. El sistema cliente 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 un gran sistema de archivos de red paralelo. Los bloques de almacenamiento pueden estar hechos de cualquier hardware común, como servidores x86_64 con RAID SATA-II y HBA Infiniband.

¡No emito ninguna garantía de que esto funcione para ti!

1 Nota Preliminar

En este tutorial utilizo dos sistemas, un servidor y un cliente:

  • server1.example.com: dirección IP 192.168.0.100 (servidor)
  • server2.example.com: dirección IP 192.168.0.101 (cliente)

Ambos sistemas deberían poder resolver el nombre de host del otro sistema. Si esto no se puede hacer a través de DNS, deberías editar el archivo /etc/hosts para que se vea como sigue en ambos sistemas:

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 |

(También es posible usar direcciones IP en lugar de nombres de host en la configuración siguiente. Si prefieres usar direcciones IP, no tienes que preocuparte de si los nombres de host se pueden resolver o no.)

2 Habilitar Repositorios Adicionales

server1/server2:

Primero importamos las claves GPG para los paquetes de software:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Luego habilitamos el repositorio EPEL6 en nuestros dos sistemas CentOS:

rpm --import https://fedoraproject.org/static/0608B895.txt
cd /tmp  
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm  
rpm -ivh epel-release-6-7.noarch.rpm
yum install yum-priorities

Edita /etc/yum.repos.d/epel.repo…

vi /etc/yum.repos.d/epel.repo

… y agrega la línea priority=10 a la sección [epel]:

| [epel] name=Paquetes Extra para 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 Configurando El Servidor GlusterFS

server1.example.com:

GlusterFS está disponible como un paquete para EPEL, por lo tanto, podemos instalarlo de la siguiente manera:

yum install glusterfs-server

Crea los enlaces de inicio del sistema para el demonio Gluster y arráncalo:

chkconfig --levels 235 glusterd on  
/etc/init.d/glusterd start

El comando

glusterfsd --version

debiera mostrar ahora la versión de GlusterFS que acabas de instalar (3.2.7 en este 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 con ABSOLUTAMENTE NINGUNA GARANTÍA.  
Puedes redistribuir copias de GlusterFS bajo los términos de la Licencia Pública General de GNU.  
[root@server1 ~]#

Si usas un firewall, asegúrate de que los puertos TCP 111, 24007, 24008, 24009-(24009 + número de bloques a través de todos los volúmenes) estén abiertos en server1.example.com.

A continuación, creamos el recurso compartido llamado testvol en localhost (= server1) en el directorio /data (esto se creará si no existe):

gluster volume create testvol server1.example.com:/data
[root@server1 ~]# gluster volume create testvol server1.example.com:/data  
La creación del volumen testvol ha sido exitosa. Por favor, inicia el volumen para acceder a los datos.  
[root@server1 ~]#

Inicia el volumen:

gluster volume start testvol

Puedes verificar el estado del volumen con el comando

gluster volume info
[root@server1 ~]# gluster volume info
Nombre del Volumen: testvol  
Tipo: Distribuido  
Estado: Iniciado  
Número de Bloques: 1  
Tipo de Transporte: tcp  
Bloques:  
Bloque1: server1.example.com:/data  
[root@server1 ~]#

Si te dice que el volumen está iniciado, todo está bien, de lo contrario, simplemente inícialo nuevamente.

Por defecto, todos los clientes pueden conectarse al volumen. Si deseas otorgar acceso solo a client1.example.com (= 192.168.0.101), ejecuta:

gluster volume set testvol auth.allow 192.168.0.101

Ten en cuenta que es posible usar comodines para las direcciones IP (como 192.168.*) y que puedes especificar múltiples direcciones IP separadas por comas (por ejemplo, 192.168.0.101,192.168.0.102).

La información del volumen ahora debería mostrar el estado actualizado:

gluster volume info
[root@server1 ~]# gluster volume info
Nombre del Volumen: testvol  
Tipo: Distribuido  
Estado: Iniciado  
Número de Bloques: 1  
Tipo de Transporte: tcp  
Bloques:  
Bloque1: server1.example.com:/data  
Opciones Reconfiguradas:  
auth.allow: 192.168.0.101  
[root@server1 ~]#
 

4 Configurando El Cliente GlusterFS

server2.example.com:

En el cliente, podemos instalar el cliente GlusterFS de la siguiente manera:

yum install glusterfs-client

Luego creamos el siguiente directorio:

mkdir /mnt/glusterfs

¡Eso es todo! Ahora podemos montar el sistema de archivos GlusterFS en /mnt/glusterfs con el siguiente comando:

mount.glusterfs server1.example.com:/testvol /mnt/glusterfs

Ahora deberías ver el nuevo recurso compartido en las salidas de…

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 ~]#

… y…

df -h
[root@server2 ~]# df -h  
Sistema de archivos            Tamaño  Usado  Disponible  Uso%  Montado en  
/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 ~]#

En lugar de montar el recurso compartido de GlusterFS manualmente en el cliente, podrías modificar /etc/fstab para que el recurso compartido se monte automáticamente cuando el cliente arranque.

Abre /etc/fstab y agrega la siguiente línea:

vi /etc/fstab

| [...] server1.example.com:/testvol /mnt/glusterfs glusterfs defaults,_netdev 0 0 |

Para probar si tu /etc/fstab modificado está funcionando, reinicia el cliente:

reboot

Después del reinicio, deberías encontrar el recurso compartido en las salidas de…

df -h

… y…

mount

5 Enlaces

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.