那些区域传输包含了内部和外部域大年夜它们响应的威望办事器进行的传输。正如你可能会猜想像 github.com 如许的区域是外部的,像 github.net 如许的区域平日是内部的。它们之间的差别仅在于我们应用的类型和存储在个中的数据。懂得哪些区域是内部和外部的,为我们在设备中供给了一些灵活性。
- $ dig +short github.com
- 192.30.253.112
- 192.30.253.113
公共区域zone被同步到外部 DNS 供给商,并且是 GitHub 用户天天应用的 DNS 记录。别的,公共区域在我们的收集中是完全可解析的,而不须要与我们的外部供给商进行通信。这意味着须要萌芽 api.github.com 的任何办事都可以如许做,而无需依附外部收集连接。我们还应用了 Unbound 的 stub-first 配制揭捉?项,它给了我们第二次萌芽的机会,如不雅我们的内部 DNS 办事因为某些原因在外部萌芽掉败,则可以进行第二次查找。
- $ dig +short time.github.net
- 10.127.6.10
大年夜部分的 github.net 区域是完全私有的,无法大年夜互联网拜访,它只包含 RFC 1918 中规定的 IP 地址。每个地区和站点都划分了私有区域。每个地区和/或站点都具有实用于该地位的一组子区域,子区域用于治理收集、办事发明、特定的办事记录,并且还包含在我们仓库中的设备主机。私有区域还包含 PTR 反向查找区域。
总结
我们的威望主机也是地区性的主机,只包含实用于其地点地区region的区域zone。我们的仓库和设备体系决定一个区域zone存放在哪个地区性威望主机regional authority,并经由过程 HTTP API 办事来创建和删除记录。 OctoDNS 将区域映射到地区性威望主机,并应用雷同的 API 创建静态记录,以及确保动态源处于同步状况。对于外部域 (如 github.com),我们有别的一个零丁的威望主机,以许可我们可以在连接中断时代萌芽我们的外部域。所有记录都存储在 MySQL 中。
用一个新体系调换可认为数百万客户供给办事的旧体系并不轻易。应用实用的、基于需求的办法来设计和实施我们的新 DNS 体系,才能打造出一个可以或许敏捷有效地运行、并有望与 GitHub 一路成长的 DNS 基本举措措施。
想赞助 GitHub SRE 团队解决有趣的问题吗?我们很愿意你参加我们。在这申请。
推荐阅读
51CTO诚邀您9月23号和秒拍/国美/美团元专家一路聊智能CDN的优化之路,抓紧时光哦! 嗨,大年夜家好! 我的名字是Sergey Kamardin,我是Mail.Ru的工程师。介绍起首介绍我们的故事的高低文,应>>>详细阅读
地址:http://www.17bianji.com/lsqh/37392.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示