王玉璽++周文軍
(江蘇第二師范學(xué)院數(shù)學(xué)與信息技術(shù)學(xué)院, 江蘇 南京 210013)
摘 要: 數(shù)據(jù)中心對(duì)存儲(chǔ)和計(jì)算的要求不斷提高,傳統(tǒng)的小型機(jī)構(gòu)架出現(xiàn)弊端,以小型機(jī)服務(wù)器性能和數(shù)據(jù)中心業(yè)務(wù)需求分析為基礎(chǔ),結(jié)合主流架構(gòu)和技術(shù),研究了數(shù)據(jù)中心去小型機(jī)的必要性和可行性,提出了基于X86開放平臺(tái)架構(gòu)、基于虛擬化構(gòu)架和基于公有云替代等三種替代方法,并根據(jù)實(shí)際應(yīng)用場景進(jìn)行了對(duì)比測試實(shí)驗(yàn)。結(jié)果表明:在數(shù)據(jù)中心,X86構(gòu)架平臺(tái)在設(shè)計(jì)合理的情況下,已具備替代小型機(jī)架構(gòu)的能力。
關(guān)鍵詞: 小型機(jī); x86; 數(shù)據(jù)中心; 虛擬化
中圖分類號(hào):TP302 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2016)12-09-04
Abstract: With the increasing requirements of datacenter for storage and calculation, the disadvantages of traditional minicomputer have appeared. Combining with the mainstream architecture and technology of datacenter, the possibility and necessity of removing minicomputer from datacenter are studied, through the analysis of minicomputer servers' performance and datacenter's business demands. Three alternative solutions including the architecture based on X86 open platform, the architecture based on virtualization and the public cloud substitute mode, are presented. And the comparison tests have been done according to the actual application scenario. The results show that with reasonable design, the architecture based on X86 open platform has the ability to replace the minicomputer architecture.
Key words: minicomputer; x86; datacenter; virtualization
0 引言
隨著數(shù)據(jù)中心的發(fā)展,尤其是云計(jì)算技術(shù)的出現(xiàn),數(shù)據(jù)中心逐漸演變成集大數(shù)據(jù)存儲(chǔ)、云服務(wù)為一體的高性能計(jì)算機(jī)資源池,在資源池化的基礎(chǔ)上開發(fā)計(jì)算、存儲(chǔ)、運(yùn)維、管理等一系列的功能,可有效提高單位數(shù)量服務(wù)器的使用率[1]。傳統(tǒng)數(shù)據(jù)中心核心業(yè)務(wù)和關(guān)鍵業(yè)務(wù)的計(jì)算及存儲(chǔ)任務(wù)主要由RISC小型機(jī)完成,隨著X86處理器性能及可靠性提升,這些業(yè)務(wù)正在逐步遷移至X86平臺(tái)。根據(jù)最新市場報(bào)告,近年來RISC小型機(jī)市場占有率從70%降至不足20%[2],數(shù)據(jù)中心“去小型機(jī)化”趨勢明顯。同時(shí),數(shù)據(jù)中心的數(shù)據(jù)計(jì)算和存儲(chǔ)需求總量迅速膨脹,將本地?cái)?shù)據(jù)中心的計(jì)算和存儲(chǔ)單元遷移至“公有云”環(huán)境的研究和實(shí)施工作也在逐步的展開。
1 數(shù)據(jù)中心小型機(jī)架構(gòu)現(xiàn)狀
傳統(tǒng)數(shù)據(jù)中心選擇小型機(jī),一般作為重要數(shù)據(jù)庫及核心業(yè)務(wù)的主要計(jì)算和存儲(chǔ)單元[3]。出于設(shè)備的重要性和運(yùn)維管理的難度,在小型機(jī)平臺(tái)搭建完成后若干年內(nèi)很少對(duì)其進(jìn)行大規(guī)模升級(jí)。隨著數(shù)據(jù)中心業(yè)務(wù)系統(tǒng)的擴(kuò)張,非核心業(yè)務(wù)服務(wù)器會(huì)逐步升級(jí)、淘汰,但運(yùn)行著核心業(yè)務(wù)的小型機(jī)卻較難及時(shí)升級(jí),導(dǎo)致小型機(jī)系統(tǒng)設(shè)備陳舊且超負(fù)荷運(yùn)行,硬件故障率提高,數(shù)據(jù)丟失和業(yè)務(wù)中斷的風(fēng)險(xiǎn)加大。小型機(jī)硬件和操作系統(tǒng)常來自同一廠商,屬于封閉專用的計(jì)算機(jī)系統(tǒng),替換速度慢。針對(duì)小型機(jī)進(jìn)行部件升級(jí)時(shí),往往設(shè)備、配件已經(jīng)停產(chǎn);而若對(duì)設(shè)備進(jìn)行整體淘汰更新,新系統(tǒng)建設(shè)成本高,甚至需要對(duì)軟件架構(gòu)、業(yè)務(wù)邏輯進(jìn)行重新梳理和升級(jí),且在未來幾年內(nèi)又會(huì)遇到同樣的設(shè)備老化等問題,制約著其業(yè)務(wù)擴(kuò)展的能力。基于上述原因,研究一種易于業(yè)務(wù)部署且數(shù)據(jù)遷移快捷的小型機(jī)替代方案尤為重要,本文提出了三種替代方法。
2 數(shù)據(jù)中心小型機(jī)替代方法
2.1 基于x86開放平臺(tái)的架構(gòu)
傳統(tǒng)數(shù)據(jù)中心普遍采用小型機(jī)服務(wù)器加FC-SAN存儲(chǔ)架構(gòu),支撐核心、關(guān)鍵業(yè)務(wù)中的大型數(shù)據(jù)庫系統(tǒng),這類業(yè)務(wù)對(duì)CPU性能、磁盤性能和存儲(chǔ)網(wǎng)絡(luò)性能均有較高要求[4],現(xiàn)有做法是依靠堆積小型機(jī)硬件或升級(jí)到大型機(jī)來滿足性能需求,而在小型機(jī)的替代方法中應(yīng)有效保證以上三者性能。
2.1.1 架構(gòu)設(shè)計(jì)
結(jié)合數(shù)據(jù)中心對(duì)CPU、磁盤和存儲(chǔ)網(wǎng)絡(luò)性能需求,提出一種基于x86開放架構(gòu)的小型機(jī)替代方法:計(jì)算節(jié)點(diǎn)使用X86服務(wù)器組建計(jì)算集群,存儲(chǔ)節(jié)點(diǎn)使用x86服務(wù)器配置PCIE Flash存儲(chǔ)提供高IO性能的存儲(chǔ)服務(wù);計(jì)算單元與存儲(chǔ)單元通過Infiniband網(wǎng)絡(luò)構(gòu)建低延遲、高帶寬、冗余性的存儲(chǔ)網(wǎng)絡(luò),架構(gòu)方法如圖1。設(shè)計(jì)方法采用三層架構(gòu):分布式存儲(chǔ)層、網(wǎng)絡(luò)層、計(jì)算層。
分布式存儲(chǔ)層:使用x86服務(wù)器,本地磁盤實(shí)現(xiàn)共享存儲(chǔ)。設(shè)計(jì)思想是,通過軟件對(duì)硬件存儲(chǔ)單元統(tǒng)一管理和分配,實(shí)現(xiàn)存儲(chǔ)資源統(tǒng)一交付,便于存儲(chǔ)容量的擴(kuò)展,同時(shí)解決了存儲(chǔ)服務(wù)器對(duì)硬件過于依賴的問題。利用多臺(tái)廉價(jià)x86服務(wù)器對(duì)磁盤IO壓力進(jìn)行均衡負(fù)載,利用閃存技術(shù)作為高速緩存或直接存儲(chǔ)介質(zhì),解決存儲(chǔ)的IO瓶頸。
網(wǎng)絡(luò)層:基于Infiniband架構(gòu)的存儲(chǔ)網(wǎng)絡(luò)提供了冗余鏈路,兼顧了高帶寬和低延遲,尤其適用于大型數(shù)據(jù)庫的應(yīng)用。
計(jì)算層:基于x86服務(wù)器設(shè)計(jì),為解決開放x86平臺(tái)硬件可靠性不足的問題采用多計(jì)算節(jié)點(diǎn)設(shè)計(jì),多節(jié)點(diǎn)間實(shí)現(xiàn)負(fù)載均衡且節(jié)點(diǎn)間互為備份。該設(shè)計(jì)方法優(yōu)勢在于,物理硬件故障不影響業(yè)務(wù)的正常交付,解決了業(yè)務(wù)對(duì)硬件資源的高依賴性,同時(shí)方便基礎(chǔ)架構(gòu)的升級(jí)和淘汰。
2.1.2 關(guān)鍵技術(shù)
分布式存儲(chǔ)架構(gòu)中的數(shù)據(jù)可靠性借助HA方案來解決,如圖2所示。圖2中的DRDB(Distributed Replicated Block Device)是一個(gè)基于軟件實(shí)現(xiàn)的在服務(wù)器間進(jìn)行塊設(shè)備數(shù)據(jù)同步復(fù)制的解決方案[5],這種策略通過網(wǎng)絡(luò)在服務(wù)器之間實(shí)現(xiàn)塊設(shè)備同步,輔助Heartbeat HA實(shí)現(xiàn)服務(wù)器之間的動(dòng)態(tài)角色切換,可以有效規(guī)避因物理服務(wù)器損壞造成的分布式存儲(chǔ)中的元數(shù)據(jù)丟失。
2.2 基于虛擬化的架構(gòu)
傳統(tǒng)數(shù)據(jù)中心的小型機(jī)除了作為大型數(shù)據(jù)庫服務(wù)器外,也常作為關(guān)鍵核心業(yè)務(wù)的應(yīng)用服務(wù)器,常出現(xiàn)性能過剩的情況。小型機(jī)服務(wù)器在硬件條件允許的情況下,可使用分區(qū)技術(shù)構(gòu)建不同的邏輯服務(wù)器分配給多個(gè)應(yīng)用環(huán)境使用。但是這種方法缺少統(tǒng)一的調(diào)度措施,對(duì)硬件資源的分配、回收、再利用靈活度較低,且較難實(shí)現(xiàn)應(yīng)用的遷移。
利用虛擬化技術(shù),基于x86服務(wù)器構(gòu)建資源池,可以實(shí)現(xiàn)硬件資源的動(dòng)態(tài)分配、回收,在資源池中部署的應(yīng)用系統(tǒng),可方便快捷的跨硬件遷移。有效地解決了資源浪費(fèi)、資源分配回收難和管理繁雜等問題。以VMware產(chǎn)品構(gòu)建虛擬化平臺(tái)為研究對(duì)象,如圖3使用ESXI作為x86服務(wù)器底層操作系統(tǒng),首先構(gòu)建出虛擬化集群,實(shí)現(xiàn)物理資源的池化,資源池使用統(tǒng)一的調(diào)度管理平臺(tái)實(shí)現(xiàn)資源動(dòng)態(tài)分配、回收。動(dòng)態(tài)遷移[6]技術(shù)提升了資源池中應(yīng)用系統(tǒng)的可靠性,滿足應(yīng)用在不停機(jī)情況下,在x86服務(wù)器之間動(dòng)態(tài)“漂移”。
當(dāng)虛擬化x86資源池進(jìn)行大規(guī)模部署后,一個(gè)虛擬化集群可同時(shí)管理上千臺(tái)x86服務(wù)器?;谶@種大型的x86虛擬化資源池可作為實(shí)現(xiàn)“私有云”的基礎(chǔ)設(shè)施[7],以此為基礎(chǔ)進(jìn)行管理和優(yōu)化實(shí)現(xiàn)軟件定義的數(shù)據(jù)中心(SDDC)。
2.3 基于公有云的架構(gòu)
與前述x86虛擬化資源池或私有云相比,公有云由第三方企業(yè)提供的“私有云”服務(wù),通過共享的方式對(duì)資源池進(jìn)行使用。公有云企業(yè)通過計(jì)費(fèi)方式交付虛擬服務(wù)器、虛擬網(wǎng)絡(luò)、虛擬存儲(chǔ)、軟件接口、安全服務(wù)給租戶使用。根據(jù)服務(wù)類型云計(jì)算可以分為三個(gè)部分:基礎(chǔ)設(shè)施即服務(wù)(Iaas)、平臺(tái)即服務(wù)(Paas)、軟件即服務(wù)(Saas)。由以上概念出發(fā),利用公有云資源替代小型機(jī)的方案,應(yīng)首先考慮Iaas層面的選型,即對(duì)自身業(yè)務(wù)需求進(jìn)行統(tǒng)計(jì)和分類,遷移至公有云的業(yè)務(wù)是否屬于核心業(yè)務(wù)或關(guān)鍵業(yè)務(wù);同時(shí)對(duì)業(yè)務(wù)的計(jì)算、存儲(chǔ)、網(wǎng)絡(luò)、安全需求做全面分析;根據(jù)分析結(jié)果按需購買公有云的資源和服務(wù)。
3 實(shí)驗(yàn)測試
3.1 基于x86開放平臺(tái)的架構(gòu)壓力測試環(huán)境
針對(duì)傳統(tǒng)數(shù)據(jù)中心中的大型數(shù)據(jù)庫應(yīng)用場景,在本文提出的x86開放平臺(tái)架構(gòu)基礎(chǔ)上,進(jìn)行數(shù)據(jù)庫壓力測試,測試工具選擇Apache Jmeter。單臺(tái)計(jì)算節(jié)點(diǎn)配置雙路Intel E5-2670 cpu,內(nèi)存DDR3 128G;單臺(tái)存儲(chǔ)節(jié)點(diǎn)cpu為雙路Intel E5-2620,內(nèi)存DDR3 48G,本地存儲(chǔ)使用400G PCI-Flash。壓力測試結(jié)果如表1所示。
由表1的測試數(shù)據(jù),x86開放平臺(tái)架構(gòu)在硬件滿足需求、軟件及架構(gòu)配置合理的情況下,可滿足傳統(tǒng)數(shù)據(jù)中心的大型數(shù)據(jù)庫業(yè)務(wù)要求。
3.2 虛擬化替代方法性能測試環(huán)境
Power服務(wù)器(CPU為Power7 v2.1@4.2GHz)與X86服務(wù)器(CPU為E5-2630L v2@2.40GHz),均使用同一種虛擬化技術(shù),每臺(tái)服務(wù)器各部署一個(gè)虛擬機(jī),分配1個(gè)虛擬CPU和1G內(nèi)存。使用相同的腳本進(jìn)行測試,取Excel Throughput、Shell Scripts、System Call測試數(shù)據(jù)進(jìn)行對(duì)比分析。
3.3 公有云替代方法性能測試環(huán)境
使用本地X86服務(wù)器虛擬機(jī)與公有云虛擬機(jī)性能對(duì)比測試,操作系統(tǒng)均選擇Centos 6.7 x64系統(tǒng),選擇不同的內(nèi)存配置,進(jìn)行對(duì)比測試。使用相同的腳本進(jìn)行測試,取Excel Throughput、Shell Scripts、System Call測試數(shù)據(jù)進(jìn)行對(duì)比分析。
3.4 實(shí)驗(yàn)結(jié)果分析
分析測試實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),在CPU內(nèi)核數(shù)與內(nèi)存數(shù)相同的情況下x86服務(wù)器的三項(xiàng)性能指標(biāo)比Power服務(wù)器高出5%至357%,測試結(jié)果顯示,同樣的虛擬化底層系統(tǒng),基于X86的虛擬化性能優(yōu)于基于power的虛擬化性能,對(duì)比結(jié)果如圖4所示。
數(shù)據(jù)同時(shí)顯示,服務(wù)器使用同級(jí)別的Intel cpu和power cpu時(shí),在虛擬化計(jì)算性能上x86服務(wù)器性能優(yōu)于小型機(jī)服務(wù)器,因此在需要對(duì)計(jì)算資源進(jìn)行池化的應(yīng)用環(huán)境中,x86服務(wù)器可以替代小型機(jī)服務(wù)器,主流的虛擬化技術(shù)和產(chǎn)品對(duì)x86平臺(tái)的支撐更優(yōu),兼容性更好。
在CPU內(nèi)核數(shù)相同的情況下,當(dāng)所測的虛擬服務(wù)器內(nèi)存從512MB提升至1G時(shí),三項(xiàng)性能指標(biāo)均有一定的提升,提升幅度為20%至55.9%。因此在X86平臺(tái)虛擬化架構(gòu)下,合理增加內(nèi)存數(shù)可以有效提升虛擬機(jī)的計(jì)算性能,性能提升幅度如圖5所示。
綜合測試結(jié)果可知,相比傳統(tǒng)的小型機(jī)在虛擬化方面,x86架構(gòu)具有更強(qiáng)的性能優(yōu)勢。數(shù)據(jù)中心使用X86的虛擬化架構(gòu)設(shè)計(jì)來替代小型機(jī)架構(gòu)具有可行性。在實(shí)際應(yīng)用中,應(yīng)針對(duì)不同業(yè)務(wù)的存儲(chǔ)需求和計(jì)算需求,對(duì)基礎(chǔ)架構(gòu)進(jìn)行科學(xué)的規(guī)劃和設(shè)計(jì),進(jìn)而充分發(fā)揮x86平臺(tái)的虛擬化性能優(yōu)勢。
4 結(jié)束語
本文結(jié)合傳統(tǒng)數(shù)據(jù)中心小型機(jī)架構(gòu)的多種業(yè)務(wù)類型和應(yīng)用場景,進(jìn)行了小型機(jī)替代方法研究?;趚86開放平臺(tái)的架構(gòu),設(shè)計(jì)出適合數(shù)據(jù)中心大型數(shù)據(jù)庫應(yīng)用的小型機(jī)替代方法;針對(duì)數(shù)據(jù)中心非數(shù)據(jù)庫應(yīng)用系統(tǒng),研究討論了基于x86虛擬化和公有云架構(gòu)的小型機(jī)替代方法。對(duì)三種替代方法進(jìn)行了實(shí)驗(yàn)測試,并對(duì)實(shí)驗(yàn)測試結(jié)果進(jìn)行了分析歸納,證明基于x86的架構(gòu)設(shè)計(jì)在數(shù)據(jù)中心多種業(yè)務(wù)類型和應(yīng)用場景中,已經(jīng)具備替代傳統(tǒng)小型機(jī)架構(gòu)的能力。
參考文獻(xiàn)(References):
[1] 李丹,陳貴海.數(shù)據(jù)中心網(wǎng)絡(luò)的研究進(jìn)展與趨勢[J].計(jì)算機(jī)學(xué)
報(bào),2014.37(2):259-274
[2] 張振倫.基于云計(jì)算的去小型機(jī)研究[J].互聯(lián)網(wǎng)天地,2014.4.
[3] 史文路,胡平.雙機(jī)熱備份系統(tǒng)的研究與進(jìn)展[J].微處理機(jī),
2008.3:180-182
[4] Lee S, Moon B, Park C. A Case for flash memory SSD in
enterprise database applications[C]. Proc of ACM SIGNOD'08 New York: ACM,2008:1075-1086
[5] M Riasetiawan,A Ashari,I Endrayanto. Distributed
Replicated Block Device (DRDB) implementation on cluster storage data migration [C]// Anonymous. 2015 International Conference on Data and Software Engineering. Yogyakarta: IEEE,2015:93-97
[6] 常德成,徐高潮.虛擬機(jī)動(dòng)態(tài)遷移方法[J].計(jì)算機(jī)應(yīng)用研究,
2013.30(4):971-976
[7] 曾賽峰,朱立谷,李強(qiáng)等.企業(yè)級(jí)私有云中的虛擬化實(shí)現(xiàn)[J].計(jì)
算機(jī)工程與應(yīng)用,2010.46(36):70-73