![基于源ip(IP子网)的HAProxy负载均衡](https://linux22.com/image/610594/%E5%9F%BA%E4%BA%8E%E6%BA%90ip%EF%BC%88IP%E5%AD%90%E7%BD%91%EF%BC%89%E7%9A%84HAProxy%E8%B4%9F%E8%BD%BD%E5%9D%87%E8%A1%A1.png)
我有 x 个集群。这个集群看起来像
Cluster 1
192.168.1. (Server type 1)
192.168.2. (Server type 2)
192.168.3.1 (Server type 3) <Redis server>
Cluster 2
192.167.1. (Server type 1)
192.167.2. (Server type 2)
192.167.3.1 (Server type 3) <Redis server>
目前我正在代码中管理集群组配置。是否可以使用 haproxy 建立名为 的域,并且需要根据源 IP 进行重定向?例如
192.167.* request gets redirect to 192.167.3.1
和
192.168.* request gets redirect to 192.168.3.1
答案1
这是可能的HAProxy ACL。您需要设置 2 个后端,每个块一个,然后在前端创建 2 个 acl,每个后端一个。
你的前端块看起来像这样
acl block_7 src 192.167.0.0/16
acl block_8 src 192.168.0.0/16
use_backend block_7_hosts if block_7
use_backend block_8_hosts if block_8
然后定义后端block_7_hosts
并block_8_hosts
在其中添加正确的 redis 服务器。
如果您不打算添加更多 Redis 服务器,那么您可能只想使用配置管理工具,因为您实际上并没有进行负载平衡。