Haproxy instalación configuración ajuste básico tutorial

  
 

HAProxy proporciona alta disponibilidad, balanceo de carga y proxy para aplicaciones TCP y HTTP, y admite hosts virtuales, una solución gratuita, rápida y confiable. Según los datos oficiales, su límite más alto es compatible con la concurrencia de 10G. HAProxy es especialmente útil para aquellos sitios web altamente cargados que normalmente requieren persistencia de sesión o siete capas de procesamiento. HAProxy se ejecuta en el hardware actual y puede admitir decenas de miles de conexiones simultáneas. Y su modo de operación hace que sea fácil de integrar en su arquitectura actual, al tiempo que protege su servidor web de la exposición a la red.

Es compatible con el cambio de red de la Capa 4 a la Capa 7, es decir, cubre todos los protocolos TCP. Es decir, Haproxy incluso soporta la carga equilibrada de Mysql. . Si se dice que la carga balanceada WEB se puede implementar en el modo proxy inverso proxy, hay muchos de estos productos. Incluyendo Nginx, ApacheProxy, lighttpd, Cheroke, etc. Pero para ser claros, Haproxy no es un servidor Http. Todos los productos mencionados anteriormente con una carga de ecualización de proxy inversa son todos los servidores WEB. En pocas palabras, pueden proporcionar transferencias y procesamiento de archivos estáticos (html, jpg, gif ..) o dinámicos (php, cgi ..). Haproxy es solo, y específicamente, un proxy de aplicación para equilibrar cargas. No proporciona servicios de http por sí mismo.

Pero es fácil de configurar, tiene una muy buena función de comprobación del estado del servidor y una página especial de monitoreo del estado del sistema. Cuando el servidor backend del proxy falla, HAProxy eliminará automáticamente el servidor. Una vez que se haya recuperado la falla, El servidor se agrega automáticamente. Desde la versión 1.3, frontend, backend, frontend se han introducido para que coincidan con las reglas basadas en el contenido de cualquier encabezado de solicitud HTTP, y luego la solicitud se dirige al backend correspondiente.

Además, la versión 1.3 es una versión de desarrollo activa que admite las siguientes funciones nuevas:

l Intercambio de contenido: puede seleccionar un grupo de servidores en función de cualquier parte de la solicitud, como El URI solicitado, el encabezado del Host, la cookie y cualquier otra cosa. Por supuesto, hay más requisitos para esta característica para sitios separados estáticamente.

l Proxy totalmente transparente: puede usar la dirección IP del cliente o cualquier otra dirección para conectarse al servidor backend. Esta función solo se puede usar después de aplicar el parche cctproxy al kernel de Linux 2.4 /2.6. Es posible que un servidor particular maneje parte del tráfico sin modificar la dirección del servidor.

l Programador más rápido basado en árbol: las versiones superiores a 1.2.16 requieren que todos los tiempos de espera se configuren en el mismo valor para admitir decenas de miles de conexiones de velocidad completa. Esta función se ha portado a 1.2.17 .

l Empalme de TCP del kernel: evita la copia de datos de kernel a usuario y luego de usuario a kernel, lo que aumenta el rendimiento y reduce el uso de la CPU. Haproxy 1.3 es compatible con Linux L7SW para cumplir con Gbps en hardware comercial La necesidad de rendimiento.

l Rechazo de la conexión: debido a que la sobrecarga de mantener la apertura de una conexión es muy baja, a veces necesitamos limitar los gusanos de ataque, lo que significa limitar la apertura de la conexión para limitar su daño. Esto se ha desarrollado para un sitio que está atascado en un pequeño ataque DDoS y ha guardado muchos sitios.

l Encabezado sutil: simplifica la escritura de reglas basadas en encabezados y maneja ciertas partes del URI.

l Procesamiento de encabezado rápido y confiable: se requieren menos de 2 ms para analizar e indexar todas las solicitudes generales utilizando una verificación de integridad compatible con RFC2616.

l Diseño modular: Permitir que más personas se unan a este proyecto, la depuración también es muy simple. Poller se ha separado, ha hecho su desarrollo mucho más fácil. HTTP se ha separado del TCP, así que agregue nuevo La función de siete capas se vuelve muy simple. Otros subsistemas también se modularizarán muy rápidamente.

l Procesamiento de E /S especulativo: intente leer los datos de un socket antes de que esté listo. El encuestador solo especula cuáles pueden estar listos y no, trate de adivinar, y si tiene éxito, se pueden guardar algunas costosas llamadas al sistema. Estas llamadas al sistema se llaman si fallan. El uso conocido de Linux epoll () ha sido un aumento neto de al menos el 10%.

l ACL: use cualquier combinación de reglas arbitrarias como condición de ejecución de una acción.

l TCP protocol check: Combine ACL para verificar cualquier parte de la solicitud y luego reenvíela. Esto permite que se realice la verificación del protocolo en lugar del reenvío ciego. Por ejemplo, permitir SSL pero rechazar SSH.

l Más algoritmos de equilibrio de carga: ahora, Dynamic Round Robin, Hash de origen ponderado, Hash de URL ponderado y Hash de parámetro ponderado ) ha sido implementado. Otros algoritmos, como el Tiempo de respuesta medido ponderado, también se implementarán pronto.

Haproxy tiene el mejor rendimiento para una carga equilibrada solo, superando a Nginx. Sustituir Haproxy por la función de carga equilibrada que viene con Nginx le dará un descuento. La capacidad de Haproxy para equilibrar la carga es mucho más madura que Nginx, como el pegado de sesión, el arranque de cookies, etc., que nginx no tiene.

Copyright © Conocimiento de Windows All Rights Reserved