方躍龍
(國(guó)家管網(wǎng)集團(tuán)東部原油儲(chǔ)運(yùn)有限公司,徐州221008)
IaaS(Infrastructure as a Service),即基礎(chǔ)設(shè)施即服務(wù)[1],指把計(jì)算機(jī)、存儲(chǔ)、網(wǎng)絡(luò)等各類(lèi)IT基礎(chǔ)資源作為一種服務(wù)通過(guò)互聯(lián)網(wǎng)絡(luò)向用戶(hù)提供,用戶(hù)不必構(gòu)建自己的數(shù)據(jù)中心。在云計(jì)算的三種服務(wù)類(lèi)型(SaaS、PaaS、IaaS)中,IaaS具有最高的靈活性與對(duì)基礎(chǔ)資源的管控能力[2]。
隨著企業(yè)信息化技術(shù)的不斷提高,信息數(shù)據(jù)的安全性和完整性對(duì)企業(yè)的重要意義也愈發(fā)顯著。利用IaaS云平臺(tái)技術(shù)搭建災(zāi)備云平臺(tái),成了各大廠商的第一選擇。當(dāng)前國(guó)內(nèi)的IaaS市場(chǎng)主要有阿里云、騰訊云、百度云、中國(guó)電信、AWS(中國(guó))、華為云、金山云等諸多廠商產(chǎn)品。面對(duì)如此繁雜的云平臺(tái)產(chǎn)品的,用戶(hù)需要對(duì)其進(jìn)行POC功能性測(cè)試,選出符合自身需求的云平臺(tái)。
POC(Proof Of Concept),即概念驗(yàn)證。通常是企業(yè)進(jìn)行產(chǎn)品選型時(shí)或開(kāi)展外部實(shí)施項(xiàng)目前,進(jìn)行的一種產(chǎn)品或供應(yīng)商能力驗(yàn)證工作[3]。進(jìn)行災(zāi)備云平臺(tái)的POC測(cè)試,需要首先掌握用戶(hù)對(duì)災(zāi)備平臺(tái)的性能、實(shí)現(xiàn)功能和擴(kuò)展的需求,在此基礎(chǔ)上,在測(cè)試用的云平臺(tái)上模擬真實(shí)情況下數(shù)據(jù)的運(yùn)行,觀察在一定用戶(hù)數(shù)據(jù)量下云平臺(tái)的運(yùn)行情況,檢查云平臺(tái)是否能實(shí)現(xiàn)預(yù)想功能,并根據(jù)用戶(hù)未來(lái)業(yè)務(wù)擴(kuò)展的需求適當(dāng)加大數(shù)據(jù)量,查看此時(shí)云平臺(tái)的性能和承載能力。然而由于當(dāng)前云計(jì)算技術(shù)不斷發(fā)展,針對(duì)云平臺(tái)的測(cè)試指標(biāo)和方法仍不完善,因此本文從性能測(cè)試角度出發(fā),僅關(guān)注平臺(tái)基本性能而不涉及底層架構(gòu),提出了一套針對(duì)基于IaaS的災(zāi)備云平臺(tái)的通用POC測(cè)試指標(biāo)及其測(cè)試方法,方便用戶(hù)快速有效地完成災(zāi)備云平臺(tái)的性能測(cè)試,選出合適的產(chǎn)品。
根據(jù)《YD/T 2850-2015災(zāi)備系統(tǒng)性能測(cè)試方法》標(biāo)準(zhǔn)要求,衡量災(zāi)備平臺(tái)主要采用兩個(gè)主要的容災(zāi)指標(biāo)RTO和RPO作為評(píng)判依據(jù)[4]。RTO(Recovery Time Object,恢復(fù)時(shí)間目標(biāo))是指災(zāi)難發(fā)生后,業(yè)務(wù)從停頓到必須恢復(fù)的時(shí)間要求。RPO(Recovery Point Object,恢復(fù)點(diǎn)目標(biāo)),是指災(zāi)難發(fā)生后,災(zāi)備系統(tǒng)能夠把數(shù)據(jù)恢復(fù)到災(zāi)難發(fā)生前的時(shí)間點(diǎn)要求。
對(duì)于企業(yè)來(lái)說(shuō),災(zāi)備平臺(tái)的選擇需要在滿(mǎn)足RTO和RPO需求的前提下,選擇合適的災(zāi)備技術(shù),一方面要考慮如何保障自己核心數(shù)據(jù)資產(chǎn)不丟失,一方面要保障核心業(yè)務(wù)如何在最短時(shí)間內(nèi)恢復(fù)。因此,一套合格的災(zāi)備系統(tǒng)應(yīng)該滿(mǎn)足以下建設(shè)要求:
(1)可靠性與實(shí)用性相結(jié)合,可靠性是災(zāi)備平臺(tái)建設(shè)和服務(wù)得以延續(xù)的基礎(chǔ),同時(shí)災(zāi)備云平臺(tái)設(shè)備選型、設(shè)計(jì)規(guī)劃、運(yùn)維方案等也要考慮現(xiàn)場(chǎng)實(shí)際情況。
(2)安全性,要充分考慮信息數(shù)據(jù)的安全性,建立有效的安全機(jī)制,保障數(shù)據(jù)傳輸安全;
(3)快速性,災(zāi)備云平臺(tái)的數(shù)據(jù)備份和災(zāi)備恢復(fù)時(shí)間要短,同時(shí)也要盡可能地減少對(duì)主機(jī)資源和網(wǎng)絡(luò)帶寬的消耗;
(4)可擴(kuò)展性,災(zāi)備云平臺(tái)能夠兼容主流應(yīng)用系統(tǒng)和數(shù)據(jù)庫(kù)部署方式,滿(mǎn)足用戶(hù)業(yè)務(wù)擴(kuò)展要求;
(5)統(tǒng)一運(yùn)維管理,具有統(tǒng)一的運(yùn)營(yíng)管理平臺(tái),為用戶(hù)提供統(tǒng)一的資源分析理、運(yùn)維監(jiān)控等功能。
根據(jù)災(zāi)備云平臺(tái)整體建設(shè)要求,為方便用戶(hù)從眾多云平臺(tái)產(chǎn)品中進(jìn)行選擇,我們分別從云主機(jī)、云平臺(tái)網(wǎng)絡(luò)、云平臺(tái)性能三個(gè)方面,在不考慮底層硬件架構(gòu)的前提下,列出了災(zāi)備云平臺(tái)POC功能性常用的測(cè)試項(xiàng)目、測(cè)試方法和預(yù)期成果。
2.1.1 云主機(jī)密鑰對(duì)登錄
測(cè)試方法:新建一臺(tái)云主機(jī),配置云主機(jī)的登錄方式使用創(chuàng)建的密鑰對(duì)。云主機(jī)創(chuàng)建完成后,使用SSH(Secure Shell,安全外殼協(xié)議)客戶(hù)端加載創(chuàng)建的密鑰對(duì)登錄云主機(jī),測(cè)試是否登錄成功,同時(shí)檢查此時(shí)是否禁用SSH密碼登錄。
預(yù)期結(jié)果:使用SSH客戶(hù)端加載創(chuàng)建的密鑰對(duì)登錄服務(wù)器成功,云主機(jī)sshd服務(wù)配置禁用了密碼登錄。
2.1.2 云主機(jī)規(guī)格變更
測(cè)試內(nèi)容:①創(chuàng)建一臺(tái)云主機(jī),分別掛載基于分布式塊存儲(chǔ)的云硬盤(pán),創(chuàng)建NAS存儲(chǔ),掛載到云主機(jī);②對(duì)云主機(jī)的CPU和內(nèi)存進(jìn)行擴(kuò)容,擴(kuò)容成功;③擴(kuò)容已掛載的基于分布式塊存儲(chǔ)的云硬盤(pán),擴(kuò)容成功;④擴(kuò)容掛載到云主機(jī)的NAS存儲(chǔ),擴(kuò)容成功;⑤為云主機(jī)增加一個(gè)塊虛擬網(wǎng)卡,指定或者自動(dòng)獲取虛擬網(wǎng)卡的IP地址,IP地址配置正確。
預(yù)期結(jié)果:①云主機(jī)CPU和內(nèi)存擴(kuò)容成功;②云主機(jī)掛載的分布式塊存儲(chǔ)擴(kuò)容成功;③云主機(jī)掛載的NAS存儲(chǔ)擴(kuò)容成功;④網(wǎng)卡增加成功。
2.1.3 云主機(jī)整機(jī)冷(熱)遷移
測(cè)試方法:在云平臺(tái)創(chuàng)建一臺(tái)云主機(jī),查看云主機(jī)所在宿主節(jié)點(diǎn)。然后對(duì)該主機(jī)執(zhí)行冷(熱)遷移操作,將云主機(jī)遷移到另外的宿主節(jié)點(diǎn)。
預(yù)期結(jié)果:云主機(jī)遷移操作成功,云主機(jī)啟動(dòng)運(yùn)行正常,網(wǎng)絡(luò)配置未改變。
2.1.4 云主機(jī)備份功能
測(cè)試方法:創(chuàng)建一臺(tái)云主機(jī),掛載一塊云硬盤(pán)作為數(shù)據(jù)盤(pán)。
①在開(kāi)機(jī)狀態(tài)下為系統(tǒng)盤(pán)和數(shù)據(jù)盤(pán)創(chuàng)建手工備份,備份完成后,刪除云主機(jī)上的文件,通過(guò)備份進(jìn)行恢復(fù)操作,已刪除文件可以找回;②創(chuàng)建定時(shí)備份任務(wù),確認(rèn)在云主機(jī)開(kāi)機(jī)狀態(tài)下備份成功,備份成功后,刪除云主機(jī)上的文件,通過(guò)備份進(jìn)行恢復(fù)操作,已刪除文件可以找回。
預(yù)期結(jié)果:支持手動(dòng)和定時(shí)創(chuàng)建云主機(jī)備份,云硬盤(pán)上的數(shù)據(jù)刪除后通過(guò)云硬盤(pán)備份功能可以進(jìn)行數(shù)據(jù)恢復(fù),同時(shí)云主機(jī)的IP等未發(fā)生變化。
2.1.5 云硬盤(pán)的快照備份與恢復(fù)
測(cè)試方法:①創(chuàng)建一臺(tái)云主機(jī),掛載一塊云硬盤(pán)作為數(shù)據(jù)盤(pán),在系統(tǒng)盤(pán)和數(shù)據(jù)盤(pán)寫(xiě)入文件;②分別為系統(tǒng)盤(pán)和數(shù)據(jù)盤(pán)創(chuàng)建云硬盤(pán)快照,創(chuàng)建成功后,刪除數(shù)據(jù)盤(pán)和系統(tǒng)盤(pán)上的寫(xiě)入文件;③使用創(chuàng)建的云硬盤(pán)快照恢復(fù)云主機(jī)的數(shù)據(jù)盤(pán)和系統(tǒng)盤(pán),恢復(fù)后,啟動(dòng)云主機(jī)驗(yàn)證之前寫(xiě)入文件是否存在。
預(yù)期結(jié)果:云硬盤(pán)快照創(chuàng)建成功,數(shù)據(jù)刪除后通過(guò)云硬盤(pán)快照功能可以進(jìn)行數(shù)據(jù)恢復(fù),同時(shí)云主機(jī)的IP等基本信息未發(fā)生變化。
2.2.1 VXLAN網(wǎng)絡(luò)支持
測(cè)試方法:通過(guò)云平臺(tái)控制臺(tái),創(chuàng)建1個(gè)基于VXLAN的VPC網(wǎng)絡(luò),并VPC下創(chuàng)建2個(gè)子網(wǎng),再在每個(gè)子網(wǎng)下分別創(chuàng)建一臺(tái)云主機(jī),并在2臺(tái)云主機(jī)的安全組配置上開(kāi)放ICMP協(xié)議。分別在2臺(tái)云主機(jī)上通過(guò)Ping工具相互進(jìn)行測(cè)試,測(cè)試是否可以到達(dá)對(duì)端。
預(yù)期結(jié)果:支持VXLAN網(wǎng)絡(luò),主機(jī)之間通過(guò)互ping驗(yàn)證可以正常通信。
2.2.2 虛擬私有云(VPC)對(duì)等連接
測(cè)試方法:①分別在不同的VPC網(wǎng)絡(luò)的子網(wǎng)下創(chuàng)建2臺(tái)云主機(jī),開(kāi)放所有安全組規(guī)則;②配置兩個(gè)VPC下的子網(wǎng)路由;③分別VNC登錄兩臺(tái)云主機(jī),ping另外一臺(tái)云主機(jī)地址,觀察是否可以互通。
預(yù)期結(jié)果:配置成功,可以直接ping通。
2.2.3 負(fù)載均衡服務(wù)
測(cè)試方法:在云平臺(tái)創(chuàng)建一個(gè)負(fù)載均衡,后端加入1個(gè)應(yīng)用實(shí)例1,訪問(wèn)應(yīng)用實(shí)例正常。之后再加入相同的一個(gè)應(yīng)用實(shí)例2到負(fù)載均衡后端,負(fù)載均衡自動(dòng)識(shí)別新加入實(shí)例,添加過(guò)程中應(yīng)用訪問(wèn)不中斷,且添加后2個(gè)實(shí)例均提供服務(wù)。
預(yù)期結(jié)果:添加過(guò)程中應(yīng)用訪問(wèn)不中斷,且添加后2個(gè)實(shí)例均提供服務(wù)。
2.2.4 QoS控制
測(cè)試方法:創(chuàng)建虛擬對(duì)虛擬網(wǎng)卡通過(guò)對(duì)虛擬網(wǎng)卡進(jìn)行配置。①通過(guò)ML2的使用OVS對(duì)虛擬網(wǎng)卡進(jìn)行配置,對(duì)對(duì)虛擬機(jī)的網(wǎng)絡(luò)I/O進(jìn)行限制;②通過(guò)GBP實(shí)現(xiàn)網(wǎng)絡(luò)QoS的限制。
預(yù)期結(jié)果:網(wǎng)絡(luò)QoS控制成功。
2.3.1 異構(gòu)虛擬機(jī)鏡像上傳
測(cè)試方法:測(cè)試方將統(tǒng)一提供的鏡像文件通過(guò)云平臺(tái)上傳,通過(guò)已上傳鏡像創(chuàng)建新的云主機(jī),配置網(wǎng)絡(luò)并掛載云硬盤(pán)。
預(yù)期結(jié)果:支持虛擬機(jī)鏡像上傳功能,由鏡像創(chuàng)建的新云主機(jī)啟動(dòng)正常,網(wǎng)絡(luò)配置和云硬盤(pán)掛載功能正常。
2.3.2 云平臺(tái)雙因子認(rèn)證登錄
測(cè)試方法:打開(kāi)云平臺(tái)控制臺(tái)登錄界面,查看登錄方式是否為雙因子認(rèn)證,且通過(guò)雙因子認(rèn)證方式登錄成功。
預(yù)期結(jié)果:登錄方式是雙因子認(rèn)證,且通過(guò)雙因子認(rèn)證方式登錄成功。
2.3.3 云平臺(tái)安全能力
測(cè)試方法:①通過(guò)云平臺(tái)創(chuàng)建一臺(tái)堡壘機(jī),可以通過(guò)堡壘機(jī)可以登錄到與堡壘機(jī)同VPC的云主機(jī);②在云平臺(tái)上創(chuàng)建軟件的WAF,增加WAF的后端服務(wù),驗(yàn)證通過(guò)WAF是否可以訪問(wèn)到后端的服務(wù);③查看平臺(tái)是否支持SSL VPN和IPSec VPN,創(chuàng)建VPN服務(wù),并創(chuàng)建賬號(hào)密碼,并配置網(wǎng)絡(luò)路由,創(chuàng)建完成后,驗(yàn)證通過(guò)VPN是否可以訪問(wèn)到VPC內(nèi)網(wǎng)的云主機(jī)。
預(yù)期結(jié)果:①通過(guò)堡壘機(jī)可以登錄堡壘正常;②通過(guò)WAF是否可以訪問(wèn)到后端的服務(wù);③IPSec VPN和SSL VPN創(chuàng)建成功,且通過(guò)VPN可以訪問(wèn)到VPC內(nèi)網(wǎng)的云主機(jī)。
2.3.4 服務(wù)器和存儲(chǔ)監(jiān)控
測(cè)試方法:①通過(guò)云平臺(tái),可以監(jiān)控到服務(wù)器的健康狀態(tài)、CPU使用量、內(nèi)存使用量、網(wǎng)絡(luò)流量,以及運(yùn)行在節(jié)點(diǎn)上的云平臺(tái)服務(wù)的運(yùn)行狀態(tài);②通過(guò)云平臺(tái),可以查看到云平臺(tái)存儲(chǔ)的監(jiān)控信息,包括存儲(chǔ)的健康狀況使用情況。
預(yù)期結(jié)果:能夠看到服務(wù)器的健康狀態(tài)、CPU使用量、內(nèi)存使用量、網(wǎng)絡(luò)流量,以及運(yùn)行在節(jié)點(diǎn)上的云平臺(tái)服務(wù)的運(yùn)行狀態(tài),能夠看到云平臺(tái)存儲(chǔ)的監(jiān)控信息,包括存儲(chǔ)的健康狀況使用情況。
2.3.5 資源分析報(bào)表
測(cè)試方法:能夠在管理員界面和租戶(hù)項(xiàng)目界面看到云平臺(tái)計(jì)算、存儲(chǔ)、網(wǎng)絡(luò)資源的資源使用報(bào)表。
預(yù)期結(jié)果:①能夠看到云平臺(tái)計(jì)算資源的CPU、內(nèi)存等信息的統(tǒng)計(jì)報(bào)告表;②能夠查看到云平臺(tái)存儲(chǔ)資源的統(tǒng)計(jì)報(bào)表,包括總資源量、資源總使用量、存儲(chǔ)資源的總分配量等;③能夠查看到云平臺(tái)網(wǎng)絡(luò)資源的統(tǒng)計(jì)報(bào)表,包括網(wǎng)絡(luò)的資源使用量和分配量。
本文提出了一套基于IaaS云平臺(tái)技術(shù)的災(zāi)備平臺(tái)的測(cè)試指標(biāo)和對(duì)應(yīng)測(cè)試方法,為用戶(hù)進(jìn)行云平臺(tái)產(chǎn)品的選擇和測(cè)試提供了一種參考依據(jù)。由于IaaS云平臺(tái)具有特有的云計(jì)算模式,涉及大量云計(jì)算技術(shù),因此在實(shí)際的災(zāi)備云平臺(tái)的POC測(cè)試中,測(cè)試標(biāo)準(zhǔn)與方法也要針對(duì)具體應(yīng)用場(chǎng)景進(jìn)行分析。測(cè)試人員在進(jìn)行POC測(cè)試中,需要將測(cè)試時(shí)間、測(cè)試過(guò)程、測(cè)試人員進(jìn)行記錄,對(duì)用戶(hù)需求文檔和測(cè)試廠商提供的技術(shù)資料分類(lèi)歸檔,及時(shí)對(duì)不同云平臺(tái)產(chǎn)品進(jìn)行對(duì)比分析,總結(jié)評(píng)價(jià)。