一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及云計(jì)算領(lǐng)域,具體涉及一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方 法。
【背景技術(shù)】
[0002] 云計(jì)算是一種新的計(jì)算模型和服務(wù)模式。云計(jì)算數(shù)據(jù)中心通過虛擬化技術(shù)、集群 技術(shù)將物理服務(wù)器的CPU、內(nèi)存等計(jì)算資源和硬盤等存儲(chǔ)資源以租用的方式提供給用戶,租 戶可以根據(jù)其大數(shù)據(jù)處理、存儲(chǔ)等的規(guī)模按需動(dòng)態(tài)請(qǐng)求資源。在云計(jì)算數(shù)據(jù)中心,每個(gè)租戶 的資源請(qǐng)求抽象為一個(gè)或多個(gè)虛擬機(jī)(VirtualMachine)作業(yè),每個(gè)虛擬機(jī)作業(yè)對(duì)應(yīng)一定 數(shù)量的云計(jì)算基礎(chǔ)設(shè)施資源(包括CPU、內(nèi)存和硬盤等),每個(gè)物理服務(wù)器集群可以同時(shí)運(yùn) 行多個(gè)虛擬機(jī)。
[0003] 現(xiàn)有技術(shù)主要采用以下方法處理用戶請(qǐng)求的虛擬機(jī)作業(yè):數(shù)據(jù)中心資源管理系統(tǒng) 由調(diào)度管理節(jié)點(diǎn)和提供計(jì)算/存儲(chǔ)等資源的物理服務(wù)器構(gòu)成,調(diào)度管理節(jié)點(diǎn)按作業(yè)到達(dá)的 順序?qū)碜缘谝粦?yīng)用服務(wù)器的虛擬機(jī)作業(yè)請(qǐng)求依次執(zhí)行如下操作:尋找當(dāng)前時(shí)刻剩余資源 能滿足作業(yè)的資源規(guī)格(即,CPU、內(nèi)存和硬盤等資源需求的集合)的物理服務(wù)器:如果找到 多個(gè),則,采用調(diào)度算法從中選擇一個(gè)物理服務(wù)器,然后向該物理服務(wù)器下發(fā)虛擬機(jī)作業(yè)調(diào) 度通知,物理服務(wù)器接收到調(diào)度信息后,按作業(yè)的資源規(guī)格調(diào)度作業(yè);如果沒有找到,則,即 時(shí)拒絕該作業(yè)請(qǐng)求,或者,將其放入調(diào)度管理節(jié)點(diǎn)的排隊(duì)系統(tǒng),直到發(fā)現(xiàn)資源規(guī)格匹配的物 理服務(wù)器后再執(zhí)行調(diào)度算法選擇物理服務(wù)器來調(diào)度該作業(yè)。
[0004] 但是在實(shí)際應(yīng)用過程中,現(xiàn)有技術(shù)的云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源調(diào)度方法存在的 主要問題是無法保障虛擬機(jī)作業(yè)的服務(wù)質(zhì)量:在突發(fā)時(shí)期,一般有幾千至幾萬的虛擬機(jī)作 業(yè)請(qǐng)求同時(shí)涌入數(shù)據(jù)中心,如果調(diào)度管理節(jié)點(diǎn)在每一作業(yè)的資源分配這一過程消耗過多的 時(shí)間,將會(huì)延長(zhǎng)所有等待調(diào)度的作業(yè)的等待延遲,導(dǎo)致虛擬機(jī)作業(yè)超時(shí)和數(shù)據(jù)中心資源利 用率偏低。但是,要求調(diào)度管理節(jié)點(diǎn)在極短的調(diào)度決策期間依次執(zhí)行快速從隊(duì)列中選擇一 個(gè)優(yōu)先調(diào)度的作業(yè)緊接著在成千上萬的物理服務(wù)器中選擇一個(gè)來為其配置資源的做法對(duì) 調(diào)度管理節(jié)點(diǎn)的處理器和存儲(chǔ)器訪問操作以及調(diào)度管理節(jié)點(diǎn)與物理服務(wù)器之間的控制信 令的通信提出了嚴(yán)格的要求,然而當(dāng)前硬件實(shí)現(xiàn)上的難度使得其成為當(dāng)前高速云計(jì)算數(shù)據(jù) 中心的瓶頸。現(xiàn)有技術(shù)的由于當(dāng)前時(shí)刻沒有與作業(yè)的資源規(guī)格相匹配的物理服務(wù)器而即時(shí) 拒絕該作業(yè)請(qǐng)求的處理方式盡管一定程度上減少了調(diào)度管理節(jié)點(diǎn)調(diào)度決策所消耗的時(shí)長(zhǎng), 但是這種方式也減少了營業(yè)收益和惡化了用戶體驗(yàn),實(shí)際上,一個(gè)搜索/計(jì)算資源應(yīng)用一 般只需要很短的虛擬機(jī)作業(yè)運(yùn)行時(shí)間,而這些應(yīng)用的作業(yè)完成時(shí)間期限(Deadline)往往 可使其容忍一定的排隊(duì)延遲。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的目的是解決如何保障虛擬機(jī)作業(yè)的服務(wù)質(zhì)量這個(gè)關(guān)鍵問題,因此提供一 種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,減少虛擬機(jī)作業(yè)的等待延遲,加快虛擬機(jī)資 源配置的速度和效率,使數(shù)據(jù)中心能滿足大數(shù)據(jù)云計(jì)算的服務(wù)質(zhì)量要求。
[0006] 本發(fā)明通過如下技術(shù)方案實(shí)現(xiàn):
[0007] -種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,包括如下步驟:
[0008] 1)資源控制器接收到一個(gè)來自第一應(yīng)用服務(wù)器的虛擬機(jī)作業(yè)請(qǐng)求,對(duì)所述請(qǐng)求作 出響應(yīng):如果接受請(qǐng)求,則按請(qǐng)求的作業(yè)類型選擇一個(gè)隊(duì)列最優(yōu)的物理服務(wù)器集群并向該 物理服務(wù)器集群下發(fā)虛擬機(jī)作業(yè),下發(fā)的虛擬機(jī)作業(yè)中至少包括如下作業(yè)參數(shù):作業(yè)的類 型、作業(yè)運(yùn)行時(shí)長(zhǎng)和作業(yè)可容忍的等待延遲;如果拒絕請(qǐng)求,則返回拒絕信息;
[0009] 2)物理服務(wù)器集群接收到一個(gè)來自資源控制器的虛擬機(jī)作業(yè),按可容忍的最遲作 業(yè)完成時(shí)間將其入隊(duì);
[0010] 3)物理服務(wù)器集群調(diào)度周期到達(dá),則采用非搶占式隊(duì)列內(nèi)順序調(diào)度的資源優(yōu)化策 略來調(diào)度所述物理服務(wù)器集群中的虛擬機(jī)作業(yè)。
[0011] 如上所述的一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,其中,所述資源控制 器對(duì)所述請(qǐng)求作出響應(yīng)的具體步驟為:
[0012] S201:資源控制器根據(jù)請(qǐng)求的作業(yè)類型確定支持所述作業(yè)類型的物理服務(wù)器集群 組,執(zhí)行步驟S202 ;
[0013] S202:資源控制器判斷支持所述作業(yè)類型的物理服務(wù)器集群組是否為空:是,則 拒絕所述請(qǐng)求并返回拒絕信息,本資源配置過程結(jié)束;否,則執(zhí)行步驟S203 ;
[0014] S203:資源控制器比較上述物理服務(wù)器集群組中每個(gè)物理服務(wù)器集群的與所請(qǐng)求 的作業(yè)類型相同的隊(duì)列的長(zhǎng)度,將長(zhǎng)度最小的隊(duì)列所對(duì)應(yīng)的物理服務(wù)器集群作為隊(duì)列最優(yōu) 的物理服務(wù)器集群,如果長(zhǎng)度最小的隊(duì)列不止一個(gè),則隨機(jī)選擇其中一個(gè),將其對(duì)應(yīng)的物理 服務(wù)器集群作為隊(duì)列最優(yōu)的物理服務(wù)器集群,執(zhí)行步驟S204 ;
[0015] S204:資源控制器向隊(duì)列最優(yōu)的物理服務(wù)器集群下發(fā)虛擬機(jī)作業(yè),本過程結(jié)束。
[0016] 如上所述的一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,其中,物理服務(wù)器集 群按可容忍的最遲作業(yè)完成時(shí)間將其入隊(duì)的具體步驟為:
[0017] S301:物理服務(wù)器集群將隊(duì)列類型與所述虛擬機(jī)作業(yè)的作業(yè)類型相同的隊(duì)列作為 所述虛擬機(jī)作業(yè)入隊(duì)的隊(duì)列,執(zhí)行步驟S302 ;
[0018] S302:物理服務(wù)器集群按如下條件:(1)新入隊(duì)的虛擬機(jī)作業(yè)位于正在調(diào)度的虛 擬機(jī)作業(yè)的后面,(2)新入隊(duì)的虛擬機(jī)作業(yè)與當(dāng)前時(shí)刻隊(duì)列內(nèi)等待調(diào)度的而且未超時(shí)的虛 擬機(jī)作業(yè)按作業(yè)可容忍的最遲作業(yè)完成時(shí)間升序排列,確定所述虛擬機(jī)作業(yè)在所述入隊(duì)隊(duì) 列的入隊(duì)位置,執(zhí)行步驟S303 ;
[0019] S303:物理服務(wù)器集群將所述虛擬機(jī)作業(yè)放入所述位置,本入隊(duì)過程結(jié)束。
[0020] 如上所述的一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,其中,物理服務(wù)器集 群采用非搶占式隊(duì)列內(nèi)順序調(diào)度的資源優(yōu)化策略來調(diào)度所述物理服務(wù)器集群中的虛擬機(jī) 作業(yè)的具體步驟為:
[0021] S401:物理服務(wù)器集群判斷是否該物理服務(wù)器集群內(nèi)的所有的隊(duì)列均為空:是, 本調(diào)度過程結(jié)束;否,執(zhí)行步驟S402 ;
[0022] S402:物理服務(wù)器集群確定調(diào)度策略組,所確定的調(diào)度策略組中的任一個(gè)策略同 時(shí)滿足如下條件:(1)是一個(gè)維數(shù)為該物理服務(wù)器集群支持的虛擬機(jī)的類型之和的行向 量,g卩,Μ= [If,…,If,,.., ,這里,自然數(shù)G表示該物理服務(wù)器集群支持G類虛擬機(jī)作業(yè), Ns是第s個(gè)調(diào)度策略,自然數(shù)If:表示第i類虛擬機(jī)作業(yè)的數(shù)量,(2)包含正在調(diào)度的虛擬機(jī) 作業(yè),即,對(duì)任意ie[1,G],If都成立,這里G維行向量S= [Sd...,Si,...,Ss]表示 正在調(diào)度的虛擬機(jī)作業(yè)向量,自然數(shù)31表示正在調(diào)度的第i類虛擬機(jī)作業(yè)的數(shù)量,(3)隊(duì) 列內(nèi)的虛擬機(jī)作業(yè)按位置順序從隊(duì)列頭部開始選擇,即,自然數(shù)if是隊(duì)列i中從隊(duì)列頭部 開始按位置順序計(jì)數(shù)的個(gè)虛擬機(jī)作業(yè),(4)不超過隊(duì)列中等待調(diào)度和正在調(diào)度的虛擬機(jī) 作業(yè)數(shù)量之和,即,對(duì)任意ie[1,G],If< 咚成立,這里,自然數(shù)%表示等待調(diào)度的第 i類虛擬機(jī)作業(yè)的數(shù)量,(5)資源規(guī)格之和不超過該物理服務(wù)器集群的資源規(guī)格容量,包括CHJ資源之和、內(nèi)存資源之和以及硬盤資源之和分別不超過該物理服務(wù)器集群的CPU資源 容量、內(nèi)存資源容量以及硬盤資源容量;執(zhí)行步驟S403 ;
[0023] S403:物理服務(wù)器集群將調(diào)度策略組中資源效用最大的策略確定為非搶占式隊(duì)列 內(nèi)順序調(diào)度的資源優(yōu)化策略,執(zhí)行步驟S404 ;
[0024] S404:物理服務(wù)器集群按所確定的調(diào)度策略來調(diào)度虛擬機(jī)作業(yè)。
[0025] 如上所述的一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,其中,云計(jì)算數(shù)據(jù)中 心資源配置系統(tǒng)由一個(gè)資源控制器和一個(gè)以上物理服務(wù)器集群構(gòu)成,一個(gè)物理服務(wù)器集群 由一個(gè)以上隊(duì)列構(gòu)成,每個(gè)隊(duì)列劃分為正在調(diào)度的作業(yè)區(qū)間和等待調(diào)度的作業(yè)區(qū)間,正在 調(diào)度的作業(yè)區(qū)間位于隊(duì)列頭部,每個(gè)隊(duì)列對(duì)應(yīng)一種作業(yè)類型,每種作業(yè)類型對(duì)應(yīng)一定數(shù)量 的CPU、內(nèi)存和硬盤資源。
[0026] 如上所述的一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,其中,支持所述作業(yè) 類型的物理服務(wù)器集群組是云計(jì)算數(shù)據(jù)中心中滿足CPU、內(nèi)存和硬盤資源容量分別不小于 該虛擬機(jī)作業(yè)請(qǐng)求的CPU、內(nèi)存和硬盤資源的物理服務(wù)器集群的集合。
[0027] 如上所述的一種云計(jì)算數(shù)據(jù)中心虛擬機(jī)資源快速配置方法,其中,物理服務(wù)器集 群中的一個(gè)隊(duì)列的長(zhǎng)度等于這個(gè)隊(duì)列中等待調(diào)度的虛擬機(jī)作業(yè)的作業(yè)運(yùn)行時(shí)長(zhǎng)之和加上 正在調(diào)度的虛擬機(jī)作業(yè)剩余運(yùn)行時(shí)長(zhǎng)之和。