10 Equilibrador de carga de código abierto para alta disponibilidad y rendimiento mejorado

Una de las formas más rápidas y sencillas de configurar una aplicación con alta disponibilidad y mejorar el rendimiento es implementar el equilibrador de carga (LB).

A un alto nivel, hay tres tipos de balanceadores de carga.

  • basado en hardware
  • basado en la nube
  • basado en software

Un balanceador de carga de hardware es un dispositivo dedicado para proporcionar distribución de carga y sus características relevantes. Algunos de los proveedores de hardware LB populares son:

Son caros pero te dan control total.

El balanceador de carga en la nube está más de moda que nunca.

El uso de Cloud LB es una de las formas asequibles de disfrutar de funciones completas sin invertir en un dispositivo de hardware. Pagas por lo que usas. Los siguientes son algunos de los LB de nube conocidos.

Puede comenzar desde tan solo $ 20 por mes.

Y el último está basado en software donde usted mismo instala, administra y configura el software LB. Esto puede ser comercial o de código abierto/gratuito.

Si no tiene un presupuesto o desea explorar una solución gratuita de balanceador de carga, lo siguiente lo ayudará.

Balancín

Usado por Googleun servidor equilibrador de carga virtual basado en Linux confiable para proporcionar la distribución de carga necesaria en la misma red.

Balancín está desarrollado en el lenguaje Go y funciona bien en la distribución Ubuntu/Debian. Admite anycast y DSR (retorno directo del servidor) y requiere dos nodos Seesaw. Pueden ser físicos o virtuales.

Vale la pena mencionar que Seesaw funciona con redes de capa cuatro, por lo que si está buscando equilibrio de carga de capa siete, es posible que desee explorar otras opciones.

KEMP

Un controlador de entrega de aplicaciones avanzado GRATIS por KEMP es compatible con todos los principales hipervisores. Puede descargarlo y usarlo en su centro de datos o implementarlo en la nube DC como AWS o Azure.

Es gratis, pero ofrece un nivel comercial de funciones, incluidas las siguientes.

  • Equilibrio de carga de capa 4 para TCP/UDP mediante algoritmos de conexión por turnos o mínimos
  • Equilibrio de capa 7
  • Integrar un firewall de aplicaciones web (WAF)
  • Motor de prevención de intrusiones (IPS) incorporado
  • Equilibrio de carga de servidor global verdadero, compatible con múltiples sitios
  • Almacenamiento en caché, compresión de contenido, cambio de contenido
  • Persistencia de cookies web
  • tunelización IPSec
  • Pre-autenticación
  • vamos a cifrar
  • Kubernetes

KEMP LB es utilizado por algunas de las grandes marcas como Apple, Sony, JP Morgan, Audi, Hyundai, etc. La edición gratuita proporciona suficientes funciones; sin embargo, si necesita más, puede consultar su licencia comercial.

Si usted o su organización deciden explorar KEMP LB y necesitan capacitación en línea, pueden consultar este curso en línea de Mike Walton.

HAProxy

Uno de los más populares en el mercado es proporcionar alta disponibilidad, proxy, equilibrio de carga TCP/HTTP. HAProxy es utilizado por algunas de las marcas de renombre en el mundo, como a continuación.

Algunas de las características que vale la pena mencionar son.

  • Soporta IPv6 y enchufe UNIX
  • Desinflar y compresión Gzip
  • Chequeo de salud
  • Permanencia de la sesión basada en la fuente
  • Informes de estadísticas incorporados (pago manifestación)

Como es de esperar, HAProxy obtuvo una edición empresarial, hardware y dispositivo virtual.

La mejor manera de conocer HAProxy es probarlos. Community Edition viene con toneladas de funciones, y son GRATIS de todos modos.

ZEVENET

Zevenet admite L3, L4 y L7. Está disponible como código fuente, imagen de IOS y en un repositorio acoplable.

Es compatible con el monitoreo avanzado de verificación de estado, por lo que los servidores/servicios defectuosos quedan fuera de servicio rápidamente para brindar una experiencia de usuario perfecta. Zevenet, anteriormente conocido como Zen, funciona bien con un protocolo basado en TCP como FTP, SIP, SSL, HTTP, etc.

Si está buscando alojamiento Zevenet, puede intentarlo Camatera.

neutrino

neutrino es usado por eBay y construido usando Scala & Netty. Admite algoritmos de conexión mínima y de turno rotativo con las siguientes funciones de conmutación.

  • Usando nombres canónicos
  • basado en el contexto
  • L4 usando números de puerto TCP

Neutrino está probado para manejar más de 300 solicitudes por segundo de rendimiento en VM de 2 núcleos. Si está comparando con HAProxy, entonces una de las principales ventajas de usar Neutrino es la conmutación L7.

Pero como siempre, pruebe ambos y vea qué funciona mejor para su entorno.

Balance

Balance por In lab Networks es un proxy TCP round-robin LB que admite IPv6 en el lado de escucha. Esto significa que puede tener IPv4 en el front-end e IPv6 en el back-end.

Tiene todas las características básicas de LB.

Lápiz

Lápiz se prueba en Linux, FreeBSD, HP-UX, Solaris y Windows, pero no hay motivo para que no funcione en otra distribución de Unix. Admite protocolos basados ​​en UDP y TCP como HTTP, SNMP, DNS, etc.

Algunas de las características incluyen las siguientes junto con las básicas.

  • Filtro GeoIP
  • Terminación SSL
  • Compatibilidad con IPv4 e IPv6

Nginx

Sé lo que podrías estar pensando. Nginx es un servidor web, un servidor proxy, etc. Pero Nginx de código abierto admite un nivel básico de cambio de contenido y distribución de enrutamiento de solicitudes en varios servidores.

Sin embargo, la edición Nginx Plus es mucho más que eso.

Nginx Plus es una solución de entrega de aplicaciones web todo en uno que incluye balanceo de carga, almacenamiento en caché de contenido, servidor web, WAF, monitoreo, etc. Proporciona una solución de balanceador de carga de alto rendimiento para escalar aplicaciones para atender millones de solicitudes por segundo.

Traefik

Un proxy de reserva HTTP moderno y rápido y LB creado con GO. Traefik admitir múltiples servicios de back-end Amazon ECS, Docker, Kubernetes, Rancher, etc.

Admite WebSockets, HTTP/2, renovación automática de certificados SSL con Let’s encrypt, interfaz limpia para administrar y monitorear los recursos.

intermediario

intermediario es un equilibrador de carga basado en UDP, TLS y L4 TCP minimalista pero potente y de alto rendimiento.

Funciona en múltiples plataformas como Windows, Linux, Docker, Darwin y, si está interesado, puede compilar a partir del código fuente. El equilibrio se realiza en función de los siguientes algoritmos que elija en la configuración.

  • hash de IP
  • Famoso en todo el mundo: todos contra todos
  • Ancho de banda mínimo
  • Menos conexión
  • Peso

Basado en esto punto de referenciaGo- between es más rápido que HAProxy pero no de Nginx.

Si está buscando una solución moderna de equilibrio L4 con detección automática para el entorno dinámico, entonces Go- between parece prometedor. Pruébalo para ver cómo va.

Conclusión

Espero que el software de equilibrador de carga de código abierto mencionado anteriormente le ayude a elegir uno para su aplicación. Todos son GRATUITOS, por lo que la mejor manera de encontrar lo que funciona es probándolos.

Si está buscando aprender nuevas habilidades, pruebe Udemy, donde hay miles de cursos en video disponibles.