configuration - prioridad - fortigate 2 enlaces de internet
HAProxy: enrutamiento basado en URL con equilibrio de carga (1)
Puede segregar las solicitudes según la URL y el saldo de carga con un solo servidor HAProxy. Tu configuración tendrá algo como esto:
frontend http
acl app1 path_end -i /app1/123 #matches path ending with "/app/123"
acl app2 path_end -i /app2/123
acl app3 path_end -i /app3/123
use_backend srvs_app1 if app1
use_backend srvs_app2 if app2
use_backend srvs_app3 if app3
backend srvs_app1 #backend that lists your servers. Use a balancing algorithm as per your need.
balance roundrobin
server host1 REGION1_HOST_FOR_APP1:PORT
server host2 REGION2_HOST_FOR_APP1:PORT
backend srvs_app2
balance roundrobin
server host1 REGION1_HOST_FOR_APP2:PORT
server host2 REGION2_HOST_FOR_APP2:PORT
backend srvs_app3
balance roundrobin
server host1 REGION1_HOST_FOR_APP3:PORT
server host2 REGION2_HOST_FOR_APP3:PORT
Más información se puede encontrar en la homepage .
Soy nuevo en HAProxy y tengo una pregunta sobre la configuración de HAProxy que me ayuda a tomar una decisión clave al tomar el enfoque correcto. Esto me ayudará mucho a decidir la arquitectura.
Tengo 3 aplicaciones. Digamos app1
, app2
, app3
.
Cada aplicación se diferencia por las URL de la siguiente manera:
www.example.com/app1/123 -> app1
www.example.com/app2/123 -> app2
www.example.com/app3/123 -> app3
Estoy planeando tener 2 instancias de cada aplicación en 2 regiones diferentes:
Region 1 - app1, app2, app3
Region 2 - app1, app2, app3
Veo 2 métodos para configurar esto, pero no estoy seguro de cuál es la mejor práctica aquí:
Método 1 : Tenga HAProxy1 para diferenciar primero las solicitudes usando los patrones de url. Las solicitudes de HAProxy1 se enrutarán a otro servidor HAProxy que configura aplicaciones individuales (3 servidores HAProxy en este caso) para el equilibrio de carga.
Método 2 : Tenga un gran servidor HAProxy que haga las dos cosas como se indica en el método 1. Es decir, tenga la configuración para segregar las solicitudes según la url y luego pasar cada solicitud a través de un filtro individual como las cosas configuradas para cada aplicación para el equilibrio de carga.
No estoy seguro si el Método 2 es compatible con haproxy. Cualquier idea o sugerencia es muy apreciada. Por favor pon un poco de luz.