文/單康康 王佶 張華
浙江大學(xué)目前有紫金港、玉泉、西溪、華家池、之江、舟山、海寧等7個校區(qū),師生6萬多名,校園網(wǎng)同時在線日均3萬余用戶,在線終端數(shù)日均4萬余部,校內(nèi)DNS解析請求平均達到1萬QPS。隨著移動互聯(lián)網(wǎng)迅速發(fā)展以及智能終端的廣泛使用,在線域名請求并發(fā)量急劇上升,對校園網(wǎng)絡(luò)基礎(chǔ)設(shè)施DNS設(shè)備壓力逐年增加,構(gòu)建一套安全穩(wěn)定且支撐大規(guī)模流量的DNS系統(tǒng)成為校園網(wǎng)安全穩(wěn)定運行的迫切需求。
浙江大學(xué)早期使用單臺實體服務(wù)器作為主DNS,后來采用主輔兩臺DNS服務(wù)器, 浙江大學(xué)DNS歷史架構(gòu)如圖1所示。由于主服務(wù)器存在單點故障,后續(xù)對主服務(wù)器利用LVS+KeepAlived負載均衡架構(gòu)進行提升,達到雙機負載均衡,較大提高整體可用性,但上述幾種DNS架構(gòu)仍存在以下不足:
1.缺少對各服務(wù)器的集中式Web管控;
2.軟件負載均衡架構(gòu)容易受服務(wù)器自身性能局限;
3.無法對遞歸線路進行智能檢測與切換。

圖1 浙江大學(xué)DNS歷史架構(gòu)
浙江大學(xué)新一代智能DNS集群架構(gòu)的設(shè)計思路和原則,有以下幾個方面:
1.開源軟件架構(gòu):要求除了前端負載均衡采用硬件產(chǎn)品,DNS集群其他所有功能與軟件平臺都采用開源軟件構(gòu)建,以滿足可管、可控、可自定義擴展以及成本控制等。
2.流量負載均衡:前端采用硬件負載均衡設(shè)備,同時實現(xiàn)雙機在線冗余,將接收的域名請求根據(jù)策略分攤至下聯(lián)權(quán)威DNS服務(wù)器集群,硬件負載均衡設(shè)備可根據(jù)策略將校內(nèi)用戶流量導(dǎo)向各權(quán)威實體DNS服務(wù)器,同時對服務(wù)器進行服務(wù)實時監(jiān)測和故障服務(wù)器剔除和流量切換功能。
3.準電信級高可用性:單集群中的一臺或多臺服務(wù)器出現(xiàn)故障,無法提供業(yè)務(wù),自動將用戶流量轉(zhuǎn)移至其他正常服務(wù)器,業(yè)務(wù)達到99.999%可用率,全年業(yè)務(wù)中斷時間不超過5分鐘,一年故障率不超過1次(見表1)。

表1 可用性量化
4.Web界面統(tǒng)一管控:提供用戶友好的UI界面,對所有DNS實體服務(wù)器進行集中管控,主要實現(xiàn)域名更新、修改等操作同步下發(fā)、域名變更實時生效、實時監(jiān)控服務(wù)器壓力負載、域名解析狀態(tài)、服務(wù)器日志統(tǒng)一存儲與大數(shù)據(jù)分析用戶行為等。
5.遞歸鏈路故障智能轉(zhuǎn)移:遞歸DNS集群策略對遞歸鏈路進行實時健康監(jiān)測,當(dāng)某個校區(qū)遞歸鏈路出現(xiàn)故障,自動將導(dǎo)向故障區(qū)域的DNS流量轉(zhuǎn)移到其他校區(qū)正常出口鏈路,當(dāng)故障校區(qū)鏈路恢復(fù)正常,自動將用戶請求流量遷回,要求故障智能處理時長不超過6秒。
浙江大學(xué)新一代智能DNS集群采用4層架構(gòu),如圖2所示。

圖2 總體技術(shù)架構(gòu)
1.負載均衡層:采用2臺國際主流硬件負載均衡硬件設(shè)備,實現(xiàn)雙機實時冗余,可擴展架構(gòu),學(xué)校DNS地址綁定到負載均衡設(shè)備做為VIP,負責(zé)接收學(xué)校所有域名請求包,轉(zhuǎn)發(fā)分攤請求包至權(quán)威服務(wù)器層。
2.權(quán)威服務(wù)層:采用3臺以上實體服務(wù)器,利用BIND開源軟件建設(shè)權(quán)威服務(wù)器群,權(quán)威服務(wù)器之間域名數(shù)據(jù)實現(xiàn)同步更新,負責(zé)均衡層接收域名解析包,解析學(xué)校權(quán)威域名,將緩存中的權(quán)威與遞歸域名解析結(jié)果返回用戶,將緩存中沒有的遞歸域名轉(zhuǎn)發(fā)到遞歸服務(wù)層。
3.遞歸服務(wù)層:在學(xué)校各校區(qū)各自獨立建設(shè)至少1臺遞歸服務(wù)器,利用UNBOUND開源軟件,負責(zé)接收處理權(quán)威服務(wù)層轉(zhuǎn)發(fā)的遞歸解析請求,在多校區(qū)建設(shè)在線冗余鏈路出口,以實現(xiàn)異地災(zāi)備。
4.統(tǒng)一管控層:利用Apache/PHP等組件搭建統(tǒng)一管控平臺,對所有權(quán)威服務(wù)器進行統(tǒng)一管控與配置同步,主要實現(xiàn)域名編輯、統(tǒng)一下發(fā)、大數(shù)據(jù)統(tǒng)計、實時性能監(jiān)控等功能。

圖3 管控平臺核心功能模塊
浙江大學(xué)新一代基于統(tǒng)一管控的智能DNS集群自建成運行以來,實現(xiàn)了每年零業(yè)務(wù)中斷次數(shù)、零業(yè)務(wù)中斷時間。集群目前可支撐10萬QPS,且能根據(jù)需求在線擴容,可實現(xiàn)在線域名管理與實時生效、域名訪問統(tǒng)計、用戶流量分析、QPS實時監(jiān)測、DNS解析成功率實時監(jiān)控、惡意域名監(jiān)測等基本功能和大數(shù)據(jù)分析模塊,如圖3所示。
浙江大學(xué)基于統(tǒng)一管控的高可用智能DNS集群根據(jù)可管、可控、可查整體設(shè)計思路,深入用戶需求與安全挑戰(zhàn),建設(shè)了一套基于集中式統(tǒng)一管控的分布式、可擴展、智能鏈路切換、流量負載均衡、Web界面統(tǒng)一管控、大數(shù)據(jù)用戶行為分析、網(wǎng)絡(luò)安全監(jiān)測等的準電信級智能DNS服務(wù)云平臺,能較好應(yīng)對移動互聯(lián)網(wǎng)與物聯(lián)網(wǎng)快速發(fā)展中面臨的安全問題與核心設(shè)施壓力,較大提升網(wǎng)絡(luò)核心運維應(yīng)用設(shè)施穩(wěn)定安全,加快推進浙江大學(xué)智慧校園信息化建設(shè),助力學(xué)校“雙一流”跨越發(fā)展。