Respuestas:
La distinción entre equilibradores de carga "hardware" y "software" ya no tiene sentido. Un denominado equilibrador de carga de "hardware" es una CPU de clase PC, interfaces de red con capacidades de procesamiento de paquetes y algún software para unirlo todo. Un "equilibrador de carga de" software "realizado en un buen servidor con NIC modernas es ... lo mismo.
Lo que obtienes con ofertas comerciales de alta gama como F5 o Citrix Netscaler es:
Con los equilibradores de carga de software (de código abierto), no obtienes lo contrario, lo que obtienes depende del software que elijas y cómo lo hagas. Dicho esto, normalmente verás:
La diferenciación no está realmente en "hardware" versus "software". Está en "comprar una pila de tecnología probada como un dispositivo" versus "construirlo usted mismo". Por supuesto, hay muchas variables a considerar al tomar la decisión final (costos, conjuntos de habilidades internas, tolerancia al tiempo de inactividad, crecimiento futuro, etc.).
Los equilibradores de carga de hardware generalmente tienen un conjunto más rico de características, especialmente cuando se llega a los grandes como F5. También tiene el beneficio adicional de una mayor escalabilidad debido a la descarga de hardware.
Por otro lado, si sabe que su tráfico no será demasiado alto, los equilibradores de carga de software realmente funcionan bastante bien. Si puede hacerlo con tener una capa 4 LB, Linux LVS + Keepalived es una muy buena opción. Si necesita la potencia de un Layer 7 LB, puede probar HAProxy.
En resumen, los HW LB suelen escalar mejor que los SW LB.
¡Espero que esto ayude!
Algunas reflexiones:
Pro: la máquina en la que ejecuta el equilibrador de carga podría tener un hardware mucho más potente, por lo que sería más rápido e impondría menos latencia adicional (aunque, dependiendo de la velocidad de sus enlaces al mundo exterior, esto puede hacer poca diferencia).
Contras: un equilibrador de carga de hardware probablemente no tendrá más potencia informática de la que necesita (puede ejecutarse en un chip Atom o basado en ARM en lugar de una CPU Intel / AMD de gama alta, por ejemplo), por lo que consumirá menos energía y generará menos calor
Pro: instalar su propio arreglo de equilibrador de carga de software puede darle más flexibilidad en la configuración y actualizaciones / cambios posteriores, donde una solución de hardware puede ser mucho más que una solución cerrada de "caja negra". Sin embargo, si está comprando un servicio administrado para implementar el equilibrador de software, esto hará poca diferencia.
Contras: si no está administrando el equilibrador de software (es decir, la tarea se subcontrata o está comprando el servicio como parte de un acuerdo de alojamiento administrado más grande), puede encontrar que las tarifas administrativas para mantener la configuración significan un hardware estándar La solución sería más barata a largo plazo. Además, recuerde tener en cuenta en su tiempo los costos si usted o su empresa administrarán el equilibrador de carga.
105931 sessions per second
y aproximadamente 17% de uso de CPU - eso es bastante loco para un único procesador Xeon básico
También tendría en cuenta estos puntos:
Si la empresa tiene un departamento de TI con un especialista en redes, un Hardware LB podría ayudar a reducir la carga de mantenimiento del equipo de desarrollo.
A veces, especialmente para las grandes empresas, la adopción de un nuevo hardware que nadie sabe cómo operar implica la contratación de consultores costosos o incluso un nuevo empleo.
El equipo de desarrollo odiará una solución de hardware si planea enfatizar las características del equilibrador de carga, como por ejemplo, adoptar una implementación continua.
Aparentemente, HW LBs puede mejorar el manejo de las conexiones SSL y, por lo tanto, reducir el número total de servidores de aplicaciones necesarios: