一種用于在集群中調(diào)度計算任務(wù)的方法與設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請涉及計算機領(lǐng)域,尤其涉及一種用于在集群中調(diào)度計算任務(wù)的技術(shù)。
【背景技術(shù)】
[0002]利用互聯(lián)網(wǎng)實現(xiàn)云計算的過程中,在每一個云服務(wù)節(jié)點上存在多個計算任務(wù),需要針對所述計算任務(wù)進行資源隔離,進而,相互隔離的計算任務(wù)基于所述云服務(wù)節(jié)點調(diào)用整個集群分配的各種資源。
[0003]目前,該領(lǐng)域采用的方案有:
[0004]—是絕對控制方法。即對每一個云服務(wù)節(jié)點對應(yīng)的多個計算任務(wù),可以依據(jù)所述云服務(wù)節(jié)點自身的資源總量進行資源量的分配,每個計算任務(wù)最多可以使用的資源量為確定數(shù)值。此種方法,在每個計算任務(wù)實際需要的資源量大于其所分配到的資源量的確定數(shù)值時,所述計算任務(wù)的需求得不到滿足;而當(dāng)所述計算任務(wù)需要的資源量大大小于所分配到的資源量的確定數(shù)值時,又會帶來資源的浪費。
[0005]二是相對控制方法。即對每一個云服務(wù)節(jié)點對應(yīng)的多個計算任務(wù),可以依據(jù)所述云服務(wù)節(jié)點自身的資源總量、對每個計算任務(wù)按照一定比例進行資源量的分配,此時,若某個計算任務(wù)壓力過大時,若所對應(yīng)的云服務(wù)節(jié)點按照權(quán)重切割,則會由于該計算任務(wù)的異常情況影響到其他計算任務(wù)的順利進行。
【發(fā)明內(nèi)容】
[0006]本申請的目的是提供一種用于在集群中調(diào)度計算任務(wù)的方法與設(shè)備。
[0007]根據(jù)本申請的一個方面,提供了一種用于在集群中調(diào)度計算任務(wù)的方法,包括:
[0008]獲取集群中待調(diào)度的多個計算任務(wù);
[0009]根據(jù)所述計算任務(wù)所對應(yīng)的任務(wù)負荷信息將所述多個計算任務(wù)劃分為多個任務(wù)子集,其中,各任務(wù)子集分別對應(yīng)于所述集群中一個集群節(jié)點。
[0010]根據(jù)本申請的另一方面,還提供了一種用于在集群中調(diào)度計算任務(wù)的設(shè)備,包括:
[0011]第一裝置,用于獲取集群中待調(diào)度的多個計算任務(wù);
[0012]第二裝置,用于根據(jù)所述計算任務(wù)所對應(yīng)的任務(wù)負荷信息將所述多個計算任務(wù)劃分為多個任務(wù)子集,其中,各任務(wù)子集分別對應(yīng)于所述集群中一個集群節(jié)點。
[0013]與現(xiàn)有技術(shù)相比,本申請通過基于集群中待調(diào)度的多個計算任務(wù)對應(yīng)的任務(wù)負荷信息,將每個所述計算任務(wù)都劃分到一個對應(yīng)于某個集群節(jié)點的任務(wù)子集中,從而,為所述集群中待調(diào)度的多個計算任務(wù)找到了最佳劃分組合,從而最大化利用整個集群的資源,實現(xiàn)更加合理的系統(tǒng)資源調(diào)度策略。
【附圖說明】
[0014]通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本申請的其它特征、目的和優(yōu)點將會變得更明顯:
[0015]圖1示出根據(jù)本申請一個方面的一種用于在集群中調(diào)度計算任務(wù)的設(shè)備示意圖;
[0016]圖2示出根據(jù)本申請另一個方面的一種用于在集群中調(diào)度計算任務(wù)的方法流程圖;
[0017]圖3示出根據(jù)本申請一個優(yōu)選實施例的集群節(jié)點M調(diào)度前的計算任務(wù)負荷示意圖;
[0018]圖4示出根據(jù)本申請一個優(yōu)選實施例的集群節(jié)點N調(diào)度前的計算任務(wù)負荷示意圖;
[0019]圖5示出根據(jù)本申請一個優(yōu)選實施例的集群節(jié)點M調(diào)度后的計算任務(wù)負荷示意圖;
[0020]圖6示出根據(jù)本申請一個優(yōu)選實施例的集群節(jié)點N調(diào)度后的計算任務(wù)負荷示意圖。
[0021 ] 附圖中相同或相似的附圖標(biāo)記代表相同或相似的部件。
【具體實施方式】
[0022]下面結(jié)合附圖對本申請作進一步詳細描述。
[0023]在本申請一個典型的配置中,終端、服務(wù)網(wǎng)絡(luò)的設(shè)備和可信方均包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。
[0024]內(nèi)存可能包括計算機可讀介質(zhì)中的非永久性存儲器,隨機存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flashRAM)。內(nèi)存是計算機可讀介質(zhì)的示例。
[0025]計算機可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術(shù)來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計算機的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機存取存儲器(SRAM)、動態(tài)隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(CD-ROM)、數(shù)字多功能光盤(DVD)或其他光學(xué)存儲、磁盒式磁帶,磁帶磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設(shè)備訪問的信息。按照本文中的界定,計算機可讀介質(zhì)不包括非暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。
[0026]圖1示出根據(jù)本申請一個方面的一種用于在集群中調(diào)度計算任務(wù)的設(shè)備示意圖。所述用于在集群中調(diào)度計算任務(wù)的設(shè)備I包括第一裝置101和第二裝置102。
[0027]其中,第一裝置101獲取集群中待調(diào)度的多個計算任務(wù);第二裝置102用于根據(jù)所述計算任務(wù)所對應(yīng)的任務(wù)負荷信息將所述多個計算任務(wù)劃分為多個任務(wù)子集,其中,各任務(wù)子集分別對應(yīng)于所述集群中一個集群節(jié)點。
[0028]具體地,所述設(shè)備I的第一裝置101獲取集群中待調(diào)度的多個計算任務(wù)。在此,所述的集群,優(yōu)選地為基于互聯(lián)網(wǎng)用于進行云計算的多臺服務(wù)器組成的集群。每一臺所述服務(wù)器都是為用戶提供云計算等服務(wù)的集群節(jié)點。在所述每一臺服務(wù)器上都有若干個正在進行的計算任務(wù)。所述的計算任務(wù)包括在集群節(jié)點上的進程服務(wù)、線程服務(wù)等。本方案需要對集群中多個集群節(jié)點下的多個計算任務(wù)進行重新調(diào)度劃分,從而優(yōu)化集群資源的分配,所以首先需要確定等待調(diào)度安排的多個計算任務(wù)。在本方案中,資源池越大,確定獲取的待調(diào)度的計算任務(wù)越多,調(diào)度對于系統(tǒng)的匹配度就會越高,進而調(diào)度精確度就會越好,集群資源分配的優(yōu)化效果就越顯著。
[0029]此外,所述每一個計算任務(wù)在所述集群中,例如在云資源系統(tǒng)中,都有與之對應(yīng)的的備份計算任務(wù),從而使得所述計算任務(wù)對應(yīng)的數(shù)據(jù)信息得以被保存,進一步,所述計算任務(wù)和與之對應(yīng)的備份計算任務(wù)之間通過同步機制保障數(shù)據(jù)信息的一致性。在此,通過對計算任務(wù)進行災(zāi)備安排,可以避免由于數(shù)據(jù)信息的損毀、滅失等突發(fā)狀況帶來的損失。
[0030]在此,本領(lǐng)域技術(shù)人員應(yīng)該能夠理解,所述第一裝置獲取的集群中待調(diào)度的多個計算任務(wù)也可以來自于所述設(shè)備I之外的第三方設(shè)備。即從第三方設(shè)備中收集待調(diào)度的多個計算任務(wù),再由所述設(shè)備I進行相應(yīng)的信息處理、任務(wù)調(diào)度的生成并執(zhí)行等操作。
[0031]接著,所述設(shè)備I的第二裝置102根據(jù)所述計算任務(wù)所對應(yīng)的任務(wù)負荷信息將所述多個計算任務(wù)劃分為多個任務(wù)子集,其中,各任務(wù)子集分別對應(yīng)于所述集群中一個集群節(jié)點。在此,若要為多個不同的計算任務(wù)進行最佳劃分,以便使得集群資源利用最大化,首先要獲得等待調(diào)度的多個計算任務(wù)的任務(wù)負荷信息。所述的任務(wù)負荷信息包括所述計算任務(wù)對應(yīng)的各種可度量指標(biāo)數(shù)據(jù)信息,包括但不限于CPU使用率、內(nèi)存使用率、網(wǎng)絡(luò)使用、內(nèi)存使用、網(wǎng)卡流量等與所述計算任務(wù)相關(guān)的屬性指標(biāo),這些指標(biāo)數(shù)據(jù)能夠直觀反應(yīng)所述計算任務(wù)對于具體某一種或幾種相關(guān)集群資源的使用和消耗需要,如一個進程任務(wù)的運行需要的對應(yīng)的CPU使用率、或是內(nèi)存使用率情況等。所述計算任務(wù)消耗的某一類集群資源越多,則帶給它所對應(yīng)的集群節(jié)點的壓力負荷也就越大。此外,所述的任務(wù)負荷信息也可以是多個單一、具體的可度量指標(biāo)數(shù)據(jù)信息復(fù)合而成的一個綜合可度量指標(biāo)數(shù)據(jù),例如對于單一可度量指標(biāo)數(shù)據(jù)信息CPU使用率、內(nèi)存使用率和網(wǎng)絡(luò)使用按照一定的組合計算生成一個綜合指標(biāo)數(shù)據(jù),如基于實際情況為CPU使用率、內(nèi)存使用率和網(wǎng)絡(luò)使用參數(shù)分別設(shè)置一定的權(quán)重,得到需要的綜合可度量指標(biāo)數(shù)據(jù)。
[0032]例如,對所有的待調(diào)度的多個計算任務(wù)基于同一可度量指標(biāo)在同一個時間段或是時間點的具體數(shù)值進行分析比較,基于一定的劃分操作,就可以將滿足最優(yōu)劃分條件的多個計算任務(wù)劃分到同一個任務(wù)子集中。例如存在待調(diào)度的計算任務(wù)A、B、C、D分別屬于集群節(jié)點1、2、3、4 ;通過對所述計算任務(wù)A、B、C、D各自的任務(wù)負荷信息進行分析,并基于具體的劃分操作,最終選出計算任務(wù)A、B、C三個任務(wù)重新劃分到一個任務(wù)子集中,并對應(yīng)于集群節(jié)點1,這一新的計算任務(wù)的組合的生成是對集群資源的利用率的優(yōu)化。在此,集群資源提供的云計算的服務(wù)能力呈現(xiàn)的是一種動態(tài)分布、實時變化的特點,而作為本方案中所述劃分操作對應(yīng)的計算數(shù)據(jù)來源的任務(wù)負荷信息即可以很好的反應(yīng)這種數(shù)據(jù)動態(tài)變化,如,所述任務(wù)負荷信息可以確定到某一確定可度量指標(biāo)在確定時間段或時間點對應(yīng)的具體數(shù)值信息。
[0033]在此,本領(lǐng)域技術(shù)人員應(yīng)能理解,所述第一裝置和所述第二裝置可以是同一設(shè)備中的不同裝置。進一步,在實際應(yīng)用中,將所述第一裝置和所述第二裝置部署在不同的設(shè)備上也可以完成本方案,此時如可適用本申請,也應(yīng)包含在本申請的保護范圍以內(nèi),并在此以引用方式包含于此。
[0034]在此,本申請通過基于集群中待調(diào)度的多個計算任務(wù)對應(yīng)的任務(wù)負荷信息,將每個所述計算任務(wù)都劃分到一個對應(yīng)于某個集群節(jié)點的任務(wù)子集中,從而,為所述集群中待調(diào)度的多個計算任務(wù)找到了最佳劃分組合,從而最大化利用整個集群的資源,實現(xiàn)更加合理的系統(tǒng)資源調(diào)度策略。優(yōu)選地,所述用于在集群中調(diào)度計算任務(wù)的設(shè)備I還包括第三裝置(未示出),所述第三裝置將所述任務(wù)子集分配至對應(yīng)的所述集群節(jié)點,并在所述集群節(jié)點中執(zhí)行所述任務(wù)子集中的所述計算任務(wù)。
[0035]具體地,通過實時采集所述計算任務(wù)的資源使用情況,并通過計算引擎,再進行任務(wù)調(diào)度,所述互聯(lián)網(wǎng)用戶在請求某一計算任務(wù)時,所述計算任務(wù)對