專利名稱:一種去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng)與調(diào)度方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種跨集群的資源管理與任務(wù)調(diào)度系統(tǒng)與調(diào)度方法,特別是涉及一種 去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng)與調(diào)度方法。
背景技術(shù):
單集群作業(yè)調(diào)度程序已經(jīng)實現(xiàn)了單集群的作業(yè)調(diào)度及負載均衡,一旦作業(yè)過多, 所需計算資源大于集群的現(xiàn)有資源,將造成低優(yōu)先級作業(yè)的等待,勢必影響用戶的使用體 驗,因此,尋求一種跨集群資源管理與任務(wù)調(diào)度方法十分必要。跨集群資源管理和作業(yè)調(diào)度 分為中心化管理調(diào)度和去中心化作業(yè)管理調(diào)度,中心化管理調(diào)度存在中心失效導致系統(tǒng)整 體癱瘓的問題,而且中心集群的安全也直接影響系統(tǒng)中其他集群的安全,而去中心化管理 調(diào)度是一種網(wǎng)狀結(jié)構(gòu),單集群的問題不會影響整體系統(tǒng),因此,需要尋找一種提高作業(yè)調(diào)度 的效率,節(jié)省數(shù)據(jù)傳輸時間的去中心化的跨集群資源管理與任務(wù)調(diào)度方法。發(fā)明內(nèi)容
針對以上發(fā)明的目的在于提供一種去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng) 與調(diào)度方法,以解決作業(yè)所需資源大于集群已有資源時,作業(yè)的執(zhí)行效率問題。
每個集群系統(tǒng)都可成為一個自組織和自管理的子系統(tǒng),同時多個集群又可聯(lián)合起 來構(gòu)成一個網(wǎng)狀的系統(tǒng)進行統(tǒng)一管理和使用。此過程對用戶是透明的,用戶無需關(guān)心其任 務(wù)在哪臺主機或哪個集群中運行,只需通過Web頁面進行簡單的作業(yè)提交即可使用多個集 群中龐大的計算資源。系統(tǒng)分為三個模塊,分別為:個性化門戶、資源監(jiān)控器和任務(wù)管理器。 個性化門戶是一個web門戶頁面,提供給用戶一個提交任務(wù)的界面,負責與用戶交互。資源 監(jiān)控器負責本地集群及遠端集群的資源監(jiān)控,資源監(jiān)控為任務(wù)分發(fā)提供依據(jù)。任務(wù)管理器 負責任務(wù)執(zhí)行和任務(wù)分發(fā),在本地資源滿足任務(wù)要求的前提下,任務(wù)管理器優(yōu)先將任務(wù)調(diào) 度至本地集群執(zhí)行,在本地資源不足而外集群資源充足的情況下,任務(wù)管理器將任務(wù)分發(fā), 調(diào)度至別的集群執(zhí)行任務(wù),并在任務(wù)完成后收回結(jié)果文件。系統(tǒng)運行過程分為以下三個部 分:
一、本地集群資源的管理和任務(wù)執(zhí)行
由于帶寬等因素的制約,用戶提交任務(wù)將優(yōu)先使用本地資源。本地集群中的資源 包括硬件資源、軟件資源和服務(wù)資源三類,由資源管理中心進行統(tǒng)一管理和使用。集群中的 資源可動態(tài)變化,即支持資源的隨時移入和移出。用戶提交的后,任務(wù)管理器向資源管理中 心提出查詢請求,資源管理中心收集集群內(nèi)資源信息,并將結(jié)果返回給任務(wù)調(diào)度器。本地資 源可以滿足需求時,任務(wù)由任務(wù)管理器加入任務(wù)隊列,等待分配資源執(zhí)行,執(zhí)行完畢后通知 用戶并將結(jié)果返回。
二、本地資源不足時,跨集群使用遠程資源
當出現(xiàn)以下幾種情況,將使用跨集群的資源:1.本地集群沒有任務(wù)執(zhí)行所需的資源。如任務(wù)需要使用ansys軟件,本地資源沒有,而其它集群有此類軟件。2.本地負載過 重。如任務(wù)排隊現(xiàn)象過于嚴重。此時,資源管理中心則與其他集群的資源管理中心進行通 訊,收集其它集群的狀態(tài)信息,為任務(wù)的跨集群調(diào)度提供數(shù)據(jù)支持。
三、將任務(wù)調(diào)度至其他集群執(zhí)行并進行管理
本地集群的資源無法滿足任務(wù)的需求時,任務(wù)管理器將根據(jù)其它集群資源管理中 心反饋回的結(jié)果擇優(yōu)挑選目的集群,進行跨集群的任務(wù)調(diào)度。任務(wù)將由其他集群的任務(wù)管 理器加入其任務(wù)隊列。本地的任務(wù)管理器也可對其調(diào)度出的任務(wù)進行kill、結(jié)果取回等操 作。對于運行時間較長的任務(wù),還可以隨時取回中間結(jié)果以方便用戶核對與使用。
跨集群作業(yè)調(diào)度模塊完成的任務(wù)是將本地集群排隊的作業(yè)合理地分配到其他集 群計算,待作業(yè)完成后,能夠快速及時地獲取作業(yè)結(jié)果??缂鹤鳂I(yè)調(diào)度模塊遵循集群間負 載均衡的原理,實現(xiàn)跨集群作業(yè)調(diào)度策略??缂鹤鳂I(yè)調(diào)度策略將綜合考慮集群間的物理 距離,網(wǎng)絡(luò)傳輸速度,各集群計算能力等因素。跨集群作業(yè)調(diào)度模塊的主要功能有:
(I)作業(yè)控制:支持用戶對其提交作業(yè)的控制,包括對作業(yè)的提交、刪除、修改和監(jiān) 視功能以及用戶對作業(yè)結(jié)果的取回。此外還支持管理員對用戶提交作業(yè)的全局管理功能。
(2)作業(yè)處理輔助:為作業(yè)處理提供前期準備和后續(xù)支持,包括建立批處理作業(yè), 將處理作業(yè)加入執(zhí)行隊列,定時記錄作業(yè)處理情況、將作業(yè)結(jié)果存放至指定位置,便于用戶 取回等功能。
(3)作業(yè)處理控制:根據(jù)用戶需求,對作業(yè)的處理進行控制,包括對作業(yè)計算時間、 占用CPU數(shù)目、占用內(nèi)存大小、存儲數(shù)據(jù)大小等進行控制。
(4)高效的調(diào)度策略:由于計算能力、用戶需求不同,提供對作業(yè)優(yōu)先級、資源使用 優(yōu)先級、用戶份額控制,保證用戶滿意度和資源的使用效率。
(5)負載均衡:分布式和并行計算時,應(yīng)考慮負載均衡問題,跨集群作業(yè)調(diào)度模塊 可以根據(jù)各集群的負載情況,綜合考慮數(shù)據(jù)傳輸效率,為等待作業(yè)分配計算資源,確保作業(yè) 的運行效率。
本發(fā)明的目的通過以下技術(shù)方案來實現(xiàn):
一種去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng),該調(diào)度系統(tǒng)包括:
提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng),收集其它子系統(tǒng)的信息,提供監(jiān)控、報表與計費、 資源共享協(xié)調(diào)工作,同時對高性能計算系統(tǒng)的管理、規(guī)劃提供決策參考;
提供計算服務(wù)的子系統(tǒng),設(shè)置有高性能計算節(jié)點的數(shù)據(jù)中心,作為提供計算子系 統(tǒng),同時收集本地和遠程的資源,以此為依據(jù)進行作業(yè)調(diào)度;
提供接入的子系統(tǒng),為用戶提供本地化的作業(yè)提交、管理訪問服務(wù)。
進一步,所述提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng)、提供計算服務(wù)的子系統(tǒng)和提供接入 的子系統(tǒng)分別包括:
個性化門戶,用于與客戶交互請求資源信息;
資源監(jiān)控器,用于對本地集群及遠端集群的資源監(jiān)控,為任務(wù)管理分發(fā)提供依 據(jù);
任務(wù)管理器,用于對本地集群資源和外集群資源進行分析,對請求任務(wù)進行分配。
3進一步,所述提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng),提供計算服務(wù)的子系統(tǒng)和提供接入 的子系統(tǒng)之間的調(diào)用采用web service實現(xiàn),保證接口的統(tǒng)一性和對防火墻的跨越性
—種去中心化的跨集群資源管理與任務(wù)調(diào)度方法,該方法包括:
I)個性化門戶提供用戶交互界面,提交任務(wù)至任務(wù)管理器;
2 )資源監(jiān)控器搜集本地集群或者跨集群搜集可用資源信息;
3)根據(jù)獲取的可用資源信息,任務(wù)管理器選擇任務(wù)分配的目的集群并由該集群執(zhí) 行分配任務(wù)。
進一步,所述步驟2中資源監(jiān)控器搜集本地集群資源的具體方法為:資源監(jiān)控器 每隔一定的時間收集本集群及其他集群的資源信息,當有任務(wù)通過門戶提交時,任務(wù)管理 器查看資源管理中心收集集群內(nèi)資源信息,如是否有所需軟件、是否計算資源足夠、任務(wù)隊 列是否過長等,并對采集到的信息進行判斷,如果能夠滿足條件則將該任務(wù)加入到本地隊 列中,任務(wù)隊列按照優(yōu)先級與加入時間依次執(zhí)行,任務(wù)執(zhí)行完畢后將結(jié)果返回給個性化門 戶。
進一步,所述步驟2中資源監(jiān)控器跨集群搜集資源時的具體方法為:每個集群通 過本地的個性化門戶接受到任務(wù)后,資源監(jiān)控器查詢本地資源能否滿足計算需求,如能滿 足,則在集群內(nèi)部完成任務(wù),如果不能滿足計算需求,則遍歷配置文件中的集群,選取合適 的集群并將任務(wù)分配至該集群上。
進一步,所述步驟3中集群執(zhí)行分配任務(wù)的具體步驟包括:
(I)用戶登錄本地門戶,驗證通過后,提交任務(wù);
(2)提交作業(yè)時,任務(wù)管理器根據(jù)本地資源管理中心提供的數(shù)據(jù),判斷本地資源是 否滿足需求;
(3)如果本地資源滿足任務(wù)的需求則使用本地調(diào)度組件將任務(wù)提交至本地運行;
(4)如果本地資源無法滿足任務(wù)的需求,則跨集群收集信息,使用遠程調(diào)度組件將 任務(wù)轉(zhuǎn)發(fā)至適當?shù)募合到y(tǒng);
(5)遠程的集群系統(tǒng)要根據(jù)所需進行許可證license申請;申請成功后執(zhí)行計算 資源預(yù)留操作;預(yù)留成功后再發(fā)出數(shù)據(jù)文件的傳輸請求,用戶上傳至本地的數(shù)據(jù)文件將傳 輸至遠程集群系統(tǒng)中,傳輸完畢后立即執(zhí)行作業(yè)。當某個環(huán)節(jié)失敗后將對前面的步驟進行 回滾操作,如計算資源預(yù)留失敗將釋放license資源;
(6)作業(yè)完成后,將計算結(jié)果取回本地,提供用戶下載、在線瀏覽方式的使用,對于 運行時間較長的任務(wù),還可以隨時取回中間結(jié)果以方便用戶核對與使用。
進一步,所述的步驟2中的資源信息根據(jù)信息的變換,分為靜態(tài)信息和動態(tài)信息, 所述靜態(tài)信息在首次資源收集時寫入資源配置文件時,不再重復采集;所述動態(tài)信息為資 源加入時隨時發(fā)生變動的數(shù)據(jù),由系統(tǒng)周期性或接受請求時采集。
本發(fā)明的優(yōu)點在于:
去中心化的跨集群資源管理與任務(wù)調(diào)度方法整合單集群資源,一方面提高了作業(yè) 的執(zhí)行效率,提高了用戶體驗,另一方面也有效利用了現(xiàn)有資源,使資源得到最大化利用, 節(jié)省了購買硬件以擴充計算能力的成本。
圖1:本發(fā)明集群資源管理與任務(wù)調(diào)度系統(tǒng)結(jié)構(gòu)圖2:跨集群資源調(diào)度方法流程圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明進行詳細說明。
如圖1所示為本發(fā)明集群資源管理與任務(wù)調(diào)度系統(tǒng)結(jié)構(gòu)圖,針對資源的分布與功 能特性,本發(fā)明將系統(tǒng)分為三類,分別是:提供計算管理與協(xié)調(diào)服務(wù)的子系統(tǒng),提供計算服 務(wù)的子系統(tǒng)和提供接入的子系統(tǒng)。各子系統(tǒng)間的調(diào)用使用web service實現(xiàn),保證了接口 的統(tǒng)一'丨生和對防火墻的跨越性。
(I)提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng)
部分單位本身并不提供高性能計算服務(wù),但提供管理與協(xié)調(diào)的功能。該子系統(tǒng)收 集其它子系統(tǒng)的信息,提供監(jiān)控、報表與計費、資源共享協(xié)調(diào)等工作。為高性能計算系統(tǒng)的 管理、規(guī)劃提供決策參考。
(2)提供計算服務(wù)的子系統(tǒng)
部署有高性能計算節(jié)點的數(shù)據(jù)中心,作為提供計算子系統(tǒng),是任務(wù)運行與調(diào)度的 實體。它們通過資源管理模塊收集本地和遠程的資源,再以此為依據(jù)進行作業(yè)調(diào)度。
(3)提供接入的子系統(tǒng)
提供接入的子系統(tǒng)將建設(shè)在沒有配備高性能集群的單位,但可以為用戶提供本地 化的作業(yè)提交、管理等訪問體驗,并幫助單位快速地加入到跨集群高性能系統(tǒng)中。
該分類方式結(jié)合了傳統(tǒng)集群管理系統(tǒng)中慣用的“主-從式”與當前云計算流行的 “對等式”管理的優(yōu)缺點,每個系統(tǒng)各司其職,但一個子系統(tǒng)的故障不會對其它子系統(tǒng)造成 影響,從而達到了去中心化的目的,將星型的管理方式轉(zhuǎn)變?yōu)榫W(wǎng)狀的管理方式。
如圖2所示為跨集群資源調(diào)度方法流程圖,一種去中心化的跨集群資源管理與任 務(wù)調(diào)度方法的具體步驟為:
第一步、個性化門戶提交任務(wù)
此處個性化門戶可以為Web門戶網(wǎng)站,通過Web門戶網(wǎng)站,用戶將提交任務(wù)至高性 能集群執(zhí)行。門戶網(wǎng)站提供給用戶使用各種工具軟件的接口,如fluent任務(wù),用戶根據(jù)網(wǎng) 頁的內(nèi)容,填入運行軟件所需的參數(shù),如fluent任務(wù)需給出后綴名為.cas的文件,并設(shè)定 迭代次數(shù),用戶提交任務(wù)后,自動生成軟件調(diào)用命令,并傳入相應(yīng)的參數(shù),同時給出相關(guān)運 行文件的路徑地址。
第二步、資源監(jiān)控器收集資源信息
1、資源分類
針對任務(wù)調(diào)度的特點,將資源分為三類:計算資源、軟件資源和服務(wù)資源。根據(jù)信 息的變化性,又可細分為靜態(tài)信息和動態(tài)信息。靜態(tài)信息在資源加入時寫入,不再重復采 集。動態(tài)信息為資源的隨時會發(fā)生變動的數(shù)據(jù),由系統(tǒng)周期性或接受請求時進行采集。
權(quán)利要求
1.一種去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng),其特征在于,該調(diào)度系統(tǒng)包括:提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng),收集其它子系統(tǒng)的信息,提供監(jiān)控、報表與計費、資源共享協(xié)調(diào)工作,同時對高性能計算系統(tǒng)的管理、規(guī)劃提供決策參考;提供計算服務(wù)的子系統(tǒng),設(shè)置有高性能計算節(jié)點的數(shù)據(jù)中心,作為提供計算子系統(tǒng),同時收集本地和遠程的資源,以此為依據(jù)進行作業(yè)調(diào)度;提供接入的子系統(tǒng),為用戶提供本地化的作業(yè)提交、管理訪問服務(wù)。
2.根據(jù)權(quán)利要求1所述的一種去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng),其特征在于,所述提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng)、提供計算服務(wù)的子系統(tǒng)和提供接入的子系統(tǒng)分別包括:個性化門戶,用于與客戶交互請求資源信息;資源監(jiān)控器,用于對本地集群及遠端集群的資源監(jiān)控,為任務(wù)管理分發(fā)提供依據(jù);任務(wù)管理器,用于對本地集群資源和外集群資源進行分析,對請求任務(wù)進行分配。
3.根據(jù)權(quán)利要求1所述的一種去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng),其特征在于,所述提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng),提供計算服務(wù)的子系統(tǒng)和提供接入的子系統(tǒng)之間的調(diào)用采用web service實現(xiàn),保證接口的統(tǒng)一'I"生和對防火墻的跨越性。
4.一種去中心化的跨集群資源管理與任務(wù)調(diào)度方法,其特征在于,該方法包括:1)個性化門戶提供用戶交互界面,提交任務(wù)至任務(wù)管理器;2)資源監(jiān)控器搜集本地集群或者跨集群搜集可用資源信息;3)根據(jù)獲取的可用資源信息,任務(wù)管理器選擇任務(wù)分配的目的集群并由該集群執(zhí)行分配任務(wù)。
5.根據(jù)權(quán)利要求4所述的一種去中心化的跨集群資源管理與任務(wù)調(diào)度方法,其特征在于,所述步驟2中資源監(jiān)控器搜集本地集群資源的具體方法為:資源監(jiān)控器每隔一定的時間收集本集群及其他集群的資源信息,當有任務(wù)通過門戶提交時,任務(wù)管理器查看資源管理中心收集集群內(nèi)資源信息,如是否有所需軟件、是否計算資源足夠、任務(wù)隊列是否過長等,并對采集到的信息進行判斷,如果能夠 滿足條件則將該任務(wù)加入到本地隊列中,任務(wù)隊列按照優(yōu)先級與加入時間依次執(zhí)行,任務(wù)執(zhí)行完畢后將結(jié)果返回給個性化門戶。
6.根據(jù)權(quán)利要求4所述的一種去中心化的跨集群資源管理與任務(wù)調(diào)度方法,其特征在于,所述步驟2中資源監(jiān)控器跨集群搜集資源時的具體方法為:每個集群通過本地的個性化門戶接受到任務(wù)后,資源監(jiān)控器查詢本地資源能否滿足計算需求,如能滿足,則在集群內(nèi)部完成任務(wù),如果不能滿足計算需求,則遍歷配置文件中的集群,選取合適的集群并將任務(wù)分配至該集群上。
7.根據(jù)權(quán)利要求4所述的一種去中心化的跨集群資源管理與任務(wù)調(diào)度方法,其特征在于,所述步驟3中集群執(zhí)行分配任務(wù)的具體步驟包括:(1)用戶登錄本地門戶,驗證通過后,提交任務(wù);(2)提交作業(yè)時,任務(wù)管理器根據(jù)本地資源管理中心提供的數(shù)據(jù),判斷本地資源是否滿足需求;(3)如果本地資源滿足任務(wù)的需求則使用本地調(diào)度組件將任務(wù)提交至本地運行;(4)如果本地資源無法滿足任務(wù)的需求,則跨集群收集信息,使用遠程調(diào)度組件將任務(wù)轉(zhuǎn)發(fā)至適當?shù)募合到y(tǒng);(5)遠程的集群系統(tǒng)要根據(jù)所需進行許可證license申請;申請成功后執(zhí)行計算資源預(yù)留操作;預(yù)留成功后再發(fā)出數(shù)據(jù)文件的傳輸請求,用戶上傳至本地的數(shù)據(jù)文件將傳輸至遠程集群系統(tǒng)中,傳輸完畢后立即執(zhí)行作業(yè)。當某個環(huán)節(jié)失敗后將對前面的步驟進行回滾操作,如計算資源預(yù)留失敗將釋放license資源;(6)作業(yè)完成后,將計算結(jié)果取回本地,提供用戶下載、在線瀏覽方式的使用,對于運行時間較長的任務(wù),還可以隨時取回中間結(jié)果以方便用戶核對與使用。
8.根據(jù)權(quán)利要求4所述的一種去中心化的跨集群資源管理與任務(wù)調(diào)度方法,其特征在于,所述的步驟2中的資源信息根據(jù)信息的變換,分為靜態(tài)信息和動態(tài)信息,所述靜態(tài)信息在首次資源收集時寫入資源配置文件時,不再重復采集;所述動態(tài)信息為資源加入時隨時發(fā)生變 動的數(shù)據(jù),由系統(tǒng)周期性或接受請求時采集。
全文摘要
本發(fā)明涉及一種去中心化的跨集群資源管理與任務(wù)調(diào)度系統(tǒng)與調(diào)度方法,該調(diào)度系統(tǒng)包括提供管理與協(xié)調(diào)服務(wù)的子系統(tǒng),收集其它子系統(tǒng)的信息,提供監(jiān)控、報表與計費、資源共享協(xié)調(diào)工作,同時對高性能計算系統(tǒng)的管理、規(guī)劃提供決策參考;提供計算服務(wù)的子系統(tǒng),設(shè)置有高性能計算節(jié)點的數(shù)據(jù)中心,作為提供計算子系統(tǒng),同時收集本地和遠程的資源,以此為依據(jù)進行作業(yè)調(diào)度;提供接入的子系統(tǒng),為用戶提供本地化的作業(yè)提交、管理訪問服務(wù)。本發(fā)明去中心化的跨集群資源管理與任務(wù)調(diào)度方法整合單集群資源,一方面提高了作業(yè)的執(zhí)行效率,提高了用戶體驗,另一方面也有效利用了現(xiàn)有資源,使資源得到最大化利用,節(jié)省了購買硬件以擴充計算能力的成本。
文檔編號G06F9/50GK103207814SQ20121058040
公開日2013年7月17日 申請日期2012年12月27日 優(yōu)先權(quán)日2012年12月27日
發(fā)明者吳增巍, 王琪 申請人:北京仿真中心