DRBD: RAID1 en red entre varios equipos
Enviado por byte el Mar, 2011-02-22 19:07. LinuxDRBD 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

Comentarios recientes
hace 1 día 8 horas
hace 1 semana 2 días
hace 10 semanas 1 día
hace 16 semanas 3 días
hace 23 semanas 1 día
hace 33 semanas 5 horas
hace 34 semanas 1 día
hace 35 semanas 4 días
hace 39 semanas 6 días
hace 51 semanas 1 día