一種云計算塊存儲服務(wù)的構(gòu)建方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及云計算技術(shù)領(lǐng)域,尤其是涉及一種云計算塊存儲服務(wù)的構(gòu)建方法及系 統(tǒng)。
【背景技術(shù)】
[0002] IaaS(Infrastructure as a Service,基礎(chǔ)設(shè)施即服務(wù))是一種重要的云計算服 務(wù)模式。云計算體系架構(gòu)IaaS平臺上以服務(wù)的方式為用戶提供包括處理、存儲、網(wǎng)絡(luò)和其 它基本的計算資源的使用,用戶可以在其申請到的虛擬資源當(dāng)中部署或運(yùn)行應(yīng)用程序,而 不需要了解計算資源提供過程的細(xì)節(jié)。隨著數(shù)據(jù)中心規(guī)模的日益增大,云平臺中服務(wù)器的 數(shù)目不斷增加,同時虛擬化環(huán)境也日趨復(fù)雜。虛擬資源在為上層應(yīng)用帶來靈活性的同時,也 給平臺的資源管理帶來巨大的挑戰(zhàn):如果不能夠高效調(diào)度數(shù)據(jù)中心中各類鏡像的裝載,將 會很大程度上降低整個數(shù)據(jù)中心的工作性能。因此,如何優(yōu)化云平臺中塊存儲架構(gòu)的設(shè)計 成為IaaS平臺的一個重要問題,設(shè)計并實(shí)現(xiàn)一個能夠優(yōu)化鏡像裝載時間和資源使用效率 的塊存儲服務(wù)的優(yōu)化構(gòu)建策略無論在理論研宄還是實(shí)際應(yīng)用方面都有非常重要的意義。
[0003] OpenStack是一個開源的云管理平臺項(xiàng)目,由于其多方面的優(yōu)勢已得到了眾多工 業(yè)界和學(xué)術(shù)界同行的認(rèn)可。在OpenStack Folsom版本推出了 Cinder組件,對IaaS平臺 的計算節(jié)點(diǎn)提供彈性塊存儲服務(wù)。通過Cinder組件,OpenStack實(shí)現(xiàn)了對虛擬機(jī)存儲臨時 動態(tài)的擴(kuò)容以及應(yīng)用鏡像的實(shí)時裝載使用功能,使得云平臺對于資源的分配與管理更加靈 活。然而,目前的Cinder組件只實(shí)現(xiàn)了塊存儲中鏡像動態(tài)掛載的功能,并沒有進(jìn)一步關(guān)注 塊存儲鏡像掛載的性能,具體來說,沒有提供有效的塊存儲服務(wù)的優(yōu)化構(gòu)建策略。
[0004] 現(xiàn)有的塊存儲服務(wù)構(gòu)建策略主要以提高鏡像副本的裝載速率為目標(biāo),學(xué)術(shù)界和工 業(yè)界提出了很多平臺架構(gòu)設(shè)計和鏡像部署策略。平臺架構(gòu)優(yōu)化方面,現(xiàn)有策略主要集中在 優(yōu)化存儲網(wǎng)絡(luò)的拓?fù)浼軜?gòu)以提高鏡像的查詢和裝載速率;鏡像副本的部署方面,一些研宄 提出了基于訪問頻率的鏡像副本優(yōu)化部署和鏡像請求調(diào)度方案,分擔(dān)各個鏡像的訪問負(fù) 載??傮w來說,現(xiàn)有的服務(wù)構(gòu)建方案從平臺特性和業(yè)務(wù)源特性分別來考慮存儲架構(gòu)的優(yōu)化, 而沒有綜合考慮存儲平臺和業(yè)務(wù)源特性兩種因素的相互影響,因此構(gòu)建方案無法反映具體 鏡像裝載業(yè)務(wù)在特定平臺架構(gòu)上的全面性能。同時,在對云存儲鏡像的裝載速度進(jìn)行性能 建模時,現(xiàn)有研宄往往僅考慮了物理節(jié)點(diǎn)的I/O速率,而忽略了鏡像并發(fā)傳輸和網(wǎng)絡(luò)性能 造成的傳輸速率衰退狀況。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明提供一種云計算快存儲服務(wù)的構(gòu)建方法及系統(tǒng),完成了在集中式存儲網(wǎng)絡(luò) 中鏡像副本的數(shù)目和位置的優(yōu)化選擇,提高存儲平臺的整體性能。
[0006] 根據(jù)本發(fā)明的一個方面,提供一種云計算塊存儲服務(wù)的構(gòu)建方法,其特征在于,所 述方法包括:
[0007] S1、根據(jù)塊存儲平臺規(guī)模、服務(wù)數(shù)量、鏡像請求的調(diào)度方式及鏡像裝載需求,進(jìn)行 參數(shù)初始化;
[0008] S2、在塊存儲中為每類鏡像構(gòu)建一個副本;
[0009] S3、計算所述塊存儲的剩余容量,并根據(jù)所述每類鏡像的文件大小將與所述塊存 儲的剩余容量對應(yīng)的鏡像的副本進(jìn)行部署;
[0010] S4、根據(jù)所述塊存儲中的每類鏡像的位置判斷需要調(diào)整物理位置的鏡像以及所述 需要調(diào)整位置的鏡像的可調(diào)整位置;
[0011] S5、對所述需要調(diào)整物理位置的鏡像進(jìn)行位置調(diào)整。
[0012] 其中,進(jìn)行初始化的參數(shù)包括:待裝載鏡像的種類,塊存儲平臺中物理服務(wù)器的 數(shù)目,每類鏡像的文件大小,每個物理存儲節(jié)點(diǎn)的容量,每個物理存儲節(jié)點(diǎn)空載時的I/O速 率;鏡像單位傳輸總速率。
[0013] 其中,所述步驟S2具體包括:
[0014] S21、對待裝載鏡像進(jìn)行分類,并計所述待裝載鏡像的種類為m ;
[0015] S22、從待裝載鏡像的種類中選擇任一類作為當(dāng)前類鏡像,計算所述當(dāng)前類鏡像在 所述塊存儲中每個服務(wù)器的鏡像整體請求響應(yīng)時間,并獲取所述鏡像整體請求響應(yīng)時間最 大的服務(wù)器對所述當(dāng)前類鏡像的副本進(jìn)行部署;
[0016] S23、更新部署所述當(dāng)前類鏡像的副本的服務(wù)器的剩余容量,并更新所述部署當(dāng)前 類鏡像的副本的服務(wù)器的負(fù)載非空時的I/O速率;
[0017] S24、將任務(wù)計數(shù)器的值f加1 ;
[0018] S25、判斷此時f與待裝載鏡像的種類m的大小關(guān)系,若f〈m,則將所述當(dāng)前類鏡像 從待裝載的鏡像類別中除去,然后返回步驟S22,否則執(zhí)行步驟S3。
[0019] 其中,所述步驟S3具體包括:
[0020] S31、計算所述存儲塊中每個服務(wù)器的剩余容量Si~S n,并判斷每類鏡像文本的大 小Si與所述每個服務(wù)器的剩余容量S」的大小,若s 'Max以,S2,…,SJ,則第i類鏡像為可 以繼續(xù)部署副本的鏡像;如果sAMax (S1, S2,…,SJ則執(zhí)行步驟S4,其中,i為所述待裝載鏡 像的種類中的任一類,j為所述塊存儲中的服務(wù)器中的任一個;
[0021] S32、將所有所述可以繼續(xù)部署副本的鏡像組成可以繼續(xù)部署副本的鏡像組合;
[0022] S33、從所述可以繼續(xù)部署副本的鏡像的集合中選取任一類鏡像作為當(dāng)前可以繼 續(xù)部署副本的鏡像,判斷所述當(dāng)前可以繼續(xù)部署副本的鏡像的文件大小^與所述塊存儲中 每個服務(wù)器的剩余容量I的大小,若s 則所述當(dāng)前可以繼續(xù)部署副本的鏡像不能在服 務(wù)器j上部署;否則能在服務(wù)器j上進(jìn)行部署;
[0023] S34、獲取能部署所述當(dāng)前可以繼續(xù)部署副本的鏡像的副本的服務(wù)器中選擇響應(yīng) 時間最小的服務(wù)器;
[0024] S35、計算當(dāng)所述當(dāng)前可以繼續(xù)部署副本的鏡像部署在選擇的服務(wù)器上后的存儲 平臺整體請求響應(yīng)時間;
[0025] S36、將所述當(dāng)前可以繼續(xù)部署副本的鏡像從所述可以繼續(xù)部署副本的鏡像組合 中除去,重復(fù)執(zhí)彳丁步驟S33-35 ;
[0026] S37、獲取所有可以繼續(xù)部署副本的鏡像的存儲平臺整體請求相應(yīng)時間,并選擇所 述存儲平臺整體請求相應(yīng)時間最小的鏡像和對應(yīng)的服務(wù)器進(jìn)行部署;
[0027] S38、將部署的可以繼續(xù)部署副本的鏡像從所述可以繼續(xù)部署副本的鏡像組合中 除去,更新部署所述可以繼續(xù)部署副本的鏡像的服務(wù)器的剩余容量和負(fù)載非空時的I/O速 率;
[0028] S39、重復(fù)步驟 S31 ~S38。
[0029] 其中,所述步驟S4具體包括:
[0030] S41、計算所述塊存儲平臺處于穩(wěn)態(tài)時并發(fā)傳輸?shù)溺R像數(shù)目和穩(wěn)態(tài)時平均每類鏡 像在存儲網(wǎng)絡(luò)中的傳輸速率Bavg;
[0031] S42、計算所述存儲池中每類鏡像在應(yīng)用場景中的傳輸速率Yij,并依次比較Yij 與所述存儲池中每類鏡像副本的裝載速率的大小若UiPYu 則當(dāng)前類鏡 像副本所在的服務(wù)器的I/O速率并未充分利用,將該當(dāng)前類鏡像副本所在的服務(wù)器加入到 有能力繼續(xù)部署新鏡像的服務(wù)器集合中;
[0032] S43、依次比較每類鏡像副本的裝載速率的大小Uij與B avg/sd^大小關(guān)系:若 μ UXBavg/^,則當(dāng)前類鏡像副本所在的服務(wù)器的負(fù)載過重,則將所述當(dāng)前類鏡像副本確定 為需要調(diào)整物理位置的鏡像,否則結(jié)束。
[0033] 其中,所述步驟S5具體包括:
[0034] S51、找出需要調(diào)整物理位置的鏡像中鏡像裝載的I/O性能與網(wǎng)絡(luò)傳輸性能相差 最大的鏡像,即依次計算I μu-Bavg/s」,找出令I(lǐng) Uu-BavgZ^I取得最大值的鏡像作為