是否可以将 haproxy 配置为使用多个本地接口上的循环机制对外部/第三方 API 的请求进行负载平衡?

是否可以将 haproxy 配置为使用多个本地接口上的循环机制对外部/第三方 API 的请求进行负载平衡?

我有一台带有 N 个网络接口的服务器,每个本地地址都通过不同的外部 IP 地址路由。我想设置 haproxy,以便我们的应用程序可以使用网络接口作为循环池来发出 http 请求。我们这样做是因为我们使用的第三方 API 具有基于 IP 的限制,而扩展我们的公共地址池有助于我们发出更多请求(同时遵守其规则)。

这可能吗?谢谢你的帮助。

答案1

我不确定我是否正确理解了这个用例,但如果您需要 haproxy 监听所有接口,这是可能的。只需将其绑定到您需要的每个 IP 上或将其绑定到所有接口 (0.0.0.0)。

IE。

listen haproxy_frontend
   bind *:8080

   balance roundrobin

   server server1 server1.localdomain check
   server server2 server2.localdomain check

如果用例是在这些本地接口之间循环请求,那么您需要将您的应用程序绑定到服务器上的每个接口,并将这些地址添加到 haproxy 配置中。

IE。

   listen haproxy_frontend
     bind 192.168.50.81:8080

     balance roundrobin

     server local1 192.168.60.81:8081 check
     server local2 192.168.70.81:8081 check
     server local3 192.168.80.81:8081 check 

相关内容