Almacenamiento · 2 min read · Jan 08, 2026

Almacenamiento de Alta Disponibilidad Con GlusterFS En Debian Lenny - Replicación Automática de Archivos Entre Dos Servidores de Almacenamiento

Este tutorial muestra cómo configurar un almacenamiento de alta disponibilidad con dos servidores de almacenamiento (Debian Lenny) que utilizan GlusterFS. Cada servidor de almacenamiento será un espejo del otro servidor de almacenamiento, y los archivos se replicarán automáticamente entre ambos servidores de almacenamiento. El sistema cliente (Debian Lenny 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.

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

1 Nota Preliminar

En este tutorial utilizo tres sistemas, dos 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)
  • client1.example.com: dirección IP 192.168.0.102 (cliente)

Los tres sistemas deben ser capaces de resolver los nombres de host de los otros sistemas. Si esto no se puede hacer a través de DNS, debes editar el archivo /etc/hosts para que se vea como sigue en los tres sistemas:

vi /etc/hosts

| 127.0.0.1 localhost.localdomain localhost 192.168.0.100 server1.example.com server1 192.168.0.101 server2.example.com server2 192.168.0.102 client1.example.com client1 # Las siguientes líneas son deseables para hosts compatibles con IPv6 ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts |

(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 Configuración de los Servidores GlusterFS

server1.example.com/server2.example.com:

GlusterFS no está disponible como un paquete de Debian para Debian Lenny, por lo tanto, tenemos que construirlo nosotros mismos. Primero instalamos los requisitos previos:

aptitude install sshfs build-essential flex bison byacc libdb4.6 libdb4.6-dev

Luego descargamos la última versión de GlusterFS desde http://www.gluster.org/download.php y lo construimos de la siguiente manera:

cd /tmp  
wget http://ftp.gluster.com/pub/gluster/glusterfs/2.0/LATEST/glusterfs-2.0.1.tar.gz  
tar xvfz glusterfs-2.0.1.tar.gz  
cd glusterfs-2.0.1  
./configure --prefix=/usr > /dev/null
server1:/tmp/glusterfs-2.0.1# ./configure --prefix=/usr > /dev/null  
  
GlusterFS configure summary  
===========================  
FUSE client        : no  
Infiniband verbs   : no  
epoll IO multiplex : yes  
Berkeley-DB        : yes  
libglusterfsclient : yes  
mod_glusterfs      : no ()  
argp-standalone    : no  
  
server1:/tmp/glusterfs-2.0.1#
make && make install  
ldconfig

El comando

glusterfs --version

debiera mostrar ahora la versión de GlusterFS que acabas de compilar (2.0.1 en este caso):

server1:/tmp/glusterfs-2.0.1# glusterfs --version  
glusterfs 2.0.1 built on May 29 2009 17:23:10  
Repository revision: 5c1d9108c1529a1155963cb1911f8870a674ab5b  
Copyright (c) 2006-2009 Z RESEARCH Inc.   
GlusterFS comes with ABSOLUTELY NO WARRANTY.  
You may redistribute copies of GlusterFS under the terms of the GNU General Public License.  
server1:/tmp/glusterfs-2.0.1#

A continuación, creamos algunos directorios:

mkdir /data/  
mkdir /data/export  
mkdir /data/export-ns  
mkdir /etc/glusterfs

Ahora 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.102 = 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 option auth.addr.brick.allow 192.168.0.102 subvolumes brick end-volume |

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.102,192.168.0.103).

Después creamos los enlaces de inicio del sistema para el script init de glusterfsd…

update-rc.d glusterfsd defaults

… y comenzamos glusterfsd:

/etc/init.d/glusterfsd start
Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

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