陳紫兒 王洋 李雨泰 柳瑞春 張寧
關(guān)鍵詞:數(shù)據(jù)中心;拓展分布DNS;建設(shè)意義;功能分區(qū);設(shè)計(jì)方案;技術(shù)實(shí)現(xiàn)
1引言
隨著信息化的飛速發(fā)展,許多云服務(wù)提供商會(huì)贈(zèng)送一些初始的云存儲(chǔ)資源,從2GB~16GB的云存儲(chǔ)空間不等。對(duì)于微型和小型企業(yè)而言,這些贈(zèng)送的云存儲(chǔ)空間已經(jīng)足夠滿足企業(yè)日常的數(shù)據(jù)存儲(chǔ)所需。但是,對(duì)于大中型企業(yè)或組織來說,云服務(wù)的實(shí)際成本必須落在某個(gè)地方。換言之,必須以某種方式為云服務(wù)付費(fèi)[1]。從端到端云基礎(chǔ)設(shè)施的角度來看,大部分成本(資本支出和運(yùn)營(yíng)支出)都在數(shù)據(jù)中心設(shè)施內(nèi)。數(shù)據(jù)中心允許數(shù)據(jù)中心管理員為大量租戶提供數(shù)據(jù)中心資源的細(xì)粒度分配,同時(shí)優(yōu)化數(shù)據(jù)中心資源利用率。在此背景下,如何在現(xiàn)有數(shù)據(jù)中心基礎(chǔ)上,提供更加安全的數(shù)據(jù)存儲(chǔ)、實(shí)現(xiàn)數(shù)據(jù)的統(tǒng)一管理、降低數(shù)據(jù)中心的建設(shè)成本、減少數(shù)據(jù)中心運(yùn)行能耗,成為從業(yè)人員需面對(duì)的難題。本文據(jù)此為出發(fā)點(diǎn),探索基于擴(kuò)展分布DNS的數(shù)據(jù)中心的建設(shè)方案,以期為從業(yè)人員的研究和實(shí)踐提供一定的參考與建議。
2擴(kuò)展分布DNS的數(shù)據(jù)中心建設(shè)意義
隨著數(shù)據(jù)中心規(guī)模的擴(kuò)大,對(duì)服務(wù)器、存儲(chǔ)和網(wǎng)絡(luò)的電力及冷卻要求也越來越高[2]。2001年,世界上超過10MW電力的計(jì)算機(jī)中心屈指可數(shù):2011年,這樣的數(shù)據(jù)中心有幾十個(gè),很多大廠商都在規(guī)劃60~70MW的數(shù)據(jù)中心(足夠運(yùn)行一個(gè)小城市的電力);2021年,中國(guó)超70MW的數(shù)據(jù)中心數(shù)量已經(jīng)過百[3]。雖然大部分電力和冷卻都被服務(wù)器和存儲(chǔ)消耗,但當(dāng)數(shù)據(jù)中心達(dá)到這些水平時(shí),所有設(shè)備(包括交換機(jī)和數(shù)據(jù)中心網(wǎng)絡(luò))的電源效率都變得至關(guān)重要。在此背景下,開發(fā)更加高效、能耗更低、服務(wù)更全的數(shù)據(jù)中心迫在眉睫。在這方面,巧妙應(yīng)用域名系統(tǒng)(DNS)及其安全擴(kuò)展DNSSec,提供了應(yīng)對(duì)數(shù)據(jù)中心建設(shè)挑戰(zhàn)的關(guān)鍵機(jī)會(huì)。長(zhǎng)期以來,DNS在連接Internet上的服務(wù)和用戶方面起著至關(guān)重要的作用。在其最基本的形式中,它將人類可讀的域名轉(zhuǎn)換為互聯(lián)網(wǎng)協(xié)議(IP)地址。例如,域example. com被轉(zhuǎn)換為93. 184. 216. 34。通常,每次客戶端若要通過域名連接到服務(wù)器日寸,都需要將該名稱轉(zhuǎn)換為IP地址:如果DNS查詢失敗,盡管服務(wù)器在線,但客戶端無法訪問該服務(wù)器。在數(shù)據(jù)中心建設(shè)中,傳統(tǒng)的DNS面臨四個(gè)主要挑戰(zhàn):(1)DNS查詢的機(jī)密性;(2) DNS中存儲(chǔ)和發(fā)送信息的完整性;(3)底層DNS基礎(chǔ)設(shè)施的可用性;(4)濫用DNS在Internet上攻擊和分發(fā)有害內(nèi)容。隨著時(shí)間的推移,針對(duì)DNS安全問題,業(yè)界提出了DNSSec(Domain Name System Security Extensions, DNS安全擴(kuò)展)機(jī)制,使用密碼學(xué)方法解決DNS安全問題,讓客戶端對(duì)域名來源身份進(jìn)行驗(yàn)證,并且檢查來自DNS域名服務(wù)器應(yīng)答記錄的完整性,以及驗(yàn)證是否在傳輸過程中被篡改。
3擴(kuò)展分布DNS的數(shù)據(jù)中心拓?fù)浣Y(jié)構(gòu)
在數(shù)據(jù)中心現(xiàn)有拓?fù)浣Y(jié)構(gòu)中,包括Fat-Tree拓?fù)?、FiConn拓?fù)?、DCell拓?fù)?、BCube拓和撲SprintNet拓?fù)鋄4]。然而,這些拓?fù)浣Y(jié)構(gòu)都有一些局限性,它們要么擴(kuò)展得太快(即雙指數(shù)增長(zhǎng)),要么太慢,而且實(shí)施起來成本高昂。例如,對(duì)于端口數(shù)較少的交換機(jī),BCube中的節(jié)點(diǎn)數(shù)僅增加n倍。因此,對(duì)于大型數(shù)據(jù)中心,遞歸層的數(shù)量可能會(huì)非常多。另外,當(dāng)n=4時(shí),需要6層來構(gòu)建一個(gè)數(shù)據(jù)中心服務(wù)器。一個(gè)6層的BCube網(wǎng)絡(luò)需要每個(gè)服務(wù)器有6個(gè)接口卡,這使得它在實(shí)踐中變得昂貴且難以管理。因此,BCube在使用小端口數(shù)交換機(jī)時(shí)存在可擴(kuò)展性問題。相比之下,DCell拓?fù)淇梢院苋菀椎赜靡粋€(gè)4度節(jié)點(diǎn)來構(gòu)建。然而,DCell的局限性在于其雙指數(shù)可擴(kuò)展性、高布線復(fù)雜性和低效的本地重新路由算法。此外,由于每個(gè)網(wǎng)絡(luò)層之間的全連接使得一對(duì)距離較遠(yuǎn)的節(jié)點(diǎn)直接連接。因此,雖然DCell減小了整個(gè)網(wǎng)絡(luò)的直徑,但增加了布線的復(fù)雜性,使其部署困難。
相比之下,基于擴(kuò)展分布DNS的數(shù)據(jù)中心網(wǎng)絡(luò)基礎(chǔ)設(shè)施,即LaCoDa(分層連接數(shù)據(jù)中心),它結(jié)合了現(xiàn)有拓?fù)涞膬?yōu)勢(shì),同時(shí)避免了它們的局限性。LaCoDa使用小型商用交換機(jī)以靈活的方式進(jìn)行擴(kuò)展,它在較低層完全連接,在較高層部分連接。在數(shù)據(jù)中心建設(shè)中,LaCoDa使用小度數(shù)的節(jié)點(diǎn)和小端口數(shù)的交換機(jī),將整個(gè)網(wǎng)絡(luò)擴(kuò)展到數(shù)百萬臺(tái)服務(wù)器。該算法減少了非連接簇的數(shù)量,避免了冗余簇連接的重復(fù)。在LaCoDa中,每個(gè)服務(wù)器都保持其附近服務(wù)器的連接狀態(tài),并且可以導(dǎo)出可行的路由路徑。就鏈路和交換機(jī)數(shù)量而言,LaCoDa的成本大約是BCube成本的一半。例如,僅使用4端口或6端口交換機(jī)和4~6個(gè)遞歸層,LaCoDa中的節(jié)點(diǎn)數(shù)量可以達(dá)到數(shù)百萬臺(tái)服務(wù)器[5]。此外,LaCoDa的直徑呈線性增加,而DCell的直徑呈指數(shù)增加。
4擴(kuò)展分布DNS的數(shù)據(jù)中心設(shè)計(jì)方案
數(shù)據(jù)中心的規(guī)模不斷擴(kuò)大,并作為云計(jì)算、網(wǎng)絡(luò)搜索、社交網(wǎng)絡(luò)等計(jì)算平臺(tái)的重要組成部分。人們?cè)絹碓叫枰獢?shù)據(jù)中心包含越來越多的服務(wù)器,使整體計(jì)算效率不會(huì)因過多的流量而受到影響。實(shí)現(xiàn)數(shù)據(jù)中心最終性能的一個(gè)關(guān)鍵因素是數(shù)據(jù)中心網(wǎng)絡(luò),即數(shù)據(jù)中心內(nèi)服務(wù)器和交換機(jī)的互聯(lián)結(jié)構(gòu)。所構(gòu)建的數(shù)據(jù)中心由5個(gè)基本部分組成,可以將其制定為“3+2"模型。其中,“3”表示空間、動(dòng)力、制冷三個(gè)關(guān)鍵功能部件,“2”表示滅火和物理安全兩個(gè)輔助部件。因此,所構(gòu)建的數(shù)據(jù)中心是由數(shù)據(jù)中心設(shè)施、數(shù)據(jù)中心電源、配電單元和布線、數(shù)據(jù)中心冷卻、數(shù)據(jù)中心的有效空氣分布、冷卻策略、滅火和人身安全構(gòu)成。
從成本建模的角度來看,這些組件(或資產(chǎn))的折舊率相同,但它們與IaaS資產(chǎn)(服務(wù)器、存儲(chǔ)和網(wǎng)絡(luò))不同。通常,這些資產(chǎn)的使用壽命在7~ 10年。相比之下,安裝在機(jī)架中的設(shè)備,如服務(wù)器、存儲(chǔ)設(shè)備、交換機(jī)、路由器、負(fù)載均衡器等只有3~5年的使用壽命[6]o從戰(zhàn)略上講,在整個(gè)數(shù)據(jù)中心的架構(gòu)中,需要搭建兩個(gè)網(wǎng)絡(luò):其一作為生產(chǎn)網(wǎng)絡(luò)(根據(jù)實(shí)際應(yīng)用可以劃分多個(gè)VLAN);其二作為虛擬中心管理網(wǎng)絡(luò)和虛擬機(jī)動(dòng)態(tài)遷移VMotion網(wǎng)絡(luò)。另外,需要結(jié)合實(shí)際環(huán)境中的要求,將網(wǎng)卡分別設(shè)置在不同的網(wǎng)段上。在實(shí)際中,由于數(shù)據(jù)中心的主要目標(biāo)是滿足網(wǎng)絡(luò)信息數(shù)據(jù)的業(yè)務(wù)需求,因此,不同的企業(yè)需要不同規(guī)模的數(shù)據(jù)中心設(shè)施。
由于DCN的傳統(tǒng)設(shè)計(jì)以交換機(jī)為中心,因此路由只能位于交換機(jī)之間,而服務(wù)器僅充當(dāng)計(jì)算節(jié)點(diǎn)。在以交換機(jī)為中心的DCN中,沒有直接的服務(wù)器到服務(wù)器鏈路,只有服務(wù)器到交換機(jī)和交換機(jī)到交換機(jī)的鏈接。以交換機(jī)為中心的DCN傳統(tǒng)上呈樹狀,服務(wù)器位于樹狀結(jié)構(gòu)的“葉子”。這種設(shè)計(jì)隨著國(guó)內(nèi)最大的Internet接人提供商Chinanet被拆分為北方China Netcom和南方China Telecom之后,南北網(wǎng)絡(luò)的互通互聯(lián)接點(diǎn)擁塞,造成用戶丟包、延遲較大,從而導(dǎo)致訪問緩慢,甚至對(duì)于一些應(yīng)用根本無法訪問。因此,擴(kuò)展分布DNS的數(shù)據(jù)中心設(shè)計(jì)方案,建議采用一對(duì)F5 Link controller設(shè)備接在兩個(gè)出口鏈路處,實(shí)現(xiàn)由向外和由外向的出入站流量負(fù)載均衡。由外向的inbound訪問的智能性,通過Link controller提供的智能DNS解析功能,實(shí)現(xiàn)對(duì)兩條鏈路的負(fù)載均衡。
5擴(kuò)展分布DNS的數(shù)據(jù)中心部署實(shí)現(xiàn)
如上文所述,擴(kuò)展分布DNS的數(shù)據(jù)中心是由多個(gè)通信虛擬機(jī)(VM)組成,每個(gè)虛擬機(jī)都有單獨(dú)的服務(wù)器資源要求(如CPU或RAM),以及VM之間對(duì)帶寬要求的虛擬網(wǎng)絡(luò)。因此,需要進(jìn)行有效的分配,以滿足整個(gè)數(shù)據(jù)中心基礎(chǔ)設(shè)施(包括服務(wù)器、架頂式交換機(jī)和匯聚交換機(jī))中每個(gè)VM的計(jì)算、內(nèi)存和網(wǎng)絡(luò)帶寬要求。在這方面,建議遵循以下原則:首先,擴(kuò)展分布DNS的數(shù)據(jù)中心在部署建設(shè)過程中,需要準(zhǔn)備兩套DNS系統(tǒng),其中一套部署在生產(chǎn)數(shù)據(jù)中心,而另一套部署在備份中心,在數(shù)據(jù)中心運(yùn)行過程中,兩套系統(tǒng)互為備份,要充分考慮數(shù)據(jù)中心的數(shù)據(jù)安全性;其次,擴(kuò)展分布DNS的數(shù)據(jù)中心在部署建設(shè)過程中,DNS系統(tǒng)應(yīng)遵循內(nèi)外網(wǎng)單獨(dú)部署原則,即外部DNS系統(tǒng)與Internet鏈接,而內(nèi)部DNS系統(tǒng)與Internet隔離;最后,擴(kuò)展分布DNS的數(shù)據(jù)中心的拓?fù)浣Y(jié)構(gòu)應(yīng)包含三個(gè)物理服務(wù)器、兩個(gè)架頂式(ToR)交換機(jī)和兩個(gè)匯聚交換機(jī)(AggSw)。其中,從屬虛擬機(jī)sl和主虛擬機(jī)映射到同一臺(tái)物理服務(wù)器,而虛擬鏈路分配應(yīng)用多路徑路由。
眾所周知,兩階段負(fù)載平衡方案可以顯著減少數(shù)據(jù)中心的擁塞。在這些方案中,數(shù)據(jù)包通過網(wǎng)絡(luò)節(jié)點(diǎn)按比例路由到與這些節(jié)點(diǎn)相關(guān)聯(lián)的系數(shù),優(yōu)化平衡系數(shù),使網(wǎng)絡(luò)擁塞最小化。ECMP和兩相平衡協(xié)議都包括最短路徑的計(jì)算。ECMP計(jì)算節(jié)點(diǎn)之間有多條最短路徑,而兩階段平衡協(xié)議使用最短路徑將數(shù)據(jù)包傳輸?shù)街虚g節(jié)點(diǎn)和從中間節(jié)點(diǎn)傳輸數(shù)據(jù)包。由于擴(kuò)展分布DNS的數(shù)據(jù)中心采取了二層網(wǎng)絡(luò)部署措施,因此,在建設(shè)過程中也需要面對(duì)兩種情況。其一,在基于擴(kuò)展分布DNS的數(shù)據(jù)中心中,存儲(chǔ)網(wǎng)絡(luò)和二層拓展之間互聯(lián)質(zhì)量不高。此時(shí),建議業(yè)務(wù)訪問由所在數(shù)據(jù)中心自行處理,同時(shí)切換生產(chǎn)數(shù)據(jù)中心和數(shù)據(jù)備份中DNS系統(tǒng)。其二,在基于擴(kuò)展分布DNS的數(shù)據(jù)中心中,存儲(chǔ)網(wǎng)絡(luò)和二層拓展之間互聯(lián)質(zhì)量較高。此時(shí),業(yè)務(wù)訪問由數(shù)據(jù)中心系統(tǒng)部署成集群,客戶端訪問請(qǐng)求從某數(shù)據(jù)中心人口進(jìn)來后,通過負(fù)載均衡設(shè)備實(shí)現(xiàn)跨中心的負(fù)載均衡,所有的服務(wù)器都處于負(fù)載狀態(tài)。
6結(jié)束語
基于拓展分布的DNS更適合數(shù)據(jù)中心網(wǎng)絡(luò),因?yàn)樗鼈兙哂锌蓴U(kuò)展性和對(duì)故障的快速反應(yīng),與之相反,集中式DNS限制了網(wǎng)絡(luò)的規(guī)模和可靠性。換言之,集中式DNS無法計(jì)算查找表并將其發(fā)送到龐大數(shù)據(jù)中心網(wǎng)絡(luò)中的所有交換機(jī),同時(shí)無法快速響應(yīng)拓?fù)渥兓?。相比之下,由交換節(jié)點(diǎn)執(zhí)行的拓展分布的DNS能夠自然地并行執(zhí)行這些任務(wù),并支持更大的網(wǎng)絡(luò)。通過使用多個(gè)通信虛擬機(jī),可以輕松地將集中式DNS導(dǎo)人拓展分布的DNS.在實(shí)踐中,這是通過中間盒的備份路徑、負(fù)載平衡和流量重定向假節(jié)點(diǎn)來實(shí)現(xiàn)。對(duì)于數(shù)據(jù)中心的建設(shè)來說,基于拓展分布的DNS比集中式更快,同時(shí)提供相同級(jí)別的可編程性,值得行業(yè)采用。