linux – 最具弹性的(私有)DNS集群形式?

我正在开发一个由MAN(桥接)链接的两个数据中心的设置,它们之间的所有内容都加倍,在RedHat Cluster,DRBD以及那些东西的故障转移模式下.

我为每个位置都有一个DNS服务器,但事实证明在/etc/resolv.conf中同时使用它并没有多大帮助;如果一个人失败,客户等待大约10s左右的时间.换句话说,它使用它们进行负载平衡,而不是故障转移.所以我将两台服务器配置为使用带有ucarp(≈VRRP)的VIP.

有没有办法让我的两个DNS服务器都启动,例如,始终响应相同的IP?如果一个NS resquest获得两个答案,那没什么大不了的.

有没有办法用Anycast / Multicast等来做到这一点?

编辑:结果任播在我的场景中不会对我有任何好处,我只有静态路由,而且大多数流量实际上是通过桥接器.

有趣的是,如果可能的话,有两个DNS服务器应答同一IP上的请求.

解决方法

Anycast DNS允许您在所有客户端配置一个解析器IP;客户端请求将被转发到“最近”(从网络路由角度)服务器.

如果您将任播VIP的广告绑定到健康检查(例如,请求知道域的A记录),那么如果您的某个服务器失败,其路由将被撤销.重新收到网络后,所有请求都将转发到其他设备,无需任何手动重新配置.

在实施方面,这可以通过使用硬件设备(例如F5 Big IP,Citrix netscaler)或通过您自己的配置来完成.您可以运行在DNS服务器上运行的路由守护程序(例如Quagga),也可以使用一些登录路由器的自定义脚本来更改每个任播VIP的状态.

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...