9.6. LVS Cluster — Un diagrama de bloque

Los enrutadores LVS usan una colección de programas para monitorear a los miembros y servicios cluster. La Figura 9-4, ilustra como estos varios programas, tanto en el enrutador LVS activo como en el de respaldo, funcionan juntos para manejar el cluster.

Figura 9-4. Componentes de un LVS cluster ejecutándose

El demonio pulse corre en ambos enrutadores LVS, el activo y el pasivo. En el enrutador de respaldo, el demonio pulse envía un latido a la interfaz pública del enrutador activo para asegurarse que el enrutador activo está funcionando correctamente. En el enrutador activo, pulse arranca el demonio lvs y responde a las consultas de latidos del enrutador LVS de respaldo.

Una vez iniciado, el demonio lvs llama a la utilidad ipvsadm para configurar y mantener la tabla de enrutamiento IPVS en el kernel y arranca un proceso nanny, para cada servidor virtual configurado en cada servidor real. Cada proceso nanny verifica el estado de un servicio configurado en un servidor real, y le dice al demonio lvs si el servicio en ese servidor real está malfuncionando. Si se detecta un mal funcionamiento, el demonio lvs le indica a ipvsadm que remueva ese servidor real de la tabla de enrutamiento IPVS.

Si el enrutador de respaldo no recibe respuesta desde el enrutador activo, iniciará un failover llamando a send_arp para reasignar todas las direcciones IP virtuales a las direcciones del hardware de la tarjeta NIC (dirección MAC) del nodo de respaldo, envía un comando al enrutador activo a través de las interfaces de red públicas y privadas para que apague el demonio lvs en el enrutador activo, e inicia el demonio lvs en el nodo de respaldo para aceptar las peticiones para los servidores virtuales configurados.

9.6.1. Componentes de un LVS cluster

La Sección 9.6.1.1 muestra una lista detallada de cada componente de software de un enrutador LVS.

9.6.1.1. pulse

Este es el proceso controlador el cual arranca todos los otros demonios relacionados a los enrutadores LVS. En el momento de arranque, se inicia el demonio por el script /etc/rc.d/init.d/pulse. Este luego lee el archivo de configuración /etc/sysconfig/ha/lvs.cf. En el enrutador activo, pulse arranca el demonio LVS. En el enrutador de respaldo, pulse determina la salud del enrutador activo mediante la ejecución de un heartbeat a un intervalo configurable por el usuario. Si el enrutador activo falla en responder después de un intervalo configurable por el usuario, iniciará un failover. Durante el failover, pulse en el enrutador de respaldo instruye al demonio pulse en el enrutador activo a que apague todos los servicios LVS, a que inicie el programa send_arp para reasignar las direcciones flotantes IP a las direcciones MAC del enrutador de respaldo, y a que arranque el demonio lvs.

9.6.1.2. lvs

El demonio lvs se ejecuta en el enrutador LVS activo una vez llamado por pulse. Este lee el archivo de configuración /etc/sysconfig/ha/lvs.cf, llama a la utilidad ipvsadm para construir y mantener la tabla de enrutamiento de IPVS y asigna un proceso nanny para cada servicio LVS configurado. Si nanny informa que el servidor real está caído, lvs instruye a la utilidad ipvsadm para que elimine al servidor real de la tabla de enrutamiento IPVS.

9.6.1.3. ipvsadm

Este servicio actualiza la tabla de enrutamiento IPVS en el kernel. El demonio lvs configura y administra un LVS cluster llamando a ipvsadm para agregar, modificar o borrar entradas en la tabla de enrutamiento IPVS.

9.6.1.4. nanny

El demonio de monitoreo nanny corre en el enrutador LVS activo. A través de este demonio, el enrutador activo determina la salud de cada servidor real y, opcionalmente, monitorea su carga de trabajo. Se ejecuta un proceso separado para cada servicio definido en cada servidor real.

9.6.1.5. /etc/sysconfig/ha/lvs.cf

Este es el archivo de configuración del LVS cluster. Directa o indirectamente, todos los demonios obtienen su información de configuración a partir de este archivo.

9.6.1.6. Herramienta de configuración Piranha

Esta es la herramienta basada en Web para monitorear, configurar, y administrar un LVS cluster. Normalmente esta es la herramienta predeterminada para mantener el archivo de configuración del LVS cluster /etc/sysconfig/ha/lvs.cf.

9.6.1.7. send_arp

Este programa envía difusiones ARP cuando la dirección IP flotante cambia de un nodo a otro durante un failover.

El Capítulo 10 revisa pasos importantes de configuración post-instalación, que debería tomar antes de configurar Red Hat Enterprise Linux para ser un enrutador LVS.