jueves, 19 de abril de 2018

Balanceando con Citrix Netscaler

En este articulo mostrare como hacer una implementación rápida de un servicio TCP balanceado con Citrix Netscaler. Suponiendo que tenemos dos servidores con un servicio de Apache Tomcat cada uno y que ambos escuchan en el puerto 8080, requerimos lo siguiente:

  • 1 IP como IP virtual para publicar el servicio balanceado.
  • 2 IPs de los servidores a balancear.
  • puertos TCP a balancear.


El equipo utilizado en esta practica es
  • NS10.1: Build 120.13.nc
  • Citrix Netscaler MPX-8200

En la sección de "Load Balancing" tenemos la parametrizacion básica en los sub-menu de Servers, Services y Virtual Server. En el sub-menu de servers vamos a definir cada uno de los servidores que deseamos balancear es ahi donde vamos a capturar el hostname o alias, IP y algún comentario así como se muestra en la siguiente imagen. Para nuestra arquitectura básica propuesta es aquí donde definimos al host1 y host2 con sus respectivas IPs.


 En el sub-menu Services podemos definir el cada servicio que asociaremos a un servidor. Debemos ya tener documentado o planeado la siguiente informacion:
  • El nombre del servicio.
  • El protocolo a usar: TCP, UDP, DNS, HTTP, SSL, MSSQL, MYSQL, RDP, etc.
  • El puerto a usar.
  • El servidor al que asociaremos este servicio y que debimos definir en previamente.
  • Monitor, el cual es el mecanimos por el que verificaremos la salud del servicio.




Como complemento al servicio debemos asociar un monitor, el cual revisara la salud del servicio, existen monitores como validación por icmp, validación por conexión tcp, encabezados de http, encabezados por tcp, etc. Existe un listado ya definido y nosotros podemos definir nuevos monitores.

Finalmente en el sub-menu Virtual Servers, fijaremos una IP virtual para atender al servicio balanceado. Como en el caso de los servicios la información que debemos asignar es:

  • Nombre del servidor virtual.
  • Protocolo
  • El protocolo a usar: TCP, UDP, DNS, HTTP, SSL, MSSQL, MYSQL, RDP, etc.
  • El puerto a usar.
  • Debemos seleccionar los servicios que asignaremos a este Virtual Server.
  • Metodo de balanceo: Least Connection, Least Request, Least Response Time, Round Robin, etc.

De esta manera la consulta del servicio se realiza unicamente hacia la IP virtual.




No hay comentarios: