孫晨宇,鐘章隊,陳 姝
(1.北京交通大學(xué) 軌道交通控制與安全國家重點實驗室, 北京 100044;2.北京佳訊飛鴻智能科技研究院 云計算與大數(shù)據(jù)研究所, 北京 100044)
鐵路行業(yè)的發(fā)展要求與信息技術(shù)的緊密融合,既有鐵路企業(yè)的現(xiàn)狀是信息基礎(chǔ)設(shè)施規(guī)模龐大、專業(yè)繁雜、安全級別高,技術(shù)更新較慢,需要有適應(yīng)業(yè)務(wù)需求的專業(yè)云計算平臺解決方案來滿足多樣化的需求。通過自建私有云平臺無疑是好的選擇。
由于公有云是非定制化的,所以不會為用戶提供定制性能優(yōu)化服務(wù)。與之不同的私有云是針對用戶需求進行特殊設(shè)計,所以,用戶在驗收時需要有效的手段來對私有云平臺的性能進行評測,并且能夠有一個參考標(biāo)準(zhǔn)來評價不同云平臺方案的優(yōu)劣和經(jīng)濟性。
對于鐵路云計算的研究,文獻[1]論證了云計算在鐵路領(lǐng)域應(yīng)用的必要性并提出了解決方案。在性能評測方面,從最初的面向不同架構(gòu)云平臺的對比[2-4],探究不同架構(gòu)云平臺的靈活性和可擴展性。以及不同架構(gòu)云平臺底層虛擬化性能對比[5-7],比較出不同云平臺的基礎(chǔ)性能優(yōu)劣。openstack針對其基于高性能計算的性能評估和優(yōu)化[8-9],OneCPT性能測試平臺[10]對數(shù)家公有云平臺進行了性能評測。該平臺選擇默認(rèn)的虛擬機配置,采用壓力測試方法,對不同公有云主機進行平均響應(yīng)時間、每秒查詢數(shù)、磁盤吞吐量、錯誤率方面的測試,得到各個主流公允云廠商的性能參數(shù)。以上研究的測試方法及標(biāo)準(zhǔn)更多的是面向普通用戶,虛擬機配置較低,沒有進行特殊化定制,無法滿足鐵路行業(yè)的切實需求。
對于鐵路系統(tǒng)而言,由于面向多種業(yè)務(wù),所以要進行不同的資源池配置,需要有基線標(biāo)準(zhǔn)和業(yè)務(wù)需求的特殊標(biāo)準(zhǔn)來共同評價。所謂基線標(biāo)準(zhǔn),即無論云平臺硬件配置和虛擬化軟件用的是什么,虛擬機的性能都應(yīng)該達到一個標(biāo)稱的水平,虛擬化的效率應(yīng)該在一個合理的范圍,而本文正是針對目前研究中尚且缺乏的基線標(biāo)準(zhǔn)展開研究,探索私有云平臺滿足鐵路業(yè)務(wù)需求的可行性,得到一組性能基線值,為鐵路私有云性能評測提供參考標(biāo)準(zhǔn)。
根據(jù)鐵路業(yè)務(wù)的不同類型,可以將其需求分為3類:實時計算類、大數(shù)據(jù)吞吐類、可靠低時延類。(1)實時計算類包括:風(fēng)險告警、數(shù)據(jù)分析、實時調(diào)度等對實時性有高要求的業(yè)務(wù)。(2)大數(shù)據(jù)吞吐類主要針對視頻監(jiān)控等對存儲要求較高的業(yè)務(wù)。(3)可靠低時延類面向運輸生產(chǎn)中對云平臺的可靠性和低時延性有較高要求的業(yè)務(wù)。根據(jù)上述3種分類可以發(fā)現(xiàn),CPU、內(nèi)存、磁盤吞吐速率是影響云平臺能否滿足鐵路業(yè)務(wù)需求的重中之重。由于鐵路業(yè)務(wù)的高性能要求,所以建設(shè)的私有云平臺虛擬機性能雖然無法達到物理機的標(biāo)準(zhǔn),但是應(yīng)當(dāng)達到或優(yōu)于公有云高規(guī)格云主機。即物理機的利用率應(yīng)當(dāng)保持在75%以上,私有云主機性能達到公有云主機性能的90%以上,方可滿足鐵路業(yè)務(wù)的需要。
測試使用的云平臺分為兩類:基于OpenStack建設(shè)并專為京沈客專試驗線遼寧段優(yōu)化的實驗私有云;公有云平臺阿里云。通過對比二者虛擬機的CPU、內(nèi)存、磁盤存儲這3個最具代表性的性能指標(biāo),可以得到私有云平臺的服務(wù)能力。此外,通過對比私有云平臺物理機和虛擬機的性能差距,可以得到私有云的虛擬化損耗,進而得到提升優(yōu)化的空間。
實驗私有云共有15臺物理服務(wù)器,包括3臺控制節(jié)點、6臺計算節(jié)點、6臺存儲節(jié)點。具體參數(shù)配置,如表1所示。

表1 實驗用例配置信息
對于測試指標(biāo)的選用,為保證可信及一致性,我們選擇國際廣泛認(rèn)可的阿里云提供的參考指標(biāo)。如表2所示。部分指標(biāo)沒有可供計算的公式,則將實驗完成后的結(jié)果進行對比,進而得到參考值。

表2 性能測試指標(biāo)說明及公式
不同測試指標(biāo)選用國際通用及阿里云推薦使用的測試工具進行實驗。選用的實驗工具均可使測試對象達到100%負(fù)載率,并且通過各個工具的參數(shù)計算公式提前計算出測試所用參數(shù),保證實驗結(jié)果的準(zhǔn)確性。實驗工具及工具需要配置的參數(shù)選擇,如表3所示。
為保證測試結(jié)果的準(zhǔn)確及穩(wěn)定性,CPU測試均進行36次,內(nèi)存及磁盤讀寫測試均進行20次。
通過linpack和sysbench測試工具分別對虛擬機、阿里云主機、物理機進行CPU浮點計算能力和整型事務(wù)計算能力測試。浮點計算結(jié)果如圖1所示,對比結(jié)果如圖2所示。對比結(jié)果圖中的數(shù)值采用36次測量結(jié)果的平均值。

表3 實驗工具及參數(shù)選擇

圖1 CPU浮點計算實驗結(jié)果

圖2 CPU浮點計算能力對比
根據(jù)表2中的計算公式:理論每秒浮點運算數(shù)=核心數(shù)×主頻×每個時鐘周期浮點操作次數(shù),私有云理論最大每秒浮點運算數(shù)為35.2 Gflops,阿里云理論最大每秒浮點運算數(shù)為40 Gflops。
阿里云CPU利用率為30.38/40×100%≈75.95%,實驗私有云CPU利用率為26.32/35.2×100%≈74.77%。可以看到,由于實驗私有云的CPU主頻低于公有云,所以CPU的浮點計算能力弱于公有云。但是所能達到的CPU利用率極其相近,如若采用相同的CPU,實驗私有云虛擬機浮點計算能力不弱于公有云。
另外,通過虛擬機和物理機的對比,可以得到實驗私有云平臺的CPU虛擬化效率約為26.32/31.46×100%≈83.66%。
圖3、圖4分別為CPU整型事務(wù)處理能力的結(jié)果圖和對比圖。對比結(jié)果圖中的數(shù)值采用36次測量結(jié)果的平均值。圖中可以得出,即使實驗私有云CPU弱于公有云,但是實驗私有云和公有云的虛擬機在整型事務(wù)處理能力上差距不大,基本可以達到相同的水平。

圖3 CPU整型事務(wù)計算實驗結(jié)果

圖4 CPU整型事務(wù)計算能力對比
圖5、圖6、圖7分別為虛擬機、阿里云主機、物理機的內(nèi)存帶寬實驗結(jié)果圖。圖中,淺藍色線展示的是利用sysbench工具對內(nèi)存進行帶寬測試的結(jié)果,其它4條線是利用stream工具分別對內(nèi)存進行copy、scale、add和triad操作所得的可持續(xù)運行帶寬結(jié)果。圖8為虛擬機、阿里云主機、物理機的內(nèi)存帶寬對比圖。對比結(jié)果圖中的數(shù)值采用20次測量結(jié)果的平均值。

圖5 虛擬機內(nèi)存帶寬實驗結(jié)果

圖6 阿里云內(nèi)存帶寬實驗結(jié)果

圖7 物理機內(nèi)存帶寬實驗結(jié)果
根據(jù)表2中的計算公式:帶寬=內(nèi)存核心頻率×內(nèi)存總線位數(shù)×倍增系數(shù),可得私有云和阿里云理論最大帶寬均為12 800 MB/s。
由圖5~圖7可知,在對內(nèi)存進行copy、scale、add和triad操作時,虛擬機內(nèi)存利用率最高可達10 338/12 800×100%≈80.76%。阿里云內(nèi)存利用率最高可達9 666/12 800×100%≈75.51%。在對內(nèi)存進行數(shù)據(jù)傳輸操作時,虛擬機內(nèi)存利用率為8 687/12 800×100%≈67.86%。阿里云內(nèi)存利用率為7 703/12 800×100%≈60.17%。在相同的內(nèi)存配置條件下,實驗私有云的內(nèi)存表現(xiàn)優(yōu)于阿里云。

圖8 內(nèi)存帶寬對比
通過虛擬機和物理機的對比,實驗私有云的內(nèi)存虛擬化效率最低值為8 687/10 084×100%≈86.14%。
利用Fio磁盤測試工具對虛擬機、阿里云主機、物理機的磁盤進行IOPS讀寫(隨機讀寫)及順序讀寫測試。
圖9為虛擬機400 GB HDD、阿里云400 GB SSD磁盤讀寫結(jié)果。

圖9 虛擬機、阿里云400 GB磁盤讀寫結(jié)果
圖中,阿里云隨機讀寫的兩條折線幾乎完全重合,這是由于阿里云存在對磁盤的限速,所以阿里云主機IOPS讀寫非常穩(wěn)定在13 200 IOPS/s,順序讀寫吞吐量穩(wěn)定在288 MB/s,幾乎沒有波動。虛擬機的IOPS讀寫分別在20 000 IOPS/s和5 000 IOPS/s上下波動,順序讀寫吞吐量分別在840 MB/s和320 MB/s上下波動。
圖10為虛擬機800 GB HDD、阿里云800 GB SSD磁盤讀寫結(jié)果。

圖10 虛擬機、阿里云800 GB磁盤讀寫結(jié)果
阿里云主機的IOPS讀寫非常穩(wěn)定在20 000 IOPS/s,順序讀寫吞吐量穩(wěn)定在300 MB/s。虛擬機的隨機IOPS讀寫分別在19 800 IOPS/s和4 800 IOPS/s上下波動,順序讀寫吞吐量分別在800 MB/s和300 MB/s上下波動。
圖11為物理機800 GB HDD磁盤讀寫結(jié)果。圖12為虛擬機、阿里云主機、物理機磁盤讀寫能力對比圖,對比結(jié)果圖中的數(shù)值采用20次測量結(jié)果的平均值。
通過對比圖可以看到,阿里云所能達到的最大IOPS數(shù)和吞吐量隨著磁盤容量的增加而增大,直到達到其聲稱的標(biāo)準(zhǔn),而實驗私有云的讀寫能力比較穩(wěn)定,磁盤容量并不會對讀寫能力造成過多影響。由于實驗私有云采用的ceph存儲結(jié)構(gòu),其在順序讀方面可以達到阿里云SSD的2.5倍以上。隨機讀、順序?qū)懩芰σ不九c阿里云持平。在隨機寫方面,雖然不能達到SSD的性能,但是仍然比普通HDD的性能高7倍左右。

圖11 物理機800 GB HDD磁盤讀寫結(jié)果

圖12 虛擬機、阿里云主機、物理機磁盤讀寫能力對比
由此可見,采用ceph存儲架構(gòu)的實驗私有云平臺,雖然使用普通HDD作為存儲磁盤,但是由于ceph的分布式存儲特性,其磁盤讀寫性能已經(jīng)遠(yuǎn)遠(yuǎn)超過普通HDD,甚至在順序讀寫、隨機讀方面已經(jīng)達到甚至超過公有云提供的SSD。
通過以上實驗結(jié)果可以看到,針對鐵路特別優(yōu)化的私有云性能完全可以滿足不同業(yè)務(wù)的需求。CPU、內(nèi)存虛擬化效率可以達到85%左右,與物理機性能差距較小,基本可以達到實時計算的需求。在磁盤讀寫方面,由于采用特別優(yōu)化的Ceph存儲結(jié)構(gòu),只需要采購普通機械硬盤也可以達到媲美公有云固態(tài)硬盤的性能標(biāo)準(zhǔn),在減少花銷的基礎(chǔ)上,最大化提升磁盤的性能,完全滿足大數(shù)據(jù)吞吐的需求。綜上所述,文中所提出的基線標(biāo)準(zhǔn)即物理機的利用率應(yīng)當(dāng)保持在75%以上,私有云主機性能達到同規(guī)格公有云主機性能的90%以上的設(shè)想成立,實驗私有云平臺各項指標(biāo)達到預(yù)期設(shè)想,該性能評測方法可以適配于鐵路私有云平臺。但是因為各鐵路段采購的設(shè)備不同,所以此方法需要在更多的鐵路段中進行實驗以保證易用性和穩(wěn)定性。
目前,此實驗云平臺已經(jīng)部署在京沈客專試驗線遼寧段中,我們將繼續(xù)關(guān)注該評測方法在私有云平臺中的表現(xiàn),適時調(diào)整,深度優(yōu)化,保證評測方法的可用性、準(zhǔn)確性和穩(wěn)定性。