小编use*_*921的帖子

跨不同数据中心的多个 VPS 集的负载平衡/故障转移

我知道已经问过这个问题的许多变体,但我仍然找不到满足我需求的好答案。

我想要做的是设置几个(至少 2 个)VPS来托管我的网络应用程序。我想提供一些负载平衡(使用 Varnish 很容易实现)和相对较高的可用性 - 这是我的问题。

使用负载平衡器(我需要在其中一个 VPS 上托管)会引入单点故障,这几乎与只有一台机器来提供内容一样糟糕。

http://i.stack.imgur.com/lFafj.png

而且 AFAIK DNS 循环方法不仅是负载平衡的坏主意,而且不提供故障转移机制。如果其中一台服务器出现故障,一些人(使用缓存的 DNS IP)仍会尝试连接到不可用的服务器。忘记短 TTL - 这不是正确的解决方案。

http://i.stack.imgur.com/mTLRf.png

需要考虑的一件非常重要的事情:我希望将我的VPS 划分到多个数据中心,这样如果一个数据中心的电力或 ISP 出现故障,网站就不会关闭。

我能想到的唯一 2 个解决方案是依赖 dns 循环(如果服务器出现故障,至少将内容提供给一定比例的用户直到恢复),或者在数据中心购买专用服务器,为停电​​做好准备并配备有几个互联网连接(与租用甚至 10 个 VPS 相比,这是非常昂贵的)。

所以问题是:在拥有多个负载平衡 VPS 时避免单点故障的正确方法什么?

请原谅图片。它们只是我的意思的基本示例。

domain-name-system vps high-availability load-balancing round-robin

5
推荐指数
1
解决办法
3244
查看次数