我正在为我的网站设置负载平衡,并偶然发现了这篇关于 stackoverflow 基础设施的帖子
https://nickcraver.com/blog/2016/02/17/stack-overflow-the-architecture-2016-edition/
似乎我需要 2 个负载平衡服务器,以防其中一个出现故障,但是在域/DNS 端如何配置?
如果域的 A 记录指向负载均衡器 1 的 IP,流量如何到达负载均衡器 2?还是我遗漏了什么?
答案1
两个负载均衡器各自都有自己的 IP 地址。此外,您还可以使用诸如 keepalived (VRRP) 或 *BSD 变体 CARP 之类的东西,让负载均衡器就虚拟 IP 达成一致,任何时候都允许其中一个负载均衡器监听该虚拟 IP(另一个负载均衡器充当备份)。这个虚拟 IP 地址就是您在 DNS 中指向的地址。
这样,您的一个 LB 节点可以关闭,如果一切正常运行,流量几乎会立即开始流过另一个节点。
根据您的服务方式,您可能需要在负载均衡器之间同步会话信息,或者您可能只是同意客户端在发生故障转移时通过其他 LB 建立新会话。