Vous êtes sur la page 1sur 9

Requerimientos: Ubuntu server 13.

04 amd64 Heartbeat + Pacemaker + DRDB VMware Workstation

Primero instalaremos Ubuntu server en nuestra simulacin de Clster H.A. Ambos servidores estarn corriendo el servicio Mysql.

Ambos servidores adems tendrn una unidad de disco duro sin particionar asignada en /dev/sdb ambas del mismo tamao 1GB Completado este paso, procedemos a instalar por medio del repositorio Hearbeat, Pacemaker Drbd y Mysql.

# apt-get install heartbeat pacemaker # apt-get install drbd8-utils # apt-get install mysql-server

Heartbeat: es un servicio que nos provee de intercomunicacin entre servidores peers en una infraestructura de clster. Clster: conjunto de dispositivos enlazados servidores que actan en conjunto para proveer servicios Pacemaker: Servicio de administracin de recursos en alta disponibilidad DRBD: sistema distribuido de almacenamiento para plataformas Linux permite realizar un mirror remoto en red similar a RAID 1 ----------------------------------------------------------------------------------------------------------------------------------Server1 = 192.168.106.137 Server2 = 192.168.106.138

Paso siguiente modificaremos en ambos servidores los archivos /etc/hosts /etc/hostname


en caso de tener habilitad un servidor DNS crearemos entradas para ambos servidores en la configuracin. Sin embargo como en este laboratorio no existe ningn servidor DNS utilizaremos estos archivos en ambos servidores

Server1 # nano /etc/hosts

192.168.106.137 192.168.106.138

server1.cluster.com server2.cluster.com

server1 server2

Server1 # nano /etc/hostname

Server1

Server2 # nano /etc/hosts

192.168.106.137 192.168.106.138

server1.cluster.com server2.cluster.com

server1 server2

Server1 # nano /etc/hostname

Server1
Server2 # nano /etc/hostname

Server2

Podemos ahorrarnos este paso utilizando scp

Nos aseguraremos que podemos acceder a cada servidor por su nombre

Server1# ping c 3 server2

Server2# ping c 3 server1


-----------------------------------------------------------------------------------------------------------------------------------------

Continuamos con la configuracin de Heartbeat ingresamos los siguientes parmetros en ambos servidores: Creamos el archivo ha.cf en el directorio ha.d ubicado en /etc # cd /etc/ha.d # nano ha.cf

autojoin none # ingresa nodos de forma manual bcast eth0 warntime 3 # mensaje error al fallar un nodo deadtime 6 #mensaje nodo muerto initdead 60 # nodo sin respuesta declara muerto keepalive 1 # comprueba si el otro nodo existe node server1 node server2 crm respawn # comprueba que pacemaker vive sino lo revive auto_failback on # levanta el segundo nodo al fallar 1

Generamos el certificado para que heartbeat realice una comunicacin segura en server1 y le asignamos los permisos de rw para el administrador

Server1/etc/ha.d# (echo -ne "auth 1\n1 sha1 ";\ > dd if=/dev/urandom bs=512 count=1 | openssl md5)\ > > /etc/ha.d/authkeys Server1/etc/ha.d# chmod 600 authkeys

Entregamos el archivo a server2 a travs de scp

Server1# scp /etc/ha.d/authkeys server2:/etc/ha.d

Una vez traspasado el archive a server2 tambien cambiamos los permisos

Server2/etc/ha.d# chmod 600 authkeys

traspasamos authkeys porque es importante que ambos tengan el mismo certificado

Reiniciamos ambos dispositivos

Server1# init 6 Server2# init 6

Reiniciamos el servicio heartbeat nuevamente en ambos servidores

Server1# service heartbeat restart Server2# restart heartbeat restart


Comprobamos la sincronizacin a travs de pacemaker Server1# crm status Online: [ server2 server1 ]

Ahora configuramos pacemaker en el server1 y todo lo que realicemos en esta configuracin pasara directamente al server2 Server1# crm configuration crm(live)configure# property stonith-enabled="false" crm(live)configure# primitive virtual-ip ocf:heartbeat:IPaddr params ip="192.168.106.140" cidr_netmask="/24" nic="eth0" crm(live)configure# location virtual-ip-pref virtual-ip 100: server1 crm(live)configure#monitor virtual-ip 40s:20s crm(live)configure#commit

Finalizado esto, reiniciamos los servidores Lo que acabamos de realizar en cada paso fue: Deshabilitar el Sistema stonith shoot the other node in the head Stonith es un servicio que garantiza que un nodo este realmente muerto. Asignar una ip virtual por la cual ser accesado los request al servicio de mysql Y por ltimo definimos que el server1 sera el servidor maestro o principal.

Podemos observar en el apartado Current DC: que server1 es el nodo activo mientras que server2 se mantiene pasivo hasta que un problema ocurra.

Si revisamos la configuracin de red en los servidores, confirmaremos que tenemos una interfaz virtual con la ip 192.168.106.140 en la interfaz eth0:0 las cuales configuramos a travs del crm . (configuring and managing cluster resources CLI).

Configuracin DRBD

Ambos servidores deben estar sincronizados con el tiempo, por lo que instalaremos ntp Server1# apt-get install ntp ntpdate Server2# apt-get install ntp ntpdate

Server1# fdisk /dev/sdb

Server2# fdisk /dev/sdb

Creamos la particin en la unidad de almacenamiento que le agregamos a cada servidor de 1GB en mi caso se encuentra en /dev/sdb hecho esto creamos el recurso a compartir lo definir ac como db Server1# drbdadm create-md db Server2# drbdadm create-md db Iniciamos el servicio en ambos servidores Server1# service drbd start Server2# service drbd start

Definimos el servidor primario para el clster en mi caso server1 Server1# drbdadm -- --overwrite-data-of-peer primary db Ya sincronizados ambos nodos verificamos su estado Server1# cat /proc/drbd

Finalmente damos formato a la particin y la montamos en un directorio que crearemos llamado /db Server1# mkfs.ext3 /dev/drbd1 ; mkdir /db ; mount /dev/drbd1 /db

crm_resource -P

Comprobamos que la unidad este montada

Server1# df -ha

Por ultimo en el server2 damos formato a la particin y creamos el directorio de montaje Server2# mkfs3.ext3 /dev/drbd1 ; mkdir /db

Revisamos el status de drbd en ambos servidores Server1# service drbd status Server2# service drbd status

Vous aimerez peut-être aussi