一種面向性能的云數(shù)據(jù)中心輪休方法、裝置和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于云計(jì)算系統(tǒng)控制領(lǐng)域,特別是涉及一種面向性能的云數(shù)據(jù)中心輪休方 法、裝置和系統(tǒng)。
【背景技術(shù)】
[0002] 云計(jì)算是一種基于互聯(lián)網(wǎng)的計(jì)算方式,通過這種方式,共享的軟硬件資源和信息 可以按需求提供給計(jì)算機(jī)和其他設(shè)備。相對于傳統(tǒng)的軟件和計(jì)算形態(tài),云計(jì)算具有松散耦 合、隨需應(yīng)變、成本可控、資源虛擬、異構(gòu)協(xié)同等顯著的優(yōu)勢,使其更適應(yīng)現(xiàn)今的電子商務(wù)、 柔性制造、移動(dòng)互聯(lián)網(wǎng)等應(yīng)用。
[0003] 云數(shù)據(jù)中心是指由多個(gè)異構(gòu)的、由網(wǎng)絡(luò)連接在一起的主機(jī)所組成的用于承載提供 在線云服務(wù)的企業(yè)級應(yīng)用的分布式計(jì)算系統(tǒng)。在云數(shù)據(jù)中心中,將大量的主機(jī)進(jìn)行集中統(tǒng) 一管理,可以保障主機(jī)運(yùn)行所需要的穩(wěn)定電源環(huán)境,適宜的溫濕度控制以及網(wǎng)絡(luò)帶寬條件。
[0004] 同其他軟硬件系統(tǒng)一樣,長時(shí)間的任務(wù)執(zhí)行會(huì)導(dǎo)致云數(shù)據(jù)中心中的主機(jī)的性能的 劣化。由于現(xiàn)今的云計(jì)算系統(tǒng)多運(yùn)用于大規(guī)??茖W(xué)計(jì)算、實(shí)時(shí)金融、在線交易、流媒體多播 等高負(fù)載和高復(fù)雜度的應(yīng)用,其主機(jī)時(shí)常處于超負(fù)荷運(yùn)行的狀態(tài),劣化的問題更加突出。如 果任務(wù)調(diào)度和負(fù)載均衡策略稍有不慎,就極易出現(xiàn)部分主機(jī)突發(fā)性崩潰的情況,并有可能 進(jìn)一步形成系統(tǒng)崩潰,造成重大損失。輪休,是對抗上述問題的有效手段,即通過強(qiáng)制使主 機(jī)進(jìn)入"停止執(zhí)行/休眠/休整"狀態(tài),減少因長時(shí)間連續(xù)執(zhí)行帶來的"錯(cuò)誤/內(nèi)外存碎片 /不一致數(shù)據(jù)"過度累積并最終崩潰的可能性。傳統(tǒng)的輪休方法,多是根據(jù)固定的間隔時(shí)間 或按照固定的順序指定主機(jī)進(jìn)入輪休。這種策略存在以下不足:由于忽視了主機(jī)負(fù)載、資源 占用率、可用性和可靠性的變化趨勢,固定間隔時(shí)間的輪休控制容易出現(xiàn)"主機(jī)還未等到進(jìn) 入輪休就提前崩潰"或者"主機(jī)處于健康平穩(wěn)狀態(tài)卻反復(fù)被強(qiáng)制進(jìn)入輪休"兩個(gè)極端,導(dǎo)致 損失和不必要的系統(tǒng)開銷;可能選擇執(zhí)行時(shí)間已經(jīng)很長但是仍然處于較健康狀態(tài)的主機(jī)進(jìn) 入休眠,或者是選擇執(zhí)行時(shí)間不長但是故障率較高的主機(jī)進(jìn)入休眠,從而使云系統(tǒng)整體可 靠性下降;傳統(tǒng)的策略沒有考慮每個(gè)主機(jī)的多維性能的動(dòng)態(tài)變化和未來走勢,而是靜態(tài)的 考慮當(dāng)前的性能表現(xiàn)來進(jìn)行決策。
[0005] 在此背景下,如何動(dòng)態(tài)的跟蹤云數(shù)據(jù)中心的運(yùn)行態(tài)勢并進(jìn)行趨勢預(yù)判,制定合理 的數(shù)據(jù)中心主機(jī)輪休策略,便成為了研究的熱點(diǎn)和難點(diǎn)。
【發(fā)明內(nèi)容】
[0006] 有鑒于現(xiàn)有技術(shù)的上述缺陷,本發(fā)明所要解決的技術(shù)問題是提供一種能夠彌補(bǔ)現(xiàn) 有方法和策略的不足,充分保證云數(shù)據(jù)中心運(yùn)行時(shí)性能的動(dòng)態(tài)波動(dòng)性的主機(jī)輪休方法。
[0007] 為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種面向性能的云數(shù)據(jù)中心輪休方法,按以下步 驟進(jìn)行:
[0008] 步驟一、隨機(jī)的選擇一個(gè)云數(shù)據(jù)中心的主機(jī)并將其設(shè)置為休眠狀態(tài),然后將其他 主機(jī)都設(shè)置為執(zhí)行狀態(tài),等待dt時(shí)間后,進(jìn)入下一個(gè)步驟;
[0009] 步驟二、獲取云數(shù)據(jù)中心中各個(gè)主機(jī)dt時(shí)間內(nèi)累計(jì)執(zhí)行時(shí)間LJZSi、各個(gè)主機(jī)從開 始到現(xiàn)在所有完成的任務(wù)中失效及出錯(cuò)任務(wù)所占的比例CBQ、各個(gè)主機(jī)最近dt時(shí)間內(nèi)累計(jì) 休眠時(shí)間LJXSi、各個(gè)主機(jī)完成最近一個(gè)任務(wù)所耗費(fèi)的時(shí)間RWt、各個(gè)主機(jī)修復(fù)最近的一個(gè) 錯(cuò)誤及失效所用時(shí)間XFi、當(dāng)前各個(gè)主機(jī)的狀態(tài)Zt;每個(gè)主機(jī)最近dt時(shí)間內(nèi)出現(xiàn)故障、錯(cuò)誤 或者失效的次數(shù)FN1;其中i下標(biāo)表示第i個(gè)主機(jī),滿足0 < i彡η,η為數(shù)據(jù)中心中的主機(jī) 數(shù)量;
[0010] 步驟三、分析各主機(jī)性能變化趨勢;
[0011] 首先計(jì)算各個(gè)主機(jī)最近故障率:
[0013] 然后,用變量ΒΛ標(biāo)記故障率邊界值:
[0015] 所述xs為預(yù)先給定的系數(shù),滿足l〈xs ;
[0016] 接下來,計(jì)算系統(tǒng)未來預(yù)期故障率WLGL :
[0018] 步驟四、分析各主機(jī)當(dāng)前休眠需求度;
[0019] 計(jì)算各主機(jī)的未來預(yù)期累積失效故障數(shù)SYKK1:
[0021] 所述β為加權(quán)平均系數(shù),β取值滿足0〈β〈1 ;
[0022] 步驟五、確定需要進(jìn)入休眠狀態(tài)的主機(jī)的序號ΧΗ :
[0024] 所述bs為預(yù)先給定的數(shù)值,取值范圍滿足l〈bs〈l. 5 ;
[0025] 步驟六、進(jìn)行輪休控制;
[0026] 首先判斷XH的值并進(jìn)行輪休控制:若XH為0,則不改變?nèi)魏沃鳈C(jī)的當(dāng)前狀態(tài);若 XH值等于當(dāng)前處于休眠狀態(tài)的主機(jī)的序號值,則不改變?nèi)魏沃鳈C(jī)的當(dāng)前狀態(tài);若XH大于0 且不等于當(dāng)前處于休眠狀態(tài)的主機(jī)的序號值,則將當(dāng)前處于休眠狀態(tài)的主機(jī)轉(zhuǎn)換為執(zhí)行狀 態(tài),并把第XH號主機(jī)轉(zhuǎn)換為休眠狀態(tài);
[0027] 然后等待ddt時(shí)間后,返回執(zhí)行步驟二。
[0028] 較佳的,所述ddt計(jì)算為:
[0030] 本發(fā)明所要解決的另一技術(shù)問題是提供一種能夠彌補(bǔ)現(xiàn)有方法和策略的不足,充 分保證云數(shù)據(jù)中心運(yùn)行時(shí)性能的動(dòng)態(tài)波動(dòng)性的主機(jī)輪休裝置。
[0031] 為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種面向性能的云數(shù)據(jù)中心輪休裝置,包括數(shù)據(jù) 中心狀態(tài)監(jiān)測模塊、控制決策模塊和輪休控制模塊;
[0032] 所述控制決策模塊包括性能分析單元、主機(jī)休眠需求度分析單元和輪休方案生成 單元;
[0033] 所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊的第一輸出端分別連接所述性能分析單元的輸入端; 所述性能分析單元的輸出端連接所述主機(jī)休眠需求度分析單元的第一輸入端;所述主機(jī)休 眠需求度分析單元的輸出端連接所述輪休方案生成單元的輸入端;所述輪休方案生成單元 的輸出端連接所述輪休控制模塊的輸入端;所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊的第二輸出端連接 所述主機(jī)休眠需求度分析單元的第二輸入端;所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊的第三輸出端連 接所述輪休控制模塊的第二輸入端;所述輪休控制模塊的輸出端連接所述數(shù)據(jù)中心狀態(tài)監(jiān) 測模塊的輸入端;
[0034] 所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊用于收集主機(jī)運(yùn)行狀態(tài)信息:
[0035] 所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊獲取云數(shù)據(jù)中心中各個(gè)主機(jī)dt時(shí)間內(nèi)累計(jì)執(zhí)行時(shí)間 LJZSi、各個(gè)主機(jī)從開始到現(xiàn)在所有完成的任務(wù)中失效及出錯(cuò)任務(wù)所占的比例CBQ、各個(gè)主 機(jī)最近dt時(shí)間內(nèi)累計(jì)休眠時(shí)間LJXSi、各個(gè)主機(jī)完成最近一個(gè)任務(wù)所耗費(fèi)的時(shí)間RWt、各個(gè) 主機(jī)修復(fù)最近的一個(gè)錯(cuò)誤及失效所用時(shí)間XR、當(dāng)前各個(gè)主機(jī)的狀態(tài)ZT1;每個(gè)主機(jī)最近dt 時(shí)間內(nèi)出現(xiàn)故障、錯(cuò)誤或者失效的次數(shù)FN1;其中i下標(biāo)表示第i個(gè)主機(jī),滿足0 < i < n,n 為數(shù)據(jù)中心中的主機(jī)數(shù)量;所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊將取得的上述值分別發(fā)送給所述性 能分析單元、主機(jī)休眠需求度分析單元和輪休控制模塊;
[0036] 所述性能分析單元用于分析各主機(jī)性能變化趨勢:
[0037] 首先計(jì)算各個(gè)主機(jī)最近故障率:
[0039] 然后,用變量ΒΛ標(biāo)記故障率邊界值:
[0041] 所述xs為預(yù)先給定的系數(shù),滿足l〈xs ;
[0042] 接下來,計(jì)算系統(tǒng)未來預(yù)期故障率WLGL :
[0043]
[0044] 所述性能分析單元將WLGL值發(fā)送給所述主機(jī)休眠需求度分析單元;
[0045] 所述主機(jī)休眠需求度分析單元用于分析各主機(jī)當(dāng)前休眠需求度:
[0046] 所述主機(jī)休眠需求度分析單元計(jì)算各主機(jī)的未來預(yù)期累積失效故障數(shù)SYKK1:
[0048] 所述β為加權(quán)平均系數(shù),β取值滿足0〈β〈1 ;
[0049] 所述主機(jī)休眠需求度分析單元將3¥1(1^值發(fā)送給輪休方案生成單元;
[0050] 所述輪休方案生成單元用于確定需要進(jìn)入休眠狀態(tài)的主機(jī)的序號ΧΗ :
[0052] 所述bs為預(yù)先給定的數(shù)值,取值范圍滿足l〈bs〈l. 5 ;
[0053] 所述輪休方案生成單元將XH值發(fā)送給輪休控制模塊;
[0054] 所述輪休控制模塊用于進(jìn)行輪休控制以及發(fā)送時(shí)間信息給所述數(shù)據(jù)中心狀態(tài)監(jiān) 測模塊。
[0055] 優(yōu)選的,所述輪休控制模塊發(fā)送時(shí)間信息dt給所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊使得 所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊等待dt時(shí)間后收集主機(jī)運(yùn)行狀態(tài)信息;所述dt值為100毫秒 到10秒之間的任意數(shù)值。
[0056] 優(yōu)選的,所述輪休控制模塊判斷XH的值并進(jìn)行輪休控制:若XH為0,則不改變?nèi)?何主機(jī)的當(dāng)前狀態(tài);若XH值等于當(dāng)前處于休眠狀態(tài)的主機(jī)的序號值,則不改變?nèi)魏沃鳈C(jī)的 當(dāng)前狀態(tài);若XH大于0且不等于當(dāng)前處于休眠狀態(tài)的主機(jī)的序號值,則將當(dāng)前處于休眠狀 態(tài)的主機(jī)轉(zhuǎn)換為執(zhí)行狀態(tài),并把第XH號主機(jī)轉(zhuǎn)換為休眠狀態(tài);
[0057] 所述輪休控制模塊發(fā)送間隔時(shí)間ddt給所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊使得所述數(shù) 據(jù)中心狀態(tài)監(jiān)測模塊等待ddt時(shí)間后繼續(xù)收集主機(jī)運(yùn)行狀態(tài)信息;
[0058] 間隔時(shí)間ddt計(jì)算為:
[0059]
[0060] 本發(fā)明還要解決的一技術(shù)問題是提供一種能夠彌補(bǔ)現(xiàn)有方法和策略的不足,充分 保證云數(shù)據(jù)中心運(yùn)行時(shí)性能的動(dòng)態(tài)波動(dòng)性的主機(jī)輪休系統(tǒng)。
[0061] 為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種面向性能的云數(shù)據(jù)中心輪休系統(tǒng),包括云數(shù) 據(jù)中心服務(wù)器,所述云數(shù)據(jù)中心服務(wù)器內(nèi)設(shè)置有云數(shù)據(jù)中心輪休裝置,所述云數(shù)據(jù)中心輪 休裝置包括數(shù)據(jù)中心狀態(tài)監(jiān)測模塊、控制決策模塊和輪休控制模塊;
[0062] 所述控制決策模塊包括性能分析單元、主機(jī)休眠需求度分析單元和輪休方案生成 單元;
[0063] 所述數(shù)據(jù)中心狀態(tài)監(jiān)測模塊的第一輸出端分別連接所述性能分析單元的輸入端; 所述性能分析單元的輸出端連接所述主機(jī)休眠需求度分析單元的第一輸入端;所述主機(jī)休 眠需求度分析單元的輸出端連接所述輪休方案生成單元的輸入端;所述輪休方案生成單元 的輸出端連