如何使用 DNS 服务器为我的网站创建简单的 HA(高可用性)?

如何使用 DNS 服务器为我的网站创建简单的 HA(高可用性)?

欢迎,

如何使用 DNS 服务器创建网站的简单 HA(高可用性)?

例如,如果我的网络服务器(为了更好地理解,我使用内部 IP,但实际上它将是其他托管公司)

192.168.0.120 :80(处于离线状态)流量转至 192.168.0.130 :80


你说得对,我用了不好的词“高可用性”,当然我考虑的是故障转移。

在 A 记录中使用少量 IP 有利于简单的负载平衡。但如果我想通知用户有关故障(例如显示页面,哎呀,没有我们的服务器,出了点问题,我们正在处理),而不是“无法建立连接”,那就不行了。

我正在考虑建立这样的机制

2 个 DNS 服务器,一个安装在 www 服务器上

两者都具有较低的 TTL

在我的域名上,首先为我的 apache 服务器的 DNS 设置 2 个 ns 记录,然后是其他 dns

如果用户尝试连接,他将使用第一个 DNS 获取 www 服务器的 IP,如果该 DNS 处于离线状态(可能 www 服务器也已关闭),那么它将尝试第二个 NS 记录,该记录将指向另一个 DNS,该 DNS 将指向“备份”页面。

这正是我想做的。

如果您有其他想法,请分享。

反向代理不是选项,因为服务器的 IP 可以改变,或者我可以使用其他国家进行备份。

答案1

DNS 是不是高可用性故障转移解决方案

无论您的 DNS 记录上的 TTL 如何,许多客户端都会缓存您网站的 IP 地址,并且在您更改它时将无法正确进行故障转移。

有关更全面的答案,请参阅这个问题

答案2

你可以使用反向代理

答案3

您不能仅使用 DNS 来实现这一点。您还需要某种东西来监控站点,并在一个站点发生故障(而另一个站点仍然有效)时在它们之间切换记录。有许多商业服务可以为您做到这一点(我知道 DynDNS 以他们的 Dynect 品牌提供这种服务),或者如果您管理自己的 DNS,您可以整合一些脚本或工具来做到这一点,但这并不像听起来那么简单。

相关内容