Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Hoy con una entrada muy interesante y demandada, Zimbra con Cluster DRBD.
Veo mucho en los foros, que los administradores de Zimbra, preguntan sobre el
con sistemas de Postfix para dar alta disponibilidad (HA) y tolerancia a fallos (FT). Como es
que DRBD no está soportado. Por ese motivo para explicar este despliegue usaré Zimbra
fundamentales:
servidores
¿Por qué usar OCFS2 y no otro tipo de sistema de ficheros? La respuesta es, que solo (que
yo conozca) hay dos sistemas de ficheros que permitan Activo/Activo. Uno es OCFS2 (de
que queréis es Activo/Pasivo, os aconsejo usar XFS en vez de los sistemas clásicos, como
También es importante que los dos sistemas tengan la misma hora, ya que sinó nos
Si lo que realmente queréis es poner en producción este sistema, os aconsejo que uséis la
versión 8.4.4 de DRBD, ya que viene con el “dynamically adaptive resync rate controller”,
cosa que con la versión 8.4.3 (que es la que usaremos) no viene por defecto. A
Con las distribuciones Ubuntu 12.04 existe un bug, el cual la versión del modulo de DRBD es
la versión 8.4.3 y la versión del userland es la 8.3.11. Es de vital importancia que tanto la
versión de DRBD como la de userland sean la misma. Para que lo entendamos; el userland,
son las herramientas de espacio del usuario que interactúan con el Kernel, de ahí que tengan
que ser la misma versión. Para que esta capa se entienda con el Kernel, lo que haremos es
y acto seguido compilaremos la versión correspondiente para que cuadren tanto el modulo
Como podéis ver en la captura anterior, la versión 8.3.11 que nos ofrece la Ubuntu es muy
vieja. Nos descargaremos los paquetes necesarios para poder compilar la versión 8.4.3 y de
Crearemos la estructura de ficheros para que podamos trabajar de una manera standard, ya
Configuraremos el DRBD:
startup {
wfc-timeout 60;
become-primary-on both;
}
escriba en el disco duro de uno de los nodos, no se considerará acabado hasta que
DRBD
meta-disk internal – indicamos al sistema que el archivo de meta data, será el mismo
que donde tenemos ubicado el disco duro que estamos usando en producción. Cabe
destacar que se necesitará un espacio adicional para poder almacenar los mata data
el otro nodo del cluster esté levantado. Pasado este tiempo arrancará los servicios.
syncer { rate 35M; } – Es el ancho de banda que usará DRBD para hacer la
Ethernet. Supongamos que tenemos una Ethernet de 1GB, que son 125Mb, el 30% de
125 es 37,5…… para hacer números redondos pondremos 35M en nuestro caso.
Como es de suponer, los dos discos duros que hay en cada Ubuntu, tanto en Zimbra 1 como
en Zimbra 2, han de tener el mismo tamaño. Crearemos la partición del disco duro que
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Instalamos las herramientas del sistema de ficheros OCFS2, para poder formatear la
Configuramos el OCFS2:
root@zimbra1:~# vim /etc/ocfs2/cluster.conf
cluster:
node_count = 2
name = zimbra
node:
ip_port = 7777
ip_address = 172.30.30.201
number = 1
name = zimbra1
cluster = zimbra
node:
ip_port = 7777
ip_address = 172.30.30.202
number = 2
name = zimbra2
cluster = zimbra
Al arrancarlo, podremos ver que esta esperando 60 segundos al otro cluster, tal y como le
Y podremos ver que actualmente nuestro servidor esta Secondary y desconoce como está el
otro sistema. Es normal que desconozca como está el otro sistema, ya que aún no lo hemos
configurado:
se ha de hacer una vez. Es importante usar la variable mail cuando formateamos la partición,
ya que automáticamente nos hará el sistema de bloques más pequeños, de no ser así
un df –h, veremos que nos queda espacio libre, pero el sistema nos dirá que no left space, y
Le indicamos al sistema que cuando arranque nos monté la partición, pero hasta que no
estén levantadas las tarjetas de red, no lo monte. Esto se hace con la opción _netdev:
Ahora hemos de realizar los mismos pasos en el segundo servidor de Zimbra, excepto estos
dos pasos:
En el momento de levantar los servicios del DRBD del Zimbra2, ya podremos observar que
las dos particiones están Primary/Primary y que los datos se replican del Zimbra 1 al Zimbra
2:
Ahora hemos de ser pacientes y esperar a que se repliquen los datos desde el Zimbra1 al
Zimbra2. Cargamos los modulos a mano, para poder montar la partición en los dos
servidores de Zimbra
Y ya para acabar, necesitamos habilitar el sistema OCFS2 que arranque con el sistema
operativo y de esta manera nos cargue los modulos, lo podemos hacer mediante el wizard
que nos proporciona el paquete deb. Una vez lanzado, si queremos modificarlo
manualmente, hay que editar el fichero: /etc/default/o2cb . Para realizar esta operación
root@zimbra1:~# cd /usr/local/src/zcs-8.0.6_GA_5922.UBUNTU12_64.20131203103
702/
root@zimbra1:/usr/local/src/zcs-8.0.6_GA_5922.UBUNTU12_64.20131203103702# .
/install.sh
No voy a entrar, en como se instala el sistema de Zimbra, ya que Jorge tiene un magnifico
Este tipo de instalación, lo que hace es instalar los servicios de Zimbra cogiendo por defecto
root@zimbra2:~# cd /usr/local/src/zcs-8.0.6_GA_5922.UBUNTU12_64.20131203103
702/
root@zimbra2:/usr/local/src/zcs-8.0.6_GA_5922.UBUNTU12_64.20131203103702# .
/install.sh -s
indicarle que no. Esto es debido a que al instalarlo en el servidor de Zimbra 1, el DRBD ha
root@zimbra2:/usr/local/src/zcs-8.0.6_GA_5922.UBUNTU12_64.20131203103702# u
pdate-rc.d -f zimbra remove