![如果服务器 1 发生故障,我该如何重定向绑定到另一台主机?](https://linux22.com/image/1416706/%E5%A6%82%E6%9E%9C%E6%9C%8D%E5%8A%A1%E5%99%A8%201%20%E5%8F%91%E7%94%9F%E6%95%85%E9%9A%9C%EF%BC%8C%E6%88%91%E8%AF%A5%E5%A6%82%E4%BD%95%E9%87%8D%E5%AE%9A%E5%90%91%E7%BB%91%E5%AE%9A%E5%88%B0%E5%8F%A6%E4%B8%80%E5%8F%B0%E4%B8%BB%E6%9C%BA%EF%BC%9F.png)
我有两台提供相同服务的服务器,因此
server 1 xxx.myhost.com A record ip 1.1.1.1
server 2 xx2.myhost.com CNAME record to otherhost.com
服务器 1 是主服务器,因此,我将此主机 (xxx.myhost.com) 提供给我的客户以获取访问权限。服务器 2 是支持服务器,以防服务器 1 无法正常工作。
我想知道:假设服务器 1 由于某种原因发生故障,我应该如何配置绑定以重定向到服务器 2?
所以图形上我的客户端调用xxx.myhost.com ----它已关闭---因此绑定自动重定向到----xx2.myhost.com。
当然,我的客户不知道服务器 2,而且他们也不需要知道......
它就像 MX 服务器...只有 A 和 CNAME 记录....
对不起,我的英语不好。
答案1
你正在寻找的是故障转移. 这实际上是在 ServerFault 上更详细地介绍了技术内容。但简而言之,Bind 没有原生的功能。
你可以使用DDNS 和区域更新来实现这一点,但这需要相当多的额外配置。
我想你也可以设置一个自定义脚本来监控服务器并在服务器宕机时推送区域更新。但同样,那里有相当多的自定义配置。而且它会受到第一个链接中提到的相同问题的影响 - 即 DNS 缓存。
正如 Rex 在第一个链接中所说,一些 DNS 提供商(例如 Route53(我曾亲自使用过))已集成故障转移功能。这可能是最“明智”的实现。
一个更奇特的选择是将 DNS 设置为指向“网关”服务器,该服务器具有指向“首选”服务器的静态路由。某种类型的守护进程可以检查服务器是否处于活动状态并根据需要更改路由。这不会有 DNS 延迟,但 - 再次 - 这是一个非常自定义的设置。
链接: