4

我们有一些为 Web、FTP 和电子邮件服务配置的 Fedora 系统。我们希望镜像这些服务,以便我们可以为我们的用户提供接近 100% 的可靠性。我是一位相当有经验的 Linux 管理员,但对冗余系统没有太多经验。

做这个的最好方式是什么?谷歌和亚马逊是如何做到的?Google.com 解析为多个 IP 地址,但如果我的本地桌面缓存了其中一个无法访问的 IP,我将收到一条连接失败消息。他们如何防止这种情况发生?

如果他们的一台服务器出现故障,它如何自动重定向到另一个系统,而最终用户却不知道呢?

我知道有故障转移设备,但它们仅用于故障转移系统本身,而不是完整的网络。

假设我们有最坏的情况,比如我的主系统变得无法访问。Linux 系统上用于提供此功能的基本组件是什么?

我正在寻找概念或方法,而不是“查看 openstack”之类的答案。构成解决方案的实际部分是什么?必须做些什么来实现这种能力?

4

1 回答 1

2

Google 或 Amazon 发布的 IP 地址实际上并不是他们的服务器,而是负载均衡器。负载均衡器将传入的客户端连接动态转发到实际服务器,单个 IP 地址后面可能有成百上千的连接。

您可能会问,如果负载均衡器本身出现故障怎么办?好吧,它们通常以集群方式工作 - 至少 2 个,并且都共享相同的虚拟 IP 地址。如果其中一个出现故障,虚拟 IP 似乎仍在工作,因为此负载均衡器集群的另一个成员仍在为该请求提供服务。

如果集群负载均衡器仍然出现故障,它们会自动更改其 DNS,以便不再将这个虚拟 IP 通告给 DNS 客户端。为了加快速度,这些 IP 上的典型 TTL 设置得相当低,几分钟或更短(对于 google.com,它是 5 分钟)。

当然,现实比这复杂一点,但它应该给你一个粗略的想法。

于 2012-11-19T03:13:26.970 回答