周紅衛(wèi) 劉 娜
中國電子科技集團(tuán)公司第28研究所
目前,國外已經(jīng)有多家IT公司和研究機(jī)構(gòu)在云計算領(lǐng)域取得了國際領(lǐng)先的成果,其中最為主要的是Amazon AWS、Miscrosoft Azure、IBM、Google等,他們都各自研發(fā)了自己的云計算產(chǎn)品,并向各類用戶提供云服務(wù)。以ISO/IEC JTC1、ITU-T、DMTF、SNIA等為代表的標(biāo)準(zhǔn)化組織和協(xié)會紛紛開展云計算標(biāo)準(zhǔn)化工作,并取得實質(zhì)性進(jìn)展。如何依據(jù)現(xiàn)有的標(biāo)準(zhǔn)化成果,構(gòu)建統(tǒng)一的云測評標(biāo)準(zhǔn),并以市場發(fā)展為導(dǎo)向,逐步完善和豐富云測評框架和方法,成為推動云計算產(chǎn)業(yè)健康有序發(fā)展的基礎(chǔ)性工作之一。
國內(nèi)從2010年開始開展云計算標(biāo)準(zhǔn)化工作,組織業(yè)內(nèi)50多家單位調(diào)研云計算標(biāo)準(zhǔn)化需求,從基礎(chǔ)、技術(shù)和產(chǎn)品、服務(wù)、安全等多個方面開展10多項云計算國際標(biāo)準(zhǔn)、國家標(biāo)準(zhǔn)和行業(yè)標(biāo)準(zhǔn)的編制。伴隨國內(nèi)云計算產(chǎn)品的層出不窮,云測評工作越來越得到重視,一方面,幫助云服務(wù)提供者合規(guī)高效地建設(shè)云;另一方面,幫助用戶有效識別和選擇云計算產(chǎn)品。
本文以對云計算基礎(chǔ)設(shè)施的高彈性、高可靠、按需服務(wù)等功能性能指標(biāo)進(jìn)行測試和量化評估為需求,構(gòu)建了云計算基礎(chǔ)設(shè)施產(chǎn)品測評框架,提出云計算基礎(chǔ)設(shè)施的測試方法和多元感知負(fù)載模擬技術(shù),為云計算基礎(chǔ)設(shè)施產(chǎn)品的測試提供依據(jù)。
云計算產(chǎn)品是指為搭建云計算平臺所需要的硬件和軟件產(chǎn)品,以及云終端產(chǎn)品。其中,硬件產(chǎn)品的主要形態(tài)有云計算一體機(jī)和云存儲設(shè)備,軟件產(chǎn)品可分為基礎(chǔ)設(shè)施產(chǎn)品、平臺產(chǎn)品和應(yīng)用產(chǎn)品。目前,云計算IaaS基礎(chǔ)設(shè)施層的軟件產(chǎn)品技術(shù)較為成熟,產(chǎn)品種類包括服務(wù)器虛擬化系統(tǒng)、云計算資源管理平臺、云存儲管理系統(tǒng)和網(wǎng)絡(luò)管理系統(tǒng),如圖1所示。
圖1 云計算基礎(chǔ)設(shè)施功能框架
服務(wù)器虛擬化技術(shù)是指能夠在一臺物理服務(wù)器上運行多臺虛擬服務(wù)器的技術(shù),不僅可提高服務(wù)器資源的利用率,而且還能增強(qiáng)系統(tǒng)安全性和可靠性。在服務(wù)器虛擬化技術(shù)中,被虛擬出來的服務(wù)器稱為虛擬機(jī)(Virtual Machine,VM),負(fù)責(zé)管理虛擬機(jī)的軟件稱為虛擬機(jī)管理器(Virtual Machine Monior,VMM),又稱為服務(wù)器虛擬化系統(tǒng)。虛擬機(jī)通過軟件模擬了一個具有完整硬件系統(tǒng)功能并且可隔離運行的完整計算機(jī)系統(tǒng)。服務(wù)器虛擬化系統(tǒng)負(fù)責(zé)創(chuàng)建和管理虛擬機(jī),并支持快速配置和優(yōu)化新的和現(xiàn)有的虛擬機(jī)。
服務(wù)器虛擬化系統(tǒng)的功能測評框架分為虛擬機(jī)基本特性、虛擬機(jī)基本功能和虛擬機(jī)管理功能三部分,如圖2所示。
虛擬機(jī)基本特性測試包括虛擬機(jī)兼容性(含操作系統(tǒng)兼容性、虛擬網(wǎng)卡驅(qū)動兼容性、存儲架構(gòu)兼容性)檢測、虛擬機(jī)隔離性(含虛擬機(jī)物理隔離性、虛擬機(jī)網(wǎng)絡(luò)隔離性)檢測、虛擬機(jī)封裝性檢測、虛擬機(jī)硬件獨立性檢測。
虛擬機(jī)基本功能測試包括虛擬機(jī)運行控制操作、虛擬機(jī)模板操作、系統(tǒng)鏡像操作、虛擬機(jī)快照操作、虛擬機(jī)克隆操作、虛擬機(jī)備份操作。
虛擬機(jī)管理功能測試包括虛擬機(jī)遠(yuǎn)程連接管理、虛擬機(jī)監(jiān)控管理、虛擬機(jī)遷移管理、虛擬機(jī)CPU配置管理、虛擬機(jī)內(nèi)存配置管理、虛擬機(jī)存儲配置管理、虛擬機(jī)虛擬網(wǎng)卡配置管理、系統(tǒng)日志管理、用戶權(quán)限管理。
云計算資源管理平臺以IaaS基礎(chǔ)資源池為基礎(chǔ)。IaaS基礎(chǔ)資源池采用虛擬化技術(shù),實現(xiàn)了對底層物理資源的抽象,使其成為一個個可被靈活生成、調(diào)度、管理的基礎(chǔ)資源單位。云計算資源管理平臺則將這些資源進(jìn)行有效整合,形成一個可統(tǒng)一管理、靈活分配調(diào)度、動態(tài)遷移的基礎(chǔ)服務(wù)設(shè)施資源池。
云計算資源管理平臺的核心是實現(xiàn)對每個基礎(chǔ)資源單位(物理資源或虛擬化資源)的生命周期管理能力和對資源的管理調(diào)度能力。對資源的生命周期管理是指對資源的生成、分配、擴(kuò)展、遷移、回收的全流程管理,關(guān)鍵技術(shù)包括虛擬機(jī)自動化部署、虛擬機(jī)彈性能力提供、資源狀態(tài)監(jiān)控、度量和資源回收等。資源的管理調(diào)度能力是指對資源的全局性管理與調(diào)度,包括模板管理、接口管理、調(diào)度策略管理、資源使用量的采集和度量。
云計算資源管理平臺的管理功能測評框架分為資源管理功能要求和平臺運維功能要求兩部分,具體如圖3所示。
圖3 云計算資源管理平臺功能測評框架
云計算資源管理功能測評包括平臺管理界面、虛擬機(jī)生命周期管理、虛擬機(jī)模板管理、虛擬機(jī)快照管理、虛擬機(jī)備份管理、虛擬機(jī)批量操作、虛擬機(jī)預(yù)配置、虛擬機(jī)動態(tài)部署、虛擬機(jī)動態(tài)調(diào)度、虛擬機(jī)遠(yuǎn)程登錄、虛擬機(jī)V2V遷移、遠(yuǎn)程USB設(shè)備重定向、虛擬機(jī)網(wǎng)絡(luò)管理、虛擬網(wǎng)絡(luò)配置管理、虛擬存儲管理。
平臺運維功能測評包括物流服務(wù)器增刪管理、物流服務(wù)器遠(yuǎn)程控制、系統(tǒng)資源狀態(tài)監(jiān)控、系統(tǒng)資源監(jiān)控統(tǒng)計、系統(tǒng)監(jiān)控告警管理、平臺日志管理、用戶權(quán)限管理。
云存儲是在云計算概念上延伸和發(fā)展出來的一個新的概念,是指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能的一個系統(tǒng)。當(dāng)云計算系統(tǒng)運算和處理的核心是大量數(shù)據(jù)的存儲和管理時,云計算系統(tǒng)中就需要配置大量的存儲設(shè)備,那么云計算系統(tǒng)就轉(zhuǎn)變?yōu)橐粋€云存儲系統(tǒng),所以云存儲是一個以數(shù)據(jù)存儲和管理為核心的云計算系統(tǒng),云存儲可分為云存儲管理系統(tǒng)與數(shù)據(jù)存儲兩部分。
典型云數(shù)據(jù)存儲類型框架如圖4所示。該框架按數(shù)據(jù)結(jié)構(gòu)化程度不同從非結(jié)構(gòu)化、半結(jié)構(gòu)化和結(jié)構(gòu)化三個層次展開。云存儲管理系統(tǒng)通過不同的接口對相應(yīng)存儲類型進(jìn)行管理。云存儲管理系統(tǒng)互操作性測評主要對這些接口進(jìn)行標(biāo)準(zhǔn)符合性驗證。
圖4 典型云數(shù)據(jù)存儲類型功能測評框架
基礎(chǔ)支撐環(huán)境將各類計算存儲、安全保密、時空基準(zhǔn)、綜合管理和基礎(chǔ)數(shù)據(jù)等資源進(jìn)行動態(tài)互聯(lián),基礎(chǔ)支撐環(huán)境的性能測試主要負(fù)責(zé)測試服務(wù)器的整機(jī)性能?;A(chǔ)支撐環(huán)境性能測試指標(biāo)主要包括CPU處理性能、內(nèi)存帶寬性能、文件系統(tǒng)性能、硬盤I/O性能、網(wǎng)絡(luò)傳輸性能、數(shù)據(jù)庫處理性能、圖形顯示性能和整機(jī)性能,詳見圖5所示。
圖5 基礎(chǔ)支撐性能指標(biāo)
(1)CPU處理性能
通過多個模塊進(jìn)行科學(xué)計算的操作,包括覆蓋面很廣的一系列c函數(shù):sin、cos、sqrt、exp、log等,用于整數(shù)和浮點數(shù)的數(shù)學(xué)運算、數(shù)組訪問、條件分支和程序調(diào)用?;趯φ陀嬎慵案↑c計算的衡量要求,提出了整型計算和浮點計算兩項指標(biāo)。根據(jù)實際應(yīng)用情況,設(shè)置單線程場景和多線程場景,其中多線程場景分為:1/2物理核數(shù)的線程、1倍物理核數(shù)的線程、2倍物理核數(shù)的線程。測試指標(biāo)為數(shù)學(xué)運算、數(shù)組訪問、條件分支和程序調(diào)用多方面的加權(quán)值。
(2)內(nèi)存帶寬性能
通過設(shè)定服務(wù)器數(shù)組長度,考察內(nèi)存Copy操作帶寬性能。主要包括以下方面:
①Copy操作最為簡單,它先訪問一個內(nèi)存單元讀出其中的值,再將值寫入到另一個內(nèi)存單元。
②Scale操作先從內(nèi)存單元讀出其中的值,作一個乘法運算,再將結(jié)果寫入到另一個內(nèi)存單元。
③Add操作先從內(nèi)存單元讀出兩個值,做加法運算,再將結(jié)果寫入到另一個內(nèi)存單元。
④Triad的中文含義是將三個組合起來,在本測試中表示的意思是將Copy、Scale、Add三種操作組合起來進(jìn)行測試。
(3)文件系統(tǒng)性能
測試二進(jìn)制文件的拷貝時間,主要測試指標(biāo)為Real(實際時間)、User(用戶CPU時間)和Sys(系統(tǒng)CPU時間)。
①Real(實際時間):命令開始執(zhí)行到結(jié)束的時間,包括其他進(jìn)程所占用的時間片和進(jìn)程被阻塞時所花費的時間;
②User(用戶CPU時間):命令執(zhí)行完成花費的用戶CPU時間,即命令在用戶態(tài)中執(zhí)行時間的總和;
③Sys(系統(tǒng)CPU時間):為命令執(zhí)行完成花費的系統(tǒng)CPU時間,即命令在核心態(tài)中執(zhí)行時間的總和。
其中,用戶CPU時間和系統(tǒng)CPU時間之和為CPU時間,即命令占用CPU執(zhí)行的時間總和。在本項試驗中,主要考察CPU時間,即user(用戶 CPU time)和sys(系統(tǒng)CPU時間)之和。
(4)硬盤I/O性能
使用磁盤性能測試工具IOZONE,采用全自動模式,測試寫、重復(fù)寫、讀、重復(fù)讀不同模式下的硬盤的性能。
(5)網(wǎng)絡(luò)傳輸性能
針對基于TCP或UDP的傳輸進(jìn)行測試,主要測試指標(biāo)為單向批量傳輸性能,測試類型為TCP_STREAM,UDP_STREAM。
(6)數(shù)據(jù)庫處理性能
測試數(shù)據(jù)的導(dǎo)入導(dǎo)出、使用存儲過程插入大量數(shù)據(jù)、連續(xù)插入大量數(shù)據(jù)、批量入庫測試等。
(7)圖形顯示
測試二維和三維圖形點、線、圈操作處理能力。
(8)整機(jī)性能
設(shè)置單線程場景和多線程場景測試整機(jī)性能。
云計算平臺測試過程需要業(yè)務(wù)負(fù)載驅(qū)動,如圖6所示。一方面可以直接根據(jù)業(yè)務(wù)特征生成相應(yīng)的流量負(fù)載;另一方面可以模擬用戶使用系統(tǒng)來產(chǎn)生業(yè)務(wù)負(fù)載。
圖6 多元感知測試負(fù)載生成
(1)云計算用戶負(fù)載產(chǎn)生
云計算平臺運行規(guī)模較大,測試活動也較頻繁,通過人工使用系統(tǒng)產(chǎn)生負(fù)載有一些困難。此時需通過模擬用戶使用系統(tǒng)來產(chǎn)生業(yè)務(wù)負(fù)載。采用模擬機(jī)器人模擬用戶對系統(tǒng)的操作,一種是模擬用戶的鼠標(biāo)鍵盤操作,另一種是仿真機(jī)器人直接調(diào)用系統(tǒng)的服務(wù)接口。通過不同的策略腳本可以模擬不同的使用人員。實現(xiàn)大規(guī)模環(huán)境下的負(fù)載產(chǎn)生。模擬機(jī)器人產(chǎn)生的負(fù)載與根據(jù)業(yè)務(wù)特征生成相應(yīng)的流量負(fù)載相比,更接近真實運行環(huán)境。
(2)云平臺流量產(chǎn)生器
直接根據(jù)云平臺運行業(yè)務(wù)特征生成系統(tǒng)負(fù)載的產(chǎn)生要符合實際,針對不同典型軍事信息系統(tǒng)設(shè)計開發(fā)基于業(yè)務(wù)行為負(fù)載產(chǎn)生工具,例如模擬典型網(wǎng)絡(luò)化信息系統(tǒng)(雷達(dá)組網(wǎng)系統(tǒng))中業(yè)務(wù)流量,大批量用戶行為產(chǎn)生的流量信息模擬,重點包括情報用戶的訂閱情報請求行為、信息查詢行為、態(tài)勢分發(fā)行為等。
(3)多元感知負(fù)載產(chǎn)生
通過基于流量行為的應(yīng)用識別技術(shù),例如協(xié)議/應(yīng)用感知、內(nèi)容感知和上下文感知,識別不同的應(yīng)用類型體現(xiàn)在會話連接或數(shù)據(jù)流上的狀態(tài)各有不同的原理(與NetFlow技術(shù)相似),建立流量特征模型,通過分析會話連接流的包長、連接速率、傳輸字節(jié)量、包與包之間的間隔等信息來與流量模型對比,從而能夠通過調(diào)整模型參數(shù)來產(chǎn)生負(fù)載,如圖7所示。
圖7 業(yè)務(wù)負(fù)載產(chǎn)生器
為了更精確地建立網(wǎng)絡(luò)負(fù)載特征模型,通過精準(zhǔn)定義關(guān)鍵的參數(shù),以及為負(fù)載產(chǎn)生提供方便,不僅要描述其整體結(jié)構(gòu)框架,還需要定量描述網(wǎng)絡(luò)承載的業(yè)務(wù)。
通常情況下,網(wǎng)絡(luò)阻塞會受到下面幾個參量的影響:
①業(yè)務(wù)量的分布:表示的是業(yè)務(wù)量在各節(jié)點對之間是非對稱分布還是對稱分布的。非對稱分布稱為非均勻業(yè)務(wù)量(Non-inform Traffic),對稱分布稱為均勻業(yè)務(wù)量模式(Uniform Traffic)。
②業(yè)務(wù)總量:表示的就是在每個節(jié)點之間需要建立連接的個數(shù),該參數(shù)對非動態(tài)業(yè)務(wù)下具有十分重要的意義。
③業(yè)務(wù)量的到達(dá)和保持特性:在動態(tài)網(wǎng)絡(luò)中,連接保持時間特性和連接請求到達(dá)率會影響阻塞性能;而在電路交換網(wǎng)絡(luò)中,呼叫到達(dá)特性和呼叫保持特性會對網(wǎng)絡(luò)對呼叫的阻塞性能產(chǎn)生嚴(yán)重的影響。通常情況下,假定連接的保持特性服從負(fù)指數(shù)分布,此外,絕大多數(shù)模型的連接請求的到達(dá)服從Poisson分布。然而隨著IP業(yè)務(wù)飛速發(fā)展以及大量應(yīng)用的出現(xiàn),目前實際的網(wǎng)絡(luò)模型已經(jīng)不能夠被Poisson到達(dá)模型很好地反映。業(yè)務(wù)突發(fā)度需要利用非泊松(Non-Poisson)業(yè)務(wù)模型描述。突發(fā)性存在于大多數(shù)高層業(yè)務(wù)類型的分布中,因而Non-Poisson業(yè)務(wù)非常適合用自相(Self-SimilarTraffic)來描述。
云計算基礎(chǔ)設(shè)施產(chǎn)品測評研究以對云計算基礎(chǔ)設(shè)施的高彈性、高可靠、按需服務(wù)等功能性能指標(biāo)進(jìn)行測試和量化評估為需求,構(gòu)建了虛擬化系統(tǒng)、云計算資源管理和云存儲管理功能測評框架,提出云計算基礎(chǔ)設(shè)施的基本整機(jī)測試方法和多元感知負(fù)載模擬技術(shù),為用戶有效地識別和選擇云計算產(chǎn)品提供方法和技術(shù)支撐。