我最近一直在考虑为我们的环境获得一些新的负载均衡器,因为我们预计在未来的12个月内,我们的客户群会增加一倍。
目前,我们有400个公共IPS服务于Coyote Point Balancers上的800个集群(由于端口2个集群/ IP),并向3个Web服务器分发连接,每个服务器每天发送大约6GBytes,2Gbytes。 如果我们加倍,这将是大约800个IP,可能是1600个集群,每个集群大概有6个服务器(总共9600个使用Barracuda术语的所谓的“真实服务器”)。
由于集群数量众多,我所看到的大多数解决scheme(Coyote,Barracuda,Loadbalancer.org)似乎都不确定他们是否能够处理我们计划的增长,主要是由于在服务器上执行的健康检查。当你想到它时总是有意义的。
因此,loadbalancer.org上的优秀人士build议我们可以更好地将400-800个公共IP(我们需要SSL电子商务解决scheme)卸载到前向路由器。 从这一点开始,路由器可以做一些修改,将EXT_IP:443路由到INT_IP:INT_PORT,从而使我们能够将负载均衡器configuration减less到1或2个集群,从而解决健康检查问题。
这个想法对大家有意义吗? 或者你会有其他的build议吗?
其次,你会推荐什么路由器来做这样的事情? 我会看看内置了某种forms的故障转移机制的东西。
在一个完全不相关的说明中,我必须承认,我对来自loadbalancer.org的回复非常满意。 他们对我的调查的反应是惊人的有帮助的(也就是说,我并不觉得自己像是在推销某个销售人员)。 (不,我不为他们工作, 可悲的是他们也不给我免费的装备)。
我用vyatta做了几乎相同的事情。
我也使用pfsense做了同样的事情 – 但是由于支持的原因,vyatta可能会更成熟一些。
与其他选项相比,成本非常低…下午我了解详情
我build议使用思科ACE / ASA,Foundry(现在的博科)ServerIron和Zeus ZXTM(它们是昂贵的,但该死的速度和能力。
所有这些都可以做你所需要的,但没有一个是免费的。
我已经有了一些类似的设置,我在F5 BigIP盒子上定义了大部分IP地址/ 22块,在每台后端机器上都有一对一的外部IP映射到内部端口号。
在我的情况下,端口都是同一个Apache实例的一部分 – 我只定义了基本端口的健康检查。 如果它没有启动,其他的都不会,所以它会使整个后端节点失败。
你可以使用前面描述的路由器来完成这个NAT工作,但是你仍然需要为每个中间主机定义集群:端口组合 – 在客户端支持SNI的当前状态,当你需要SSL证书映射到一个端口。 通常情况下,端口是443,所以你做每IP站点,但与路由器/ LB的中间层,你可以自由地移动端口周围,你仍然需要有几百个。
我们使用Vyatta(作为BGP路由器)和pfSense(防火墙/ NAT / VPN),并从下周开始loadbalancer.org设备(负载平衡)。 🙂
这里的问题不是你需要一个高度可用的系统,对数千个IP和SSL证书进行故障转移吗? Vyatta和pfSense(等)只是做端口转发,但是你也需要应用SSL“传输” – 不是吗? 如果Coyote / Loadbalancer.org / etc无法做到这一点,你可能需要为更昂贵的供应商(假设他们可以……)或(更好的)“build立自己的”之一分出大量的钱。
使用keepalived在less数几个方框之间来回移动IP,然后例如nginx作为SSL代理工作,将请求转发回负载均衡器(在任何适当的端口上)。 它甚至可以设置/强制某些标题,所以也许你的负载平衡器configuration可以保持非常简单,你只是检查你的后端的头。