首页 > 解决方案 > 如何将一个 HAProxy 服务器用于多个域

问题描述

我有下面提到的场景:

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

我拥有的机器:

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

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

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

域 D1 的流量应该通过负载均衡器M1LB在D1M1D1M2机器上进行,同样,对于域 D2 应该在D2M1D2M2机器上进行。

现在,仅在一台机器的帮助下配置负载均衡器的最佳方法是什么?

标签: load-balancinghaproxy

解决方案


定义两个后端,并在前端按域路由,如下所示:

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 

推荐阅读