Active - 主动应用服务器负载平衡策略

Active - 主动应用服务器负载平衡策略

有一个跨 6 台服务器运行的 tomcat web 应用程序。

在我们的主站点中有 3 个,在 DR 站点中有 3 个

我们的网络团队设置了 2 组负载均衡

第一层是站点级别,在主站点和灾难恢复站点之间按 50/50 的比例分配流量

第二层位于每个站点,用于将流量分配至该站点的 3 台服务器中的每一台。

我发现发生的问题是站点中的 3 台服务器中有 2 台出现故障,而一台服务器现在要处理我们总流量的 50%。

删除第一层并仅在单个负载均衡器上运行所有 6 台服务器是否更有意义?

服务器之间没有共享会话或用户数据,如果用户所在的服务器出现故障,他们需要注销并重新登录。

负载平衡也仅用于登录,此后的所有其他操作都严格是客户端与服务器的直接通信。

答案1

它增加了另一层冗余,这很可能是您的网络团队的想法(尽管我建议询问他们!)。

如果您仅依赖一个负载平衡器,而它不可用(设备故障或 DC 网络/电源中断),那么您就没有应急措施。使用您当前的配置,如果必须,您可以(大概)将您的 DNS 记录重新指向特定站点,并且仍然在 3 台服务器上平衡流量负载。我猜想,每个站点中的热备用负载平衡器都可以做类似的事情,这些负载平衡器在正常情况下不使用(但未使用的网络硬件让我感到不安;当您按下“开启”按钮时,它会正常工作吗?)。

另一方面是方法用于负载平衡。如果您选择使用 1 个负载平衡器来连接 2 个不同的站点,则更有可能需要负载平衡器充当代理,因为您将无法执行其他形式的网络欺骗,例如 MAC 交换/直接路由。更多信息请见:http://www.linuxvirtualserver.org/VS-DRouting.html,速度非常快。代理的另一个缺点是,您通常需要返回流量通过它,而在 DR 场景中,服务器可以直接回复客户端,这意味着瓶颈更少;有时您可以通过这种方式更好地利用带宽并减少延迟(显然取决于架构的其余部分)。因此,值得考虑当前在设置的两个层级上使用的方法。

相关内容