Evitar navegación.
Principal

DRBD: RAID1 en red entre varios equipos

DRBD es un software que permite hacer réplica de los datos de una partición entre varias máquinas. Es decir, que si tengo una partición del mismo tamaño en dos máquinas, con DRBD puedo hacer una réplica del contenido de esta partición de forma automática, para que en el caso de que una máquina falle, tenga todo el contenido de esa partición accesible desde la otra máquina. Es como un RAID1, pero entre distintas máquinas.

Habitualmente, esta partición de la que se hace mirror, solamente está montada en una de las máquinas porque se utiliza un sistema de ficheros tradicional: ext3, raiserfs, xfs, ... De esta forma, solo una de las máquinas puede acceder a los datos, la que tiene la partición montada. Sirve para montar un sistema de cluster en modo activo/pasivo, y que una de las máquinas tenga todos los datos hasta que falle, y en ese momento se puede acceder desde la otra máquina.

Pero también se puede configurar para que ambas máquinas tengan acceso a la partición en espejo, y en este caso habría que montar un sistema de ficheros para acceso en clúster, como GFS o OCFS. De esta forma podemos montar un clúster activo/activo donde ambas máquinas tienen acceso simultáneo al recurso de datos.

Instalación

Para la versión 0.7 (la que había en Debian Lenny), hay que hacer lo siguiente:

Es necesario instalar las drbd-utils:

# apt-get install drbd0.7-utils

Y el módulo de kernel:

# apt-get install drbd0.7-module-source
# apt-get install dpatch
# cd /usr/src
# tar -zxf drbd0.7.tar.gz
# cd /usr/src/modules/drbd
# module-assistant prepare
# module-assistant automatic-install drbd0.7-module-source
(Navigate the module package creation procedure as logically as
possible; details for this procedure are not provided.)
# cd /usr/src
# dpkg -i drbd0.7-module-2.4.27-2-7_0.7.10-3+2.4.27-8_i386.deb

Configuración

Configurar el propio servicio en ambas máquinas (/etc/drbd.conf), por ejemplo así:

# Definicion recurso
resource r0 {
protocol C;
disk {
on-io-error panic;
}
syncer {
rate 50M; # Note: 'M' is MegaBytes, not MegaBits
}

on maquinaA.dominio.tld {
address 192.168.20.1:7789;
device /dev/drbd0;
disk /dev/sda8;
meta-disk internal;
}
on maquinaB.dominio.tld {
address 192.168.20.2:7789;
device /dev/drbd0;
disk /dev/sda8;
meta-disk internal;
}
}

Después, arrancar el servicio en ambos nodos:

# /etc/init.d/drbd start

Ejecutar lo siguiente en el nodo que queremos que sea el primario:

# drbdsetup /dev/drbd0 primary --do-what-I-say

Y cuando termine lo anterior (solo en el primario):

# drbdadm primary r0
# mkfs.ext3 /dev/drbd0

Después, ya se puede configurar el metadispositivo en el /etc/fstab de ambas máquinas:

/dev/drbd0 /shared ext3 rw,noauto 0 2

Y después, probar a montar la unidad en el primario.

# mount /shared

Responder

El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Etiquetas HTML permitidas: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Saltos automáticos de líneas y de párrafos.
Más información sobre opciones de formato