正确的。
我正在研究建立这样的系统:
/ [负载平衡器] \ /\/\/\/\/\/\/\ [LAN1] - ----- | 服务器池 | \ [负载均衡器] / \/\/\/\/\/\/\/ | [多余的 ] [负载均衡器]
在此设置中,将有负载平衡器的主动-主动配置(以确保没有单点故障)和池中可变数量的 Web 服务器。服务器可以随时设置和运行(通过网络启动),因此 Balancer 应该能够将这些服务器添加到后端而无需重新启动服务。如您所知,我很清楚问题出在哪里,但我不确定如何实施。我想知道:
1) 在这种情况下,哪种负载均衡器最适合?到目前为止,我研究过的是 HAProxy、Linux Virtual Server、Ultramonkey 和 XR crossroads。LVS 可以通过 ipvsadm 支持在不重启的情况下添加和删除服务器,而 crossroads 有一种(尽管是 hacky)方法来支持它。我没有在 HAProxy 上找到任何关于此的注释,所以我不知道这是否可能。
1b) 是否有针对特定 LB 的“最佳”操作系统?显然将需要 Linux,但是是否有最适合它的风格?
2) 是否真的可以设置主动-主动配置?我见过很多人说他们已经做到了,但没有说明如何去做。
3) 将每个平衡器连接到自己的服务器池(即不同的接口和物理 LAN)会更好吗?这会有所作为吗?
接受任何想法/技巧/刺激大脑。我读了很多书,很难知道什么是/不值得研究的。
您如何将请求分配给主动-主动负载平衡器?
您需要一些虚拟地址技术,如 windows-NLB 或CARP,或网络设备实现,如 Cisco content-switching-module
对于大多数情况,我更喜欢具有积极监控的主备系统,并将负载平衡系统视为“核心共享基础设施”。
虽然在特定情况下当然可以使用网络负载平衡和虚拟 IP 寻址解决方案,但我发现有很多不兼容性,因此我不喜欢在我无法控制可能部署的内容的“通用”网络上使用它,(因此不知道会出现什么不兼容)
如果你对网络有完全的控制权,那肯定是 NLB/LVS 的乐趣吧!