一種云計算系統(tǒng)的調(diào)度方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及云計算領(lǐng)域,特別是指一種云計算系統(tǒng)的調(diào)度方法和裝置。
【背景技術(shù)】
[0002]目前,云計算的虛擬化技術(shù)把服務(wù)器、存儲設(shè)備等網(wǎng)絡(luò)資源整合成資源池后進行分割,實現(xiàn)資源按需分配和自動增長。資源調(diào)度策略就是考慮到資源池利用的經(jīng)濟效益和業(yè)務(wù)保障等因素的資源分配和調(diào)控策略。資源調(diào)度系統(tǒng)利用資源調(diào)度策略,給虛擬資源分配具體的物理資源,調(diào)整虛擬資源的配置,必要時在物理資源之間遷移虛擬資源,實現(xiàn)資源的充分利用,降低能耗。
[0003]目前,資源調(diào)度有較多的方法,其中一種為用于云計算的策略調(diào)度系統(tǒng)和方法,其中,該策略調(diào)度系統(tǒng)包括策略配置、監(jiān)控、策略調(diào)度以及策略執(zhí)行4個模塊:
[0004]?策略配置模塊,用于配置針對云計算資源池中目標虛擬機的策略;
[0005]?監(jiān)控模塊,用于從策略配置模塊獲知目標虛擬機,監(jiān)控目標虛擬機的性能參數(shù),并將該性能參數(shù)發(fā)送至策略調(diào)度模塊;
[0006]?策略調(diào)度模塊,用于判斷來自監(jiān)控模塊的目標虛擬機性能參數(shù)是否滿足與該目標虛擬機對應(yīng)的策略的觸發(fā)條件,并在目標虛擬機性能參數(shù)滿足與該目標虛擬機對應(yīng)的策略的觸發(fā)條件時,向策略執(zhí)行模塊發(fā)出請求消息;
[0007]?策略執(zhí)行模塊,用于接收到來自策略調(diào)度模塊的請求消息后,執(zhí)行策略配置模塊配置的滿足觸發(fā)條件的策略。
[0008]這個系統(tǒng)的調(diào)度策略都是基于監(jiān)控系統(tǒng)發(fā)現(xiàn)某臺固定的虛擬機的資源不足或過剩后,系統(tǒng)對這臺虛擬機調(diào)整,以便達到改善虛擬機的運行狀態(tài)或節(jié)省系統(tǒng)計算資源的目標。
[0009]這種調(diào)度方案沒有考慮資源池的總體資源需求情況,調(diào)整思路比較局限。
【發(fā)明內(nèi)容】
[0010]本發(fā)明要解決的技術(shù)問題是,提供一種云計算系統(tǒng)的調(diào)度方法和裝置,能夠提高系統(tǒng)資源的利用率。
[0011]—方面,提供一種云計算系統(tǒng)的調(diào)度方法,包括:
[0012]獲取云計算系統(tǒng)的資源池的資源超賣系數(shù)在當(dāng)前周期的第一值;
[0013]根據(jù)所述資源池的資源利用率的歷史數(shù)據(jù),生成所述資源超賣系數(shù)在所述當(dāng)前周期的下一周期的預(yù)測值;
[0014]判斷所述第一值與所述預(yù)測值之間的差值的絕對值是否超過第一閾值;
[0015]如果超過所述第一閾值,則將所述資源超賣系數(shù)在下一周期的目標值調(diào)整為所述預(yù)測值;否則,將所述資源超賣系數(shù)在下一周期的目標值保持為所述第一值。
[0016]所述根據(jù)所述資源池的資源利用率的歷史數(shù)據(jù),生成所述資源超賣系數(shù)在所述當(dāng)前周期的下一周期的預(yù)測值的步驟包括:
[0017]對所述資源池的每個物理機的所有虛擬機的歷史資源利用率取平均值,計算得到每個物理機對應(yīng)的第一平均值;
[0018]將所述第一平均值分別乘以一常數(shù),得到每個物理機對應(yīng)的一個乘積;
[0019]對所述資源池的所有物理機對應(yīng)的乘積取平均值,計算得到第二平均值,作為所述資源超賣系數(shù)在所述當(dāng)前周期的下一周期的預(yù)測值。
[0020]所述虛擬機的歷史資源利用率根據(jù)以下步驟生成:
[0021]將所述虛擬機的歷史資源實際使用量與所述虛擬機歷史資源配置量之間的比值,作為所述虛擬機的歷史資源利用率。
[0022]所述的方法,還包括:
[0023]獲取所述資源池的可超賣資源總量;
[0024]根據(jù)所述資源池的資源實際使用量的歷史數(shù)據(jù),生成所述資源池的資源使用量在所述下一周期的預(yù)測值;
[0025]比較所述可超賣資源總量與所述資源使用量在所述下一周期的預(yù)測值之間的大小,得到比較結(jié)果;
[0026]根據(jù)所述比較結(jié)果,進行相應(yīng)操作。
[0027]所述獲取所述資源池的可超賣資源總量的步驟具體為:
[0028]將所述資源池中的所有物理機的資源總?cè)萘颗c所述資源超賣系數(shù)在所述當(dāng)前周期的下一周期的預(yù)測值的乘積,作為所述資源池的可超賣資源總量。
[0029]所述根據(jù)所述比較結(jié)果,進行相應(yīng)操作的步驟包括:
[0030]當(dāng)所述可超賣資源總量大于所述資源總使用量的預(yù)測值,且所述可超賣資源總量與所述資源總使用量的預(yù)測值之間的差值大于第二閾值時,則允許其他資源池的業(yè)務(wù)遷入;
[0031]當(dāng)所述可超賣資源總量大于所述資源總使用量的預(yù)測值,且所述可超賣資源總量與所述資源總使用量的預(yù)測值之間的差值大于第三閾值時,從所述資源池中選擇至少一個第一物理機;將所述第一物理機上的所有虛擬機遷移至所述資源池中的除所述第一物理機外的其他物理機;關(guān)閉所述第一物理機;
[0032]當(dāng)所述可超賣資源總量大于所述資源總使用量的預(yù)測值時,從所述資源池中選擇至少一個第二物理機,所述第二物理機在下一周期的可超賣資源量小于所述第二物理機上的所有虛擬機在下一周期的資源使用量的預(yù)測值;從所述第二物理機中選擇至少一個第二虛擬機,將所述第二虛擬機遷移到所述資源池的其他物理機;
[0033]當(dāng)所述可超賣資源總量小于或等于所述資源總使用量的預(yù)測值時,開啟新的物理機;從所述資源池中選擇至少一個第三物理機,所述第三物理機在下一周期的可超賣資源總量小于所述第三物理機上的所有虛擬機在下一周期的資源使用量的預(yù)測值;從所述第三物理機中選擇至少一個第三虛擬機;將所述第三虛擬機遷移到所述新的物理機;
[0034]當(dāng)所述可超賣資源總量小于所述資源總使用量的預(yù)測值,從所述資源池中選擇至少一個第四物理機,所述第四物理機在下一周期的可超賣資源量小于所述第四物理機上的所有虛擬機在下一周期的資源使用量的預(yù)測值;從所述第四物理機中選擇至少一個第四虛擬機;將所述第四虛擬機遷移到其他資源池。
[0035]所述從所述資源池中選擇至少一個第一物理機的步驟具體為:
[0036]按照物理機上設(shè)置的虛擬機的數(shù)量大小,從所述資源池中選擇至少一個第一物理機;或者
[0037]按照物理機的資源容量大小,從所述資源池中選擇至少一個第一物理機。
[0038]所述從所述第二物理機中選擇至少一個第二虛擬機的步驟具體為:
[0039]按照虛擬機在下一周期的資源利用率的預(yù)測值與所述資源池的資源利用率的歷史平均值之間的差值的大小,從所述第二物理機中選擇至少一個第二虛擬機。
[0040]所述的方法,還包括:
[0041]獲取所述資源池中的第五物理機在當(dāng)前周期的資源利用率;
[0042]判斷所述第五物理機在所述當(dāng)前周期的資源利用率是否大于告警值;
[0043]如果大于,則調(diào)整所述第五物理機的虛擬機在當(dāng)前周期的最大可使用資源量;
[0044]在所述當(dāng)前周期的下一個周期調(diào)整所述第五物理機的資源超賣系數(shù)或者在所述當(dāng)前周期的下一個周期將所述第五物理機上的至少一個虛擬機遷移出去。
[0045]另一方面,提供一種云計算系統(tǒng)的調(diào)度裝置,包括:
[0046]第一獲取單元,獲取云計算系統(tǒng)的資源池的資源超賣系數(shù)在當(dāng)前周期的第一值;
[0047]第一生成單元,根據(jù)所述資源池的資源利用率的歷史數(shù)據(jù),生成所述資源超賣系數(shù)在所述當(dāng)前周期的下一周期的預(yù)測值;
[0048]第一判斷單元,判斷所述第一值與所述預(yù)測值之間的差值的絕對值是否超過第一閾值;
[0049]調(diào)整單元,如果超過所述第一閾值,則將所述資源超賣系數(shù)在下一周期的目標值調(diào)整為所述預(yù)測值;否則,將所述資源超賣系數(shù)在下一周期的目標值保持為所述第一值。
[0050]所述生成單元包括:
[0051]第一平均計算子單元,對所述資源池的每個物理機的所有虛擬機的歷史資源利用率取平均值,計算得到每個物理機對應(yīng)的第一平均值;
[0052]乘法子單元,將所述第一平均值分別乘以一常數(shù),得到每個物理機對應(yīng)的一個乘積;
[0053]第二平均計算子單元,對所述資源池的所有物理機對應(yīng)的乘積取平均值,計算得到第二平均值,作為所述資源超賣系數(shù)在所述當(dāng)前周期的下一周期的預(yù)測值。
[0054]所述的裝置,還包括:
[0055]第二獲取單元,獲取所述資源池的可超賣資源總量;
[0056]第二生成單元,根據(jù)所述資源池的資源實際使用量的歷史數(shù)據(jù),生成所述資源池的資源使用量在所述下一周期的預(yù)測值;
[0057]第二比較單元,比較所述可超賣資源總量與所述資源使用量在所述下一周期的預(yù)測值之間的大小,得到比較結(jié)果;
[0058]操作單元,根據(jù)所述比較結(jié)果,進行相應(yīng)操作。
[0059]所述操作單元包括:
[0060]第一選擇子單元,當(dāng)所述可超賣資源總量大于所述資源總使用量的預(yù)測值,且所述可超賣資源總量與所述資源總使用量的預(yù)測值之間的差值大于第三閾值時,從所述資源池中選擇至少一個第一物理機
[0061]第一遷移子單元,將所述第一物理機上的所有虛擬機遷移至所述資源池中的除所述第一物理機外的其他物理機;
[0062]關(guān)閉子單元,關(guān)閉所述第一物理機;
[0063]或者,所述操作單元包括:
[0064]第二選擇子單元,當(dāng)所述可超賣資源總量大于所述資源總使用量的預(yù)測值時,從所述資源池中選擇至少一個第二物理機,所述第二物理機在下一周期的可超賣資源量小于所述第二物理機上的所有虛擬機在下一周期的資源使用量的預(yù)測值;
[0065]第三選擇子單元,從所述第二物理機中選擇至少一個第二虛擬機;
[0066]第二遷移子單元,將所述第二虛擬機遷移到所述資源池的其他物理機;
[0067]或者,所述操作單元包括:
[0068]開啟單元,當(dāng)所述可超賣資源總量小于或等于所述資源總使用量的預(yù)測值時,開啟新的物理機;
[0069]第四選擇子單元,從所述資源池中選擇至少一個第三物理機,所述第三物理機在下一周期的可超賣資源總量小于所述第三物理機上的所有虛擬機在下一周期的資源使用量的預(yù)測值;
[0070]第五選擇子單元,從所述第三物理機中選擇至少一個第三虛擬機;
[0071]第三遷移子單元,將所述第三虛擬機遷移到所述