如果我使用 haproxy 作为唯一可公开访问的服务器,其工作是将请求路由到我们的后端服务器,那么所有数据都会流经 haproxy 服务器吗?
如果我们有 50 台服务器和一台 haproxy 服务器,那么我们前端 haproxy 服务器上实际的 1 GB 端口是不够的。
如果情况确实如此(我相信确实如此),我们还有什么选择?
我相信我读过一些关于动态 DNS 的内容,这是一个潜在的解决方案吗?因此,客户端仍然通过单个 IP 地址(映射到我们的域名)联系我们,但是一旦它进入我们的本地网络,动态 DNS 就会将请求轮询(或更智能的方式)发送到一组 haproxy 服务器。
答案1
通常情况下是的。Haproxy 将接收所有请求并将其转发到适当的后端服务器,然后接收响应并将其转发回客户端。
您可以使用您描述的 DNS 选项,但您需要有多个与域名关联的 IP 地址。每个 IP 将被分配/转发到一个 haproxy 实例。
答案2
DNS 轮询很简单,只要域名有多个 A 记录就可以了。但这意味着多个公共 IP 地址。
由于所有流量都经过您当前的 HAProxy,并且 1G 对您来说不够,所以 10G 才是解决方案。
或者,如果您负担不起许多公共 IP,可以结合这些解决方案。使用多个 HAProxies 并对其进行 DNS 轮询。