为什么要在防火墙可以做到的时候购买一个专用的负载均衡器?

我有两台服务器,我们称之为'node1'和'node2'安装在数据中心。 他们运行我们的应用软件。 它们是可以互换的,每个都有一个所有客户数据库的完整副本。 我们希望客户能够login到一个IP地址,并且如果连接已经连接到node1,否则连接到node2。 (对于我们来说,自动故障转移比负载均衡更受关注,尽pipe将来我们也可以configuration负载均衡)。

我们的要求非常简单:我们可以提供一个用作健康检查的URL,如果在'node1'上有回应,那么所有的stream量应该优先于'node2'。

数据中心希望我们支付3000美元的专用负载平衡器设备。 但是他们也说,他们的防火墙有能力做这个自动故障转移_in_theory_,虽然他们从来没有一个客户使用该function。 我不明白为什么这样一个简单的任务需要专用硬件甚至虚拟服务器。 为什么没有一家小公司喜欢在防火墙中进行负载均衡? 成本更低,跳跃更less,复杂性更低…? 什么是我不了解LTM(本地stream量pipe理)?

如果可以将防火墙configuration为执行此基本任务,则没有任何专用负载平衡器的理由。 您遇到的是托pipe服务的专业知识。 他们这样做X,因为这是他们的资源最有效的使用。 他们可能没有专业知识,如上所述,他们肯定没有经验来设置它,更重要的是要在经济上支持它。 仅供比较,请考虑AWS ELB,平衡,健康检查和每月19美元的stream量路由。 它也做的是完全解开你的SSL。 您不必担心应用程序服务器上的SSL。

(就个人而言,如果你有两台服务器,无论如何我都会使用粘性负载平衡)。

尽pipe您已经描述过,但我认为防火墙不会提供您描述的故障转移。 通常,防火墙只能查看stream量并决定是否应该通过。 它们旨在快速分析大量stream量(每秒数十亿个以太网帧),并且可能不会超过TCP / UDP标头。 如果防火墙提供故障转移function,则可能是更原始的,只检查MAC地址或IP是否可达。 也许如果一个TCP端口是打开的。

当然,如果防火墙按照您所描述的那样工作,那么它不是一个纯粹的防火墙,并且可能会有性能影响。 它是做NAT还是充当路由网关,还是仅仅是一个桥梁? 你根本没有提到性能,所以如果你不担心,你的防火墙可以进行故障转移,当然,为什么当你的需求被免费满足时花费3000美元呢?

如果你发现这个防火墙不能按你的意愿进行故障转移,那么你可能会考虑引入一个网关或网桥,但是你需要为此付钱。 (如果需要性能,可以在专用负载均衡器上花费$ 3000)。您可以像JayMcTee在评论中所build议的那样,使用haproxy来引入一台机器。 但是,如果这个额外的机器失败呢? 防火墙已经是一个单点故障,你真的想引入另一个? 基于DNS的故障转移,如Route 53(JayMcTee再次提示)将有助于消除额外的单点故障,但是在故障转移中会有一个[可configuration的]延迟。

真的需要更多的信息来做出正确的select。