目前有完全满足这样功能需求的 DNS 服务么?

2014-05-08 22:06:02 +08:00
 Livid
定义一个 A RECORD,这个 A RECORD 后面对应 N 个 IP,然后每 30 秒去探测一次这些 IP,如果连续 3 次探测失败,就把这个 IP 标识为不可用,如果连续 2 次探测成功,就把一个之前标识为不可用的 IP 标识为可用。解析的时候返回当前可用的 IP。

如果这个 A RECORD 后面对应的全部 IP 都 down,就把这个 A RECORD 指向到另外一个 CNAME 或者 IP。
10492 次点击
所在节点    DNS
25 条回复
likexian
2014-05-08 22:08:06 +08:00
dnspod d监控
SnD6CeI1
2014-05-08 22:10:57 +08:00
这么复杂,肯定不能广泛用,DNSPOD的时间间隔很长。建议自己搞吧。
FarBox
2014-05-08 22:11:39 +08:00
如果只是这个功能,自己写一个,也是挺容易的事情。

我们有类似的机制,但是更复杂一些,是N个IP主机自己会心跳。
Livid
2014-05-08 22:15:33 +08:00
@likexian 我去看了这个页面:

https://support.dnspod.cn/Kb/showarticle/tsid/16/

还是有一些疑问,还请大神解答。具体的应用场景是这样的:

假设在美国西海岸有两个数据中心,每个数据中心有 6 台机器。

www.example.com 默认情况下 CNAME 指向到 sjc.example.com

sjc.example.com 背后是 sjc 数据中心的 6 个 IP,我希望解析结果中只包含这个数据中心中还活着的 IP。如果 6 个全挂了,sjc.example.com 就 CNAME 到 lax.example.com

备份点 lax.example.com 背后也是 6 个 IP,平时解析时返回的是 lax 里还活着的,如果 6 个全挂了,lax.example.com 就 CNAME 到 sjc.example.com

因为 sjc/lax 同时挂的可能性不大,所以这样基本上可以尽量满足 SLA。

目前在海外有这样的产品存在么?如果用中国的监控点的话,我担心由于中美之间网络的天然不靠谱造成很多不必要的切换。
halfbloodrock
2014-05-08 22:16:21 +08:00
这个看起来像一个负载均衡的机制。
FarBox
2014-05-08 22:25:07 +08:00
@Livid check the email.
likexian
2014-05-08 22:56:01 +08:00
@Livid dnspod可以做到只返回可用的ip,在所有设置的ip都不可用了也可以自动切换到指定的a或cname(同样会检查是否可用),不过现在只有国内版有监控,国外版还没有上,不过已经是计划中的了
likexian
2014-05-08 22:57:57 +08:00
@Livid 考虑你的需求,自己写个监控吧,然后调用dns提供商的接口完成切换,也不是很麻烦的
xoxo
2014-05-08 22:58:50 +08:00
Webluker(ChinaCache旗下)有这个功能. 不怕得罪楼上, DNSPOD的功能有限
vvoody
2014-05-08 23:33:37 +08:00
BigIP的GTM就可以这样,不过不知道有没有好的开源方案,这里有个讨论:
http://serverfault.com/questions/294496/how-does-f5-gtm-work
jerry74
2014-05-08 23:50:56 +08:00
弄個Global Server Load Balance??
ritksm
2014-05-09 00:03:32 +08:00
一下就想到Zookeeper...
adieu
2014-05-09 09:28:52 +08:00
可以用skydns https://github.com/skynetservices/skydns + 定制化health checker来实现。

在health checker定期扫描所有ip,然后更新对应记录的ttl。

有一个skydns和docker集成的项目,skydock https://github.com/crosbymichael/skydock 用了类似的实现,可以参考。
Livid
2016-09-01 20:16:56 +08:00
qcloud
2016-09-01 20:20:54 +08:00
@Livid 可怕,几年前的帖子突然上了首页....
adfsadfssfd
2016-09-01 20:26:08 +08:00
gslb...
anjunecha
2016-09-01 21:25:35 +08:00
我用的是 NSONE , 觉得比 Route53 的 failover 功能好用一些, 使用 Failter Chain 实现 automatic failover 的功能, NSONE 相比 Route53 可以使用更多的 monitoring services ,使用 failback 功能可以实现在 primary 记录可用之后自动切到 primary 记录

https://ns1.com/articles/automated-failover
est
2016-09-01 22:21:12 +08:00
2014 年的帖子。。。
kn007
2016-09-01 22:53:13 +08:00
mark
panzhc
2016-09-01 23:49:45 +08:00
不明白为什么不用负载均衡? DNS 有缓存。 dnspod 有 API ,撸一个挺方便的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/111682

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX