华人澳洲中文论坛

热图推荐

    爱奇艺混合云内网DNS理论

    [复制链接]

    2022-11-27 06:31:13 86 0

    爱奇艺初期业务少数以公有云形式部署,随时间推移,公有云模式在本钱、弹性及区域掩盖等方面开始浮现缺乏,而私有云在近些年的开展中成熟度不停进步,逐渐知足爱奇艺业务需要,爱奇艺开始有方案的使用私有云资源,逐步造成公有云与多家私有云结合的业务部署模式,即混合云模式。混合云模式下,公有云和私有云分属不同的 DNS 体系,如何完成域名一致办理,高效、平安地实现云间通讯,成为一个微小的应战,本文即引见爱奇艺内网 DNS 架构的演进以及混合云场景下的内网 DNS 理论。
    01
    爱奇艺内网 DNS 演进
    DNS 作为网络根底办事,不只在公网环境中体现相当首要的价值,在内网环境中也拥有首要的办事与资源定位作用。在爱奇艺出产环境中,办事多样、繁杂,通讯效力要求高,各业务广泛使用内网 DNS 进行办事定位,故对内网 DNS 提出高机能、高不乱、低提早等要求。为知足业务需要,爱奇艺 DNS 架构不停演进,造成了融会 Anycast 的多层 DNS 架构,下文将具体引见。
    1.1 公有云环境下内网 DNS 架构
    爱奇艺内网 DNS 采取分层架构,反对多级缓存、容错、平衡负载、就近拜候等,该架构依据分层准则次要分为四层:主机 DNS、缓存 DNS、权威 DNS 及递归 DNS。


    扼要引见各层 DNS 的角色及作用:
    主机 DNS:主机 DNS 次要部署在主机上,为物理机、虚构机和容器等提供高效 DNS 办事,具备 90% 以上的 DNS 缓存才能;当域名信息未命中主机 DNS 缓存时,主机 DNS 会转发该 DNS 查问申请至后真个缓存 DNS。缓存 DNS:接纳并响应来自主机 DNS 转发的域名解析申请,若未命中当地缓存,则将带有主机 DNS 子网信息的 DNS 申请转发至后真个权威 DNS,接纳到权威 DNS 前往后果后将其回传给申请者,同时在当地进行缓存;因主机 DNS 部署在业务主机上,数量宏大,为加强内网配置可办理性,爱奇艺采取 Anycast 计划使每组缓存 DNS 都绑定相反 Anycast IP,一切的主机 DNS 配置一致,大幅晋升保护效力。权威 DNS:权威 DNS 寄放一切内网权威域名的地址信息,当缓存 DNS 转发的申请域名为内网权威域名时,会按照主机 DNS 子网信息优先前往其所属区域的地址信息,假如申请域名为非内网权威域名,则会将该 DNS 申请进一步转发至递归 DNS 处置。递归 DNS:递归 DNS 次要用来对非内网权威域名进行递归解析,将解析后果前往给权威 DNS、缓存 DNS 直至主机 DNS。上述内网 DNS 分层架构具备下列优点:
    多级分层 DNS 缓存架构,使拜候压力层层递加,大幅晋升内网 DNS 域名解析才能,并升高响应提早;主机 DNS 间接部署在主机上,当地缓存命中率超过 90%,极大升高对后端 DNS 的拜候压力,升高主机 DNS 拜候的提早,减小网络毛病对主机 DNS 影响;基于网络 Anycast 架构的缓存 DNS,使全网主机 DNS 地址配置放弃统一,升高主机侧保护本钱,可弹性扩容,节点毛病及上下线对主机解析无影响,提供高效、平安、就近的 DNS 办事;权威 DNS 一致办理 DNS 数据及业务战略,提供最好的业务调度才能。1.2 爱奇艺内网 DNS 架构演变上述爱奇艺内网DNS 架构并不是欲速不达,是在理论中逐渐演变而来,下图展现了该演进进程:


    一代 DNS 架构:初期内网 DNS 架构相对于简略,只要权威 DNS,采取 master/slave 模式;随业务开展,内网 DNS 拜候压力日积月累,单层 DNS 架构已无奈知足业务拜候要求,所以衍生二代 DNS 架构;二代 DNS 架构:主机上减少主机 DNS 承载大部份拜候压力,两头层减少缓存 DNS,进一步升高权威 DNS 负载;随主机范围不停增大,两头层缓存 DNS 的节点数量不停扩增,而每次 DNS 节点扩增或调剂,都需求修正主机 DNS 上的配置项,保护繁杂,DNS 办事高牢靠性不足保障,因此爱奇艺内网 DNS 架构再次降级,演进为第三代 DNS 架构;三代 DNS 架构:借助于 Anycast 的网络架构,使 DNS 架构具备了弹性伸缩的才能,同时一致并简化了主机 DNS 配置,升高了毛病率与保护本钱。1.3 融会 Anycast 的内网 DNS 架构爱奇艺 DNS 架构通过迭代,开展为高效不乱的 Anycast 架构,下图以 Anycast IP 10.10.10.10 为例,引见爱奇艺融会 Anycast 技术的内网 DNS 架构:
    Anycast 技术,将一个单播地址调配到网络中多个不同物理地位的主机上,发送到这个地址的报文被网络转发到“比来”的指标主机,从而达到负载平衡及就近拜候的目的。爱奇艺 DNS Anycast 将路由协定部署到 DNS 主机上,和网络装备进行联动,经过静态路由管制 Anycast IP 浮动,泛起毛病时,将 Anycast IP 在毛病主机上摘除,业务申请便可自动转发到其余 Anycast 主机。
    为了进步 Anycast 疾速部署以及毛病疾速切换才能,爱奇艺将 DNS 进行平台化办理,平台具备下列功用:
    平台办理一切 DNS 主机,经过平台疾速进行主机 DNS 办事部署、路由模块部署等;平台提供一键上下线的功用,可经过平台间接操作或者接口调用;毛病自主检测,一旦检测到毛病即触发毛病主机摘除,其余 DNS 主机自动接管办事。小结
    融会 Anycast 的 DNS 架构,完成了 DNS 办事地址的一致,全网主机均可配置同一个 DNS 地址,大大升高了保护本钱;平台化办理,完成 DNS 配置规范化,反对毛病主机自动摘除切换,用户端无感知。新的架构和办理模式充沛保障了 DNS 办事继续不乱、平安、牢靠、高效地运转。
    02
    混合云时期的爱奇艺内网 DNS 架构
    为完成业务高效灵敏部署,爱奇艺与国际外多家主流云厂商进行协作,将部份业务部署到私有云,同时保存中心的公有云根底设施,造成自建公有云和私有云结合的混合云模式。混合云模式要求爱奇艺根底办事平台在私有云环境下提供和公有云统一的底层技术撑持,而 DNS 作为一项首要的根底办事,在混合云场景下如作甚业务提供一致、不乱、高效、平安的域名解析成为一个辣手问题,为此爱奇艺技术团队通过总牢固践,在原 DNS 架构上进一步设计了混合云的 DNS 架构,完成规范化配置,一致化办理,全局化办事的混合云 DNS 办事的指标。
    规范化配置:一切业务主机使用一致的 Anycast IP 作为独一办事地址;一致化办理:一切 DNS 办事器均平台化办理、自动化配置,做到 DNS 办事一键部署、一键上下线;全局化办事:公有云和私有云使用一致的 DNS 办事地址,既能解析公有云域名,又可解析私有云域名,同时可完成跨私有云解析。2.1 混合云场景下的 DNS 问题混合云场景下,不同的云厂商都有独立的 DNS 办事,而且只能解析本人相干的域名,无奈解析公有云域名,更无奈跨私有云进行域名解析。为完成混合云时期 DNS 办事可规范化配置、一致化办理、全局化办事的指标,爱奇艺技术团队选择 Anycast DNS+ 定向转发的计划思绪,同时将私有云 DNS 归入原 DNS 办理平台完成一致化办理。
    明白指标及解决计划后,爱奇艺开始在私有云环境下进行测试,由于私有云特殊的架构以及云厂商之间的差别,需求私有云上解决下列问题:
    私有云 VPC 边疆址一致布局,如何将 Anycast IP 部署到云上完成 DNS 地址一致;私有云底层网络对爱奇艺不成见,Anycast 和网络深度绑定,如何完成 DNS Anycast 在私有云上的部署;不同私有云 DNS 地址可能独立布局,如何完成爱奇艺权威 DNS 和私有云 DNS 互通;私有云厂商有独立的地址布局,如何完成 DNS 的正确解析以及云上云下办事互通;特殊场景下如何完成私有云 DNS 对爱奇艺内网域名的解析。针对上述问题,爱奇艺结合公有云 DNS 部署教训以及各私有云网络实际状况,逐个解决并实现混合云 DNS 架构设计。
    2.2 混合云场景下的内网 DNS 架构
    网络架构:爱奇艺 DNS 和网络团队设计的混合云内网 DNS 架构如下图所示,原公有云经过专线衔接多个 IDC,私有云节点相似于爱奇艺自有 IDC,经过专线衔接到爱奇艺中心 PoP 点,私有云节点能够横向扩展,云下 IDC 仍采取物理机和网络装备完成 DNS Anycast,云上采取 LB+ 虚机的部署形式。混合云内网 DNS 充沛斟酌各云厂商的网络情况,解决上一章节提出的问题。
    针对 Anycast IP 部署,目前主流私有云均反对 VPC 内的辅佐地址,可经过辅佐地址将 Anycast IP 部署到云上;针对云上 DNS Anycast,经过私有云 LB 完成,在 LB 后端挂载 DNS 办事器完成负载平衡;针对不同云厂商 DNS 地址互通问题,目前多家私有云均反对 VPC 边疆址作为 DNS 地址,不反对的厂商将引见其余代替计划;针对私有云业务地址和云下互通以及 DNS 解析问题,目前少数厂商均反对 VPC 内网段作为业务地址,不反对的厂商将引见其余代替计划;特殊场景下私有云 DNS 可经过 DNS 转发器将爱奇艺内网域名解析申请转发到爱奇艺 DNS 进行解析,目前主流私有云均反对,并配合爱奇艺技术团队继续完美中。


    DNS 架构:为了更明晰地展现各级 DNS 之间逻辑瓜葛,可参考下列 DNS 办事逻辑架构图,主机 DNS、缓存 DNS、权威 DNS、递归 DNS,云下经过传统网络完成 Anycast,云上经过 LB 完成,云下权威办事器和云上权威办事器网络互通,并经过一致平台进行办理。


    2.3 混合云场景下的 DNS 理论及剖析
    前文提出了混合云环境下完成 DNS 一致部署的问题,而且结合网络环境给出理解决问题思绪,下文具体引见爱奇艺内网 DNS 在私有云的部署理论。
    2.3.1 Anycast 地址下沉部署
    在私有云环境要完成 Anycast 地址公布,首先 VPC 内需存在该地址段,然而 VPC 在创立时便对各私有云网络进行了布局,并肯定了地址段,因此需求在现有 VPC 内新减少辅佐地址段,如下图标识1,而且创立 Anycast 地址公用的子网如下图标识②,便可完成 Anycast IP 在私有云的部署。
    2.3.2 DNS 办事下沉到私有云
    公有云环境中,DNS 以物理机形式部署在 IDC 外部,并和替换机联动经过路由协定完成 DNS Anycast,私有云环境中,物理网络对云上不成见,要完成 DNS 办事下沉并部署 Anycast 需求经过 LB+ 虚构机,虚构机部署 DNS 缓存办事,LB 绑定 Anycast IP,完成 DNS 办事的 Anycast 化。
    在 DNS 办事下沉计划中,能够按照业务需要及私有云范围等状况,选择只下沉 DNS 缓存或者下沉缓存及权威,下图中选择了下沉缓存和权威,图中标识步骤为业务办事器 DNS 解析进程,业务主机配置 DNS 的 Anycast IP,解析申请经过 LB 转发到后端缓存 DNS 并向权威 DNS 申请解析,爱奇艺域名间接给出解析后果,云上域名则转发到私有云 DNS 进行解析。


    在 DNS 办事下沉中,LB 办事承当首要角色,转发进程如下:
    业务主机 DNS 申请 LB 上的 Anycast IP,经三层转发到 LB;LB 承受申请后做 DNAT,放弃原地址不变,更改目的地址为 LB 后端挂载的 DNS 缓存办事器的实在地址,按照 hash 算法转发到相应的 DNS 缓存办事器;DNS 缓存办事器承受申请后,按照业务主机地址判别所属区域,如命中缓存间接前往解析后果,如未命中则申请权威进行解析后前往后果;DNS 缓存办事器回包到 VSW 按照转颁发项到LB,LB更改源地址为Anycast地址后三层转发到业务办事器。LB转发有两个特殊场景:
    场景一:DNS缓存办事器和业务办事器在同一网段。传统网络在二层环境下按照mac地址进行转发,当DNS缓存办事器和业务办事器在同一网段时,间接二层互通就绕过了LB,无奈完成设计要求,但在云网络环境下,同一网段办事器 arp 申请均采取网关代答,网关响应 arp 申请,如下图,能够看到主机上同网段地址解析为同一 mac 地址,将二层转发变成三层转发,再按照转颁发项到 LB,解决 DNS 缓存办事器和业务主机在同一网络的解析问题。


    场景二:下沉 DNS 缓存办事配置 Anycast IP。下沉的 DNS 缓存办事器其 DNS 地址不克不及配置成 Anycast IP,由于存在 LB 转发的 RS 为本人、无奈回包给 LB 的状况,此场景还在寻觅更好的解决计划。
    2.3.3 公有云办事器解析私有云域名
    公有云办事器解析私有云域名的实质是云下权威办事器能正常转发到私有云 DNS 办事器进行私有云域名解析。爱奇艺混合云场景下要求一切主机均配置一致 DNS 地址,当公有云主机需求解析私有云域名时,申请转发到云下的权威办事器,权威办事器转发到相应的私有云 DNS,解析进程如图所示。以后私有云上 DNS 办事地址次要有两种状况,主流私有云厂商反对自动使用 VPC 内网段 IP 地址作为 DNS 地址,如新建替换机时所关联的网段第一个和第二个为 DNS 地址,部份私有云厂商采取自定义的固定 DNS 地址,好比使用 100.x.x.x 段做 DNS 地址。前者使用 VPC 边疆址包管和云下 DNS 权威互通,后者因使用独立地址因此无奈和云下间接互通,当解析云上域名时,权威 DNS 无奈转发申请到云上,因此需求解决云上 DNS 地址和云下互通的问题,针对此种状况有三种解决计划,参考下图步骤 4/5:
    计划一:间接将云上 DNS 地址段路由公布到云下,此计划可能存在地址冲突问题;计划二:经过云上配置 NAT 网关,经 NAT 转换完成云下 DNS 权威办事器和云上 DNS 办事器互通,此计划需额定减少 NAT 办事器,减少保护本钱;计划三:私有云上部署代理买通云上云下 DNS 办事,此计划一样减少了资源和保护本钱。上述三种计划均为暂时性计划,都存在相应的弊病,目前爱奇艺次要采取第二种计划,而且继续推进一切私有云厂商都反对 VPC 内网段 IP 地址作为 DNS 办事地址。
    2.3.4 公有云办事和私有云办事互通问题
    私有云和公有云办事互通,必需保障 DNS 域名正常解析和云上云下业务地址互通。目前私有云 VPC 均完成和公有云互通,且大部份办事均可使用 VPC 布局的地址,包管和云下网络互通,然而部份公共办事一些云厂商仍独立布局地址段,如使用 100.x.x.x 段地址,致使云下用户无奈拜候云上相应资源。此问题次要有三个解决计划,如下图的步骤 5/6,需求按照私有云实际状况进行选择:
    计划一:间接将私有云地址段路由公布到云下,云上 DNS 正常进行地址解析,云下办事器也能拜候云上资源,此计划可能存在地址冲突问题;计划二:在私有云办事前部署 LB,LB 后挂载私有云办事,而且调剂 DNS 解析到 LB,此计划减少了 LB 资源和保护本钱;计划三:在私有云办事前部署代理,经过代理连通私有云和公有云,而且调剂 DNS 解析到代理办事器,此计划减少了代理办事器资源和保护本钱。上述三个互通计划一样均存在弊病,目前爱奇艺次要采取计划三解决此问题,同时继续推进私有云厂商配合规范化办事,完成基于 VPC 内 IP 地址提供一切办事。


    2.3.5 私有云办事解析公有云域名
    私有云厂商提供的部份办事为公共办事,默许使用私有云 DNS,假如这些办事需求和公有云部署的业务互通,私有云 DNS 是无奈解析公有云域名的,此种场景下需求将公有云域名转发到权威 DNS 进行解析,如下图步骤,经过在私有云上配置 DNS 转发,将公有云域名转发到公有云权威 DNS,假如权威 DNS 办事器部署在云下,则保障私有云 DNS 和云下权威 DNS 互通,互通计划可参考前述章节。
    小结
    当业务不停开展壮大,需求愈来愈多的办事资源时,对公有云数据核心进行扩容往往需求历经选址、布线、装备上架、调试等诸多环节,而私有云在本钱、区域掩盖、响应时间上提供了更高效的形式,因此爱奇艺开始接触多家私有云并理解其网络架构,造成了一致的私有云网络接入计划,并结合自有 IDC 造成多 Region、多 AZ 的业务部署模式,完成业务疾速部署上线。在此配景下,爱奇艺技术团队但愿私有云和公有云架构一致,完成寰球一网的根底网络办事,因此设计了新的 DNS 架构,在混合云场景下完成了 DNS 规范化配置、一致化办理、全局化办事三大指标。如前文所述在部署理论中因不同厂商存在差别,以后采用了一些代替计划,并继续与各私有云厂商独特完美网络架构,知足不同场景的需要。
    03
    总结
    爱奇艺内网 DNS 的开展历程:从初期的双主多从模式,到多层 DNS 集群,再到融会 Anycast 的多层 DNS,最初到混合云环境 DNS 架构,每个阶段都是基于过后网络情况,在总结上一阶段架构教训的根底上,不停迭代演变而成。以后的混合云内网 DNS 计划(爱奇艺第四代内网 DNS 计划),是基于第三代 DNS 技术计划,在充沛了解爱奇艺业务需要及私有云网络架构的根底上,疾速翻新、继续演进、充沛验证后终究造成的,在寰球规模内为爱奇艺各类业务提供通明、平安、不乱、高效且弹性的域名解析办事,为爱奇艺片面适配混合云架构打下松软的根底。
    作者:零碎网络团队
    出处:http://mp.weixin.qq.com/s/jfDrWkFAgzTUY1LJljb-Qg

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    返回列表 本版积分规则

    :
    注册会员
    :
    论坛短信
    :
    未填写
    :
    未填写
    :
    未填写

    主题31

    帖子41

    积分180

    图文推荐