Heartbeat

Con la Alta disponibilidad y la replicación distribuida de datos, podemos conseguir que además de ese servidor principal, tengamos otro mas (o varios) que tengan los mismo servicios y datos. De esta manera, en caso que el servidor principal falle o se sature, el servidor secundario empezará a atender las nuevas peticiones, bajando de esta manera la carga del principal.

Todo esto depende de la manera en que se configure,  si quisieramos balancear la carga y poder añadir mas de un nodo al cluster tendriamos que configurar HeartBeat como CRM. En el caso que a mi se me planteaba no era necesario un balanceador de carga ni mas de 2 nodos lo he configurado sin CRM, permitiendo solo 2 nodos en la red.

En primer lugar configuraremos heartbeat con apache, para mas tarde añadir MySQL. Los datos los sincronizaremos con rsync sobre ssh.
El primer paso es instalar HeartBeat en ambas maquinas, para proporcionar la alta disponibilidad de los servicios y chkconfig para replicar los ficheros de configuración. Tambien instalaremos apache y mysql que serán los primeros servicios que replicaremos.

# aptitude install heartbeat apache2 mysql-server

Una vez instalado, añadimos al fichero hosts los nombres de los servidores que formaran el cluster con su ip:

# nano /etc/hosts
127.0.0.1    localhost
192.168.10.10    master.casa.local   master
192.168.10.11    slave.casa.local   slave

Ahora pasamos a modificar los ficheros de configuración del servicio, que estarán situados en /etc/ha.d/:

# nano /etc/ha.d/ha.cf

#Archivos de log de HB
debugfile /var/log/ha-debug
logfile /var/log/ha-log
keepalive 2

# tiempo en segundos en el que se considera un sistema como 'muerto' si no responde
deadtime 10

# puerto de comunicacion por la interfaz de red
udpport 694

# interfaz de red para el heartbeat
bcast eth0

# se define el auto_failback en off para que el servicio solo se balancee ante el fallo de uno de los nodos
auto_failback off

# definicion de nodos del cluster
node master.casa.local
node slave.casa.local

# definimos la IP donde se realiza ping constantemente para comprobar la correcta conectividad del nodo
ping 192.168.10.1

#Deshabilitamos el CRM, ya que solo tenemos dos nodos conectados
crm off

AUTHKEYS

auth 2
# 1 crc your_secret_password
2 sha1 your_secret_password
# 3 md5 your_secret_password

Ahora replicaremos los ficheros de configuracion al servidor secundario mediante SCP e iniciamos el servicio en ambos nodos. Si todo ha ido bien, al desconectar el cable en el servidor primario, el secundario levantará una interfaz de red con la IP del primario.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: