如何将一台 HAProxy 服务器用于多个域

How to use one HAProxy server for multiple domain

我有以下情况:

我有两个域,比如说域 D1 和域 D2

我拥有的机器:

用于负载平衡器(HA 代理)的机器 M1LB

机器 D1M1 & D1M2, 用于应用程序 1

机器 D2M1 & D2M2, 用于应用程序 2

域 D1 的流量应该在 D1M1D1M2 具有负载平衡器 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