如何将一台 HAProxy 服务器用于多个域
How to use one HAProxy server for multiple domain
我有以下情况:
我有两个域,比如说域 D1 和域 D2
我拥有的机器:
用于负载平衡器(HA 代理)的机器 M1LB
机器 D1M1 & D1M2, 用于应用程序 1
机器 D2M1 & D2M2, 用于应用程序 2
域 D1 的流量应该在 D1M1 和 D1M2 具有负载平衡器 M1LB 的机器上继续, 同样对于域 D2 应该继续 D2M1 & D2M2 机器.
现在,仅在一台机器的帮助下配置负载均衡器的最佳方法是什么?
定义两个后端,并在前端按域路由,如下所示:
frontend http-in
bind *:80
acl host_d1 hdr(host) -i d1.com
acl host_d2 hdr(host) -i d2.com
use_backend be_d1 if host_d1
use_backend be_d2 if host_d2
backend be_d1
server D1M1 10.0.0.1:8080
server D1M2 10.0.0.2:8080
backend be_d2
server D2M1 10.0.0.1:8080
server D2M2 10.0.0.2:8080
我有以下情况:
我有两个域,比如说域 D1 和域 D2
我拥有的机器:
用于负载平衡器(HA 代理)的机器 M1LB
机器 D1M1 & D1M2, 用于应用程序 1
机器 D2M1 & D2M2, 用于应用程序 2
域 D1 的流量应该在 D1M1 和 D1M2 具有负载平衡器 M1LB 的机器上继续, 同样对于域 D2 应该继续 D2M1 & D2M2 机器.
现在,仅在一台机器的帮助下配置负载均衡器的最佳方法是什么?
定义两个后端,并在前端按域路由,如下所示:
frontend http-in
bind *:80
acl host_d1 hdr(host) -i d1.com
acl host_d2 hdr(host) -i d2.com
use_backend be_d1 if host_d1
use_backend be_d2 if host_d2
backend be_d1
server D1M1 10.0.0.1:8080
server D1M2 10.0.0.2:8080
backend be_d2
server D2M1 10.0.0.1:8080
server D2M2 10.0.0.2:8080