GlusterFS · 7 min read · Nov 26, 2025

Cómo instalar y configurar GlusterFS en Ubuntu

GlusterFS es un sistema de archivos de red gratuito, de código abierto y escalable, desarrollado primero por Gluster Inc. y más tarde por Redhat. Está diseñado específicamente para cargas de trabajo intensivas en datos, como almacenamiento en la nube, CDN y transmisión de medios. Es capaz de manejar petabytes de datos y, por lo tanto, puede servir a miles de clientes. Soporta varios protocolos como NFS, SMB, CIFS, HTTP y FTP. Con GlusterFS, puedes combinar diferentes recursos de almacenamiento en disco en un único espacio de nombres global.

En este tutorial aprenderemos cómo configurar un volumen replicado de GlusterFS en Ubuntu 18.04.

Requisitos

  • Dos servidores que ejecuten Ubuntu 18.04 con 2 GB de HDD externo en cada uno.
  • Una dirección IP estática 172.20.10.5 está configurada en node1 y 172.20.10.6 está configurada en node2.
  • Una contraseña de root está configurada en ambos servidores.

Comenzando

Antes de comenzar, necesitarás actualizar ambos servidores con la última versión. Puedes actualizarlos ejecutando el siguiente comando en ambos servidores.

apt-get update -y  
apt-get upgrade -y

Una vez que ambos servidores estén actualizados, reinícialos para aplicar los cambios.

A continuación, necesitarás configurar la resolución de nombres en ambos servidores para que cada servidor pueda comunicarse entre sí por nombre de host. Puedes hacerlo editando el archivo /etc/hosts en ambos servidores:

nano /etc/hosts

Agrega las siguientes líneas:

172.20.10.5 node1
172.20.10.6 node2

Guarda y cierra el archivo cuando hayas terminado.

Instalar GlusterFS

Primero, necesitarás instalar el paquete GlusterFS en ambos servidores. Por defecto, GlusterFS no está disponible en el repositorio predeterminado de Ubuntu 18.04. Así que necesitarás agregar el repositorio de GlusterFS en ambos servidores.

Primero, instala el paquete requerido con el siguiente comando:

apt-get install software-properties-common -y

A continuación, agrega el repositorio con el siguiente comando:

add-apt-repository ppa:gluster/glusterfs-5

A continuación, instala el servidor GlusterFS con el siguiente comando:

apt-get install glusterfs-server -y

Una vez que la instalación se haya completado, inicia el servicio GlusterFS y habilítalo para que se inicie al arrancar con el siguiente comando:

systemctl start glusterd  
systemctl enable glusterd

También puedes verificar el estado del servicio GlusterFS con el siguiente comando:

systemctl status glusterd

Deberías ver la siguiente salida:

? glusterd.service - GlusterFS, un servidor de sistema de archivos en clúster
   Cargado: cargado (/lib/systemd/system/glusterd.service; habilitado; configuración predeterminada del proveedor: habilitado)
   Activo: activo (en ejecución) desde jue 2019-11-07 12:51:15 UTC; hace 48s
 PID principal: 7199 (glusterd)
    Tareas: 8 (límite: 505)
   CGroup: /system.slice/glusterd.service
           ??7199 /usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO

Nov 07 12:51:06 ubuntu systemd[1]: Iniciando GlusterFS, un servidor de sistema de archivos en clúster...
Nov 07 12:51:15 ubuntu systemd[1]: Iniciado GlusterFS, un servidor de sistema de archivos en clúster.

Crear almacenamiento GlusterFS

A continuación, necesitarás crear una partición en el disco duro externo (/dev/sdb) en ambos servidores.

Para crear una nueva partición en /dev/sdb, ejecuta el siguiente comando:

fdisk /dev/sdb

Deberías ver la siguiente salida:

Bienvenido a fdisk (util-linux 2.31.1).
Los cambios permanecerán en memoria solo hasta que decidas escribirlos.
Ten cuidado antes de usar el comando de escritura.

El dispositivo no contiene una tabla de particiones reconocida.
Se creó una nueva etiqueta de disco DOS con el identificador de disco 0x06091fe8.

Comando (m para ayuda): n
Tipo de partición
   p   primaria (0 primaria, 0 extendida, 4 libres)
   e   extendida (contenedor para particiones lógicas)
Seleccionar (p predeterminado): p
Número de partición (1-4, predeterminado 1): 
Primer sector (2048-4194303, predeterminado 2048): 
Último sector, +sectores o +tamaño{K,M,G,T,P} (2048-4194303, predeterminado 4194303): 

Se creó una nueva partición 1 de tipo 'Linux' y de tamaño 2 GiB.

Comando (m para ayuda): w
La tabla de particiones ha sido alterada.
Llamando a ioctl() para volver a leer la tabla de particiones.
Sincronizando discos.

A continuación, formatea la partición con el siguiente comando:

mkfs.xfs /dev/sdb1

Deberías ver la siguiente salida:

meta-data=/dev/sdb1              isize=512    agcount=4, agsize=131008 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=0, rmapbt=0, reflink=0
data     =                       bsize=4096   blocks=524032, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

A continuación, crea un directorio para el almacenamiento de GlusterFS en ambos servidores con el siguiente comando:

mkdir /glusterdata

A continuación, monta el disco /dev/sdb1 en un directorio /glusterdata.

mount.xfs /dev/sdb1 /glusterdata

A continuación, haz que el montaje sea persistente entre reinicios editando el archivo /etc/fstab:

nano /etc/fstab

Agrega la siguiente línea:

/dev/sdb1 /glusterdata xfs defaults 0 0

Guarda y cierra el archivo, luego ejecuta el siguiente comando para aplicar los cambios:

mount -a

Ahora puedes verificar el directorio montado con el siguiente comando:

df -h

Deberías ver la siguiente salida:

Sistema de archivos      Tamaño  Usado Avail Uso% Montado en
udev            211M     0  211M   0% /dev
tmpfs            49M 1016K   48M   3% /run
/dev/sda2        30G  4.3G   25G  16% /
tmpfs           241M   12K  241M   1% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           241M     0  241M   0% /sys/fs/cgroup
/dev/loop0       87M   87M     0 100% /snap/core/4486
tmpfs            49M     0   49M   0% /run/user/0
/dev/loop1       90M   90M     0 100% /snap/core/7917
/dev/sdb1       2.0G   35M  2.0G   2% /glusterdata

Configurar volumen GlusterFS

Primero, necesitarás crear un grupo de almacenamiento de confianza agregando node2 en node1. Para hacerlo, ejecuta el siguiente comando en node1:

gluster peer probe node2

Puedes listar el grupo de almacenamiento con el siguiente comando:

gluster pool list

Deberías obtener la siguiente salida:

UUID                        Hostname    Estado
d049b519-9210-4bfa-a1c6-0d1454a88ea0    node2       Conectado 
dbb9252e-6082-4d31-aaef-1b99e0e0c369    localhost   Conectado 

A continuación, crea un directorio de ladrillo en ambos nodos con el siguiente comando:

mkdir /glusterdata/vol1

A continuación, crea un volumen llamado vol1 con dos réplicas:

gluster volume create vol1 replica 2 node1:/glusterdata/vol1 node2:/glusterdata/vol1

A continuación, inicia el volumen usando el siguiente comando:

gluster volume start vol1

Puedes verificar el estado del volumen creado con el siguiente comando:

gluster volume status

Deberías obtener la siguiente salida:

Estado del volumen: vol1
Proceso Gluster                             Puerto TCP  Puerto RDMA  En línea  PID
------------------------------------------------------------------------------
Brick node1:/glusterdata/vol1               49152     0          Y       7987 
Brick node2:/glusterdata/vol1               49152     0          Y       18565
Daemon de auto-sanación en localhost               N/A       N/A        Y       8010 
Daemon de auto-sanación en node2                   N/A       N/A        Y       18588
 
Estado de tarea del volumen vol1
------------------------------------------------------------------------------
No hay tareas de volumen activas

También puedes ver la información sobre el volumen creado con el siguiente comando:

gluster volume info vol1

Deberías obtener la siguiente salida:

Nombre del volumen: vol1
Tipo: Replicar
ID del volumen: e093ae7a-70ac-42b8-ab3f-a8bd186c5740
Estado: Iniciado
Número de instantáneas: 0
Número de ladrillos: 1 x 2 = 2
Tipo de transporte: tcp
Ladrillos:
Ladrillo1: node1:/glusterdata/vol1
Ladrillo2: node2:/glusterdata/vol1
Opciones reconfiguradas:
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off

A continuación, monta el volumen creado en el directorio /mnt en ambos nodos editando el archivo /etc/fstab para que tu volumen esté disponible después de que el servidor arranque.

nano /etc/fstab

Agrega la siguiente línea:

localhost:/vol1 /mnt glusterfs defaults,_netdev 0 0

Guarda y cierra el archivo cuando hayas terminado. Luego, ejecuta el siguiente comando para aplicar los cambios:

mount -a

Probar la replicación

El servidor GlusterFS ya está instalado y configurado. Es hora de probar la replicación entre los dos nodos.

Primero, crea dos archivos en node1:

touch /mnt/file1 /mnt/file2

Ahora, ve a node2 y ejecuta el siguiente comando:

ls -l /mnt/

Deberías ver los mismos archivos que has creado en node1:

total 0
-rw-r--r-- 1 root root 0 Nov  7 13:42 file1
-rw-r--r-- 1 root root 0 Nov  7 13:42 file2

Ahora, detén el servicio GlusterFS en node2 con el siguiente comando:

service glusterd stop

A continuación, ve a node1 y verifica el estado del par:

gluster peer status

Deberías ver que node2 se ha desconectado:

Número de pares: 1

Nombre de host: node2
Uuid: d049b519-9210-4bfa-a1c6-0d1454a88ea0
Estado: Par en el clúster (Desconectado)

También puedes verificar el estado del volumen con el siguiente comando:

gluster volume status

Deberías ver la siguiente salida:

Estado del volumen: vol1
Proceso Gluster                             Puerto TCP  Puerto RDMA  En línea  PID
------------------------------------------------------------------------------
Brick node1:/glusterdata/vol1               49152     0          Y       7987 
Daemon de auto-sanación en localhost               N/A       N/A        Y       8010 
 
Estado de tarea del volumen vol1
------------------------------------------------------------------------------
No hay tareas de volumen activas

A continuación, crea otros dos archivos en node1:

touch /mnt/file3 /mnt/file4

Ahora, ve a node2 y comienza el servicio GlusterFS con el siguiente comando:

service glusterd start

Ahora, verifica el directorio /mnt en node2:

ls -l /mnt/

Deberías ver que todos los archivos de node1 se han replicado y ahora están disponibles.

total 0
-rw-r--r-- 1 root root 0 Nov  7 13:42 file1
-rw-r--r-- 1 root root 0 Nov  7 13:42 file2
-rw-r--r-- 1 root root 0 Nov  7 13:44 file3
-rw-r--r-- 1 root root 0 Nov  7 13:44 file4

Conclusión

¡Felicidades! has instalado y configurado con éxito un volumen replicado de GlusterFS de dos nodos en el servidor Ubuntu 18.04. También puedes configurar un volumen de GlusterFS distribuido, un volumen de GlusterFS replicado distribuido, un volumen de GlusterFS estriado y un volumen de GlusterFS distribuido estriado.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

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