Un equilibrador de carga (también balanceador de carga como traducción más literal del inglés ) fundamentalmente es un dispositivo de hardware o software que se pone al frente de un conjunto de servidores que atienden una aplicación y, tal como su nombre lo indica, asigna las solicitudes que llegan de los clientes a los servidores usando algún algoritmo (desde un simple round-robin hasta algoritmos más sofisticados) para equilibrar la carga de trabajo entre los servidores. thumb|311x311px Es un método para distribuir la carga de trabajo en varias computadoras separadas o agrupadas en un clúster.
Para que se considere exitoso un equilibrador de carga: Debe minimizar tiempos de respuesta. Mejorar el desempeño del servicio. Evitar la saturación.
Formas de implementar el equilibrado de carga Equilibrado de carga basado en DNS. Se hace por medio de registros DNS para que una URL apunte a más de una dirección IP. Es fácil su implementación. Equilibrado de carga basado en software. Por medio de los servidores web comparten una dirección IP, la cual resuelve el dominio. Estos servidores negocian entre ellos cual responderá a la siguiente petición. Equilibrado de carga dedicado. Cualquier hardware que contenga una aplicación de equilibrado de carga de código libre o comercial.
Métodos de equilibrio de carga De petición
Basado en sesión De métodos
Métodos de conexiones Round-Robin: las peticiones son distribuidas entre los servidores de forma cíclica, independientemente de la carga del servidor. Distribuye de forma ecuánime el número de peticiones, pero no la carga. Weighted Round-Robin: Las peticiones se entregan dependiendo del peso que se le dé a cada servidor. LeastConnection: Cada petición es atendida por el servidor con menos conexiones activas en ese momento. Weighted LeastConnection: Las peticiones se entregan dependiendo del peso y el número de conexiones que se tengan IP-hash: se selecciona el servidor que atenderá la petición con base en algún dato como la dirección IP, de esta forma todas las peticiones de un usuario son atendidas por el mismo servidor.
Ejemplos de equilibradores de carga A continuación se presenta una tabla de comparación con diferentes equilibradores de carga.
Contras
Pros
Observaciones
LVS
Para enrutamiento directo se tiene que parchar el kernel Parche solo disponible para versiones 2.4 Nativo de Linux Soporta varios algoritmos de distribución Failover protection (con ldirector) Documentación extensa El bug solo se presenta para el modo de enrutamiento directo
Ultra Monkey
Soporte limitado No parece tener actualizaciones para kernel 3.x Fork de LVS Custom kernel Failover protection Soporta varios algoritmos de distribución
Pound
Poca documentación Poco conocido Difícil encontrar un paquete pre compilado Failover protection Soporta varios algoritmos de distribución
Zevenet (aka Zen Load Balancer) Documentación extensa Cuenta con soporte Balancea en varias capas Soporta varios algoritmos a nivel TCP Fácil configuración Interfaz web Soporta transparencia con destination NAT y source NAT.
Apache
No es principalmente un balanceador
Extensa documentación Failover protection Soporta varios algoritmos de distribución
Pfsense
No es principalmente un balanceador No es sencillo configurarlo Failover protection Cuenta con soporte Soporta balanceo en varias capas Interfaz web
Pirhana
Solo disponible en redhat
Interfaz web Fácil configuración Documentación extensa Failover protection Soporta varios algoritmos
Véase también
Equilibrio de carga DNS Round Robin
Categoría:Servidores web Categoría:Encaminamiento