Zen Load Balancer

  • 2

Zen Load Balancer

zen_logo

 

La primera entrada del año tratará sobre Zen Load, un balanceador de carga de software libre basado en Debian, fácil de instalar y de comprender su funcionamiento, muy útil para servicios de alta disponibilidad.

 

Definición:

Zen load Balancer es un Balanceador de carga de licencia Open Source, es un software con una interfaz gráfica de configuración. Tiene una versión libre y una versión de pago que incluye el mantenimiento del balanceador.

 

Instalación:

Para empezar la isntalación podemos descargarnos la iso de desde su página oficial
http://www.zenloadbalancer.com/community/downloads/ y una vez la tengamos descargada instalamos como si fuera la instalación de un sistema operativo, zen load balancer esta integrado en una iso con debian squeeze.

Cuando se inicia la instalación nos sale como si estuviéramos instalando una máquina normal:

 

Captura de pantalla de 2016-01-11 19-06-57

Captura de pantalla de 2016-01-11 19-08-39

 

Continuamos con la instalación normal hasta que nos pida que le introduzcamos la IP de la máquina que vayamos a utilizar, normalmente en un distro de linux cualquiera intentaría coger por DHCP pero en este caso la introduciremos manualmente para que quede siempre con esa IP y facilite la configuración. Después esto la instalación es típica de una instalación de linux.

Captura de pantalla de 2016-01-11 19-10-23

 

Acceso al panel web.

Una vez terminada la instalación debemos de irnos al navegador web y poner la dirección IP que hemos puesto antes pero debemos de acceder mediante “https” y por el puerto “444”como por
ejemplo:

https://192.168.130.24:444/

El usuario y la contraseña por defecto son “admin” y “admin”.

 

Un a vez que accedemos por el navegador, vemos que nos aparecen unas gráficas que es información sobre es uso del balanceador, memoria, carga, trafico de red o las granjas de servidores.

Captura de pantalla de 2016-01-11 19-13-52

 

 

Configuración del Cluster.

Como tenemos dos servidores con el balanceador de carga por motivos de alta desponibilidad, debemos de configurar un cluster entre ellos para que trabajen como uno y si se cae uno de los dos pueda seguir trabajando y el sistema siga funcionando. Si nos fijamos vemos como en la parte superior nos dice que no tenemos configurado el cluster, esto es porque Zen Load Balancer recomienda de que haya mas de un balanceador por precaución. En primer lugar nos vamos al menú de configuración y hacemos clic en Settings > Cluster.

Captura de pantalla de 2016-01-11 19-16-29

 

Hacemos clic en “crear una nueva IP virtual”, a partir de que tengamos el cluster funcionando accederemos a esta IP y no a las físicas de las máquinas.

Captura de pantalla de 2016-01-11 19-17-39

 

Guardamos la configuración y volvemos a hacer clic en “settings > cluster” y seleccionamos la IP virtual que acabamos de crear.

Captura de pantalla de 2016-01-11 19-18-24

 

Pinchamos en “Save IP” e iniciamos la configuración del cluster y rellenamos el siguiente formulario.

Captura de pantalla de 2016-01-11 19-19-20

 

Cuando guardamos la configuración se nos desglosa automáticamente mas opciones que tenemos que rellenar, como la contraseña de ROOT del otro servidor y el tipo de cluster que lo podremos que ambos sean maestro.

Captura de pantalla de 2016-01-11 19-20-32

 

Luego volvemos a cargar y ya no nos aparecerá el mensaje que nos aparecía antes en la parte superior de la página.

Captura de pantalla de 2016-01-11 19-21-49

 

Para comprobar que funciona bién lo que debemos hacer es intentar en el panel de configuracion del Zen Load Balancer desde la IP virtual https://192.168.130.28:444/ .

 

 

 

Creación de las Granjas.

Ya hemos configurado el cluster entre los dos nodos de balanceadores, ahora lo que debemos de hacer es configurar las granjas de servidores a las cuales los balanceadores enviaran las peticiones. Estas granjas consisten en agrupar los servidores por los servicios que van a dar. En primer lugar lo que debemos de hacer es irnos al menú de arriba y hacer clic en “Manage” >
“Farms”:

Captura de pantalla de 2016-01-11 19-23-20

 

A continuación escribimos el nombre de la granja que vamos a crear y el perfil que va a tener dicha granja (http, udp, tcp, etc).

Captura de pantalla de 2016-01-11 19-24-05

 

Hacemos clic en “Save & continue” nos aparecerá nuevo campos de texto a rellenar en el cual especificamos la IP Virtual que hemos creado anteriormente y especificamos el puerto por el que irá el tráfico.

Captura de pantalla de 2016-01-11 19-25-18

 

Ahora nos aparecerá que la granja ha sido creada correctamente y nos muestra información sobre la misma.

Captura de pantalla de 2016-01-11 19-26-02

 

A continuación vamos a hacer clic en el botón de editar que se encuentra en acciones y nos aparecerá la configuración de la granja que podemos modificar como queramos. Nos vamos al final y hacemos clic en “Add service” después de poner el nombre del nuevo servicio:

Captura de pantalla de 2016-01-11 19-27-35

 

Nos aparecera un cuerpo nuevo en la página en el cual añadiremos los servidores (IP’s) que vamos
a usar. Como podemos ver no permite elegir el tipo de persistencia de sesión, que podrá ser por IP, cookies url, etc. En este caso escogeremos por cookie:

Captura de pantalla de 2016-01-11 19-28-25

 

Luego nos vamos para abajo y en acciones añadimos un nuevo servidor real que ya tengamos preparado para este fin, poniendo la IP y el puerto que va a usar, también podemos elegir el “timeout” y el “weight” pero lo dejaremos en blanco por el momento, luego hacemos clic en guardar y realizamos esto tantas veces como servidores queramos añadir:

Captura de pantalla de 2016-01-11 19-31-34

Captura de pantalla de 2016-01-11 19-32-10

 

Una vez agregado todos los servidores debemos de reiniciar la granja como se nos indica en en la parte superior de la pagina del balanceador:

Captura de pantalla de 2016-01-11 19-33-37

 

 

Prueba de funcionamiento.
Por ultimo lo que tenemos que hacer es irnos al nevegador y poner la IP virtual con la que trabaja el balanceador o el dominio si lo hemos metido en DNS

Captura de pantalla de 2016-01-11 19-35-33

 

Captura de pantalla de 2016-01-11 19-36-25