文/單康康 王佶 張華
浙江大學(xué)目前有紫金港、玉泉、西溪、華家池、之江、舟山、海寧等7個(gè)校區(qū),師生6萬多名,校園網(wǎng)同時(shí)在線日均3萬余用戶,在線終端數(shù)日均4萬余部,校內(nèi)DNS解析請(qǐng)求平均達(dá)到1萬QPS。隨著移動(dòng)互聯(lián)網(wǎng)迅速發(fā)展以及智能終端的廣泛使用,在線域名請(qǐng)求并發(fā)量急劇上升,對(duì)校園網(wǎng)絡(luò)基礎(chǔ)設(shè)施DNS設(shè)備壓力逐年增加,構(gòu)建一套安全穩(wěn)定且支撐大規(guī)模流量的DNS系統(tǒng)成為校園網(wǎng)安全穩(wěn)定運(yùn)行的迫切需求。
浙江大學(xué)早期使用單臺(tái)實(shí)體服務(wù)器作為主DNS,后來采用主輔兩臺(tái)DNS服務(wù)器, 浙江大學(xué)DNS歷史架構(gòu)如圖1所示。由于主服務(wù)器存在單點(diǎn)故障,后續(xù)對(duì)主服務(wù)器利用LVS+KeepAlived負(fù)載均衡架構(gòu)進(jìn)行提升,達(dá)到雙機(jī)負(fù)載均衡,較大提高整體可用性,但上述幾種DNS架構(gòu)仍存在以下不足:
1.缺少對(duì)各服務(wù)器的集中式Web管控;
2.軟件負(fù)載均衡架構(gòu)容易受服務(wù)器自身性能局限;
3.無法對(duì)遞歸線路進(jìn)行智能檢測(cè)與切換。
圖1 浙江大學(xué)DNS歷史架構(gòu)
浙江大學(xué)新一代智能DNS集群架構(gòu)的設(shè)計(jì)思路和原則,有以下幾個(gè)方面:
表1 可用性量化
1.開源軟件架構(gòu):要求除了前端負(fù)載均衡采用硬件產(chǎn)品,DNS集群其他所有功能與軟件平臺(tái)都采用開源軟件構(gòu)建,以滿足可管、可控、可自定義擴(kuò)展以及成本控制等。
2.流量負(fù)載均衡:前端采用硬件負(fù)載均衡設(shè)備,同時(shí)實(shí)現(xiàn)雙機(jī)在線冗余,將接收的域名請(qǐng)求根據(jù)策略分?jǐn)傊料侣?lián)權(quán)威DNS服務(wù)器集群,硬件負(fù)載均衡設(shè)備可根據(jù)策略將校內(nèi)用戶流量導(dǎo)向各權(quán)威實(shí)體DNS服務(wù)器,同時(shí)對(duì)服務(wù)器進(jìn)行服務(wù)實(shí)時(shí)監(jiān)測(cè)和故障服務(wù)器剔除和流量切換功能。
3.準(zhǔn)電信級(jí)高可用性:單集群中的一臺(tái)或多臺(tái)服務(wù)器出現(xiàn)故障,無法提供業(yè)務(wù),自動(dòng)將用戶流量轉(zhuǎn)移至其他正常服務(wù)器,業(yè)務(wù)達(dá)到99.999%可用率,全年業(yè)務(wù)中斷時(shí)間不超過5分鐘,一年故障率不超過1次(見表1)。
4.Web界面統(tǒng)一管控:提供用戶友好的UI界面,對(duì)所有DNS實(shí)體服務(wù)器進(jìn)行集中管控,主要實(shí)現(xiàn)域名更新、修改等操作同步下發(fā)、域名變更實(shí)時(shí)生效、實(shí)時(shí)監(jiān)控服務(wù)器壓力負(fù)載、域名解析狀態(tài)、服務(wù)器日志統(tǒng)一存儲(chǔ)與大數(shù)據(jù)分析用戶行為等。
圖2 總體技術(shù)架構(gòu)
圖3 管控平臺(tái)核心功能模塊
5.遞歸鏈路故障智能轉(zhuǎn)移:遞歸DNS集群策略對(duì)遞歸鏈路進(jìn)行實(shí)時(shí)健康監(jiān)測(cè),當(dāng)某個(gè)校區(qū)遞歸鏈路出現(xiàn)故障,自動(dòng)將導(dǎo)向故障區(qū)域的DNS流量轉(zhuǎn)移到其他校區(qū)正常出口鏈路,當(dāng)故障校區(qū)鏈路恢復(fù)正常,自動(dòng)將用戶請(qǐng)求流量遷回,要求故障智能處理時(shí)長不超過6秒。
浙江大學(xué)新一代智能DNS集群采用4層架構(gòu),如圖2所示。
1.負(fù)載均衡層:采用2臺(tái)國際主流硬件負(fù)載均衡硬件設(shè)備,實(shí)現(xiàn)雙機(jī)實(shí)時(shí)冗余,可擴(kuò)展架構(gòu),學(xué)校DNS地址綁定到負(fù)載均衡設(shè)備做為VIP,負(fù)責(zé)接收學(xué)校所有域名請(qǐng)求包,轉(zhuǎn)發(fā)分?jǐn)傉?qǐng)求包至權(quán)威服務(wù)器層。
2.權(quán)威服務(wù)層:采用3臺(tái)以上實(shí)體服務(wù)器,利用BIND開源軟件建設(shè)權(quán)威服務(wù)器群,權(quán)威服務(wù)器之間域名數(shù)據(jù)實(shí)現(xiàn)同步更新,負(fù)責(zé)均衡層接收域名解析包,解析學(xué)校權(quán)威域名,將緩存中的權(quán)威與遞歸域名解析結(jié)果返回用戶,將緩存中沒有的遞歸域名轉(zhuǎn)發(fā)到遞歸服務(wù)層。
3.遞歸服務(wù)層:在學(xué)校各校區(qū)各自獨(dú)立建設(shè)至少1臺(tái)遞歸服務(wù)器,利用UNBOUND開源軟件,負(fù)責(zé)接收處理權(quán)威服務(wù)層轉(zhuǎn)發(fā)的遞歸解析請(qǐng)求,在多校區(qū)建設(shè)在線冗余鏈路出口,以實(shí)現(xiàn)異地災(zāi)備。
4.統(tǒng)一管控層:利用Apache/PHP等組件搭建統(tǒng)一管控平臺(tái),對(duì)所有權(quán)威服務(wù)器進(jìn)行統(tǒng)一管控與配置同步,主要實(shí)現(xiàn)域名編輯、統(tǒng)一下發(fā)、大數(shù)據(jù)統(tǒng)計(jì)、實(shí)時(shí)性能監(jiān)控等功能。
浙江大學(xué)新一代基于統(tǒng)一管控的智能DNS集群自建成運(yùn)行以來,實(shí)現(xiàn)了每年零業(yè)務(wù)中斷次數(shù)、零業(yè)務(wù)中斷時(shí)間。集群目前可支撐10萬QPS,且能根據(jù)需求在線擴(kuò)容,可實(shí)現(xiàn)在線域名管理與實(shí)時(shí)生效、域名訪問統(tǒng)計(jì)、用戶流量分析、QPS實(shí)時(shí)監(jiān)測(cè)、DNS解析成功率實(shí)時(shí)監(jiān)控、惡意域名監(jiān)測(cè)等基本功能和大數(shù)據(jù)分析模塊,如圖3所示。
浙江大學(xué)基于統(tǒng)一管控的高可用智能DNS集群根據(jù)可管、可控、可查整體設(shè)計(jì)思路,深入用戶需求與安全挑戰(zhàn),建設(shè)了一套基于集中式統(tǒng)一管控的分布式、可擴(kuò)展、智能鏈路切換、流量負(fù)載均衡、Web界面統(tǒng)一管控、大數(shù)據(jù)用戶行為分析、網(wǎng)絡(luò)安全監(jiān)測(cè)等的準(zhǔn)電信級(jí)智能DNS服務(wù)云平臺(tái),能較好應(yīng)對(duì)移動(dòng)互聯(lián)網(wǎng)與物聯(lián)網(wǎng)快速發(fā)展中面臨的安全問題與核心設(shè)施壓力,較大提升網(wǎng)絡(luò)核心運(yùn)維應(yīng)用設(shè)施穩(wěn)定安全,加快推進(jìn)浙江大學(xué)智慧校園信息化建設(shè),助力學(xué)?!半p一流”跨越發(fā)展。