專利名稱:一種具有彈性架構(gòu)的集群作業(yè)調(diào)度系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機領(lǐng)域,具體涉及高性能計算集群中一種具有彈性體系架構(gòu)的作業(yè)調(diào)度系統(tǒng),尤其涉及一種支持多集群間作業(yè)調(diào)度的方法。
背景技術(shù):
隨著計算機技術(shù)的發(fā)展,高性能計算在科學(xué)研究和工程技術(shù)中的作用越來越重要。在各個科學(xué)計算領(lǐng)域,都存在著相應(yīng)的科學(xué)計算軟件,用來輔助用戶進行問題求解。但這些軟件所面臨的一個共同問題是,用戶必須登錄到集群系統(tǒng)上才能使用相應(yīng)的軟件,創(chuàng)建作業(yè),提交V乍業(yè)。這就增加了用戶使用軟件的難度,降
低了工作效率。此外,大部分高性能集群的操作系統(tǒng)都是Lirmx或Unix,用戶要想使用某個科學(xué)計算軟件必須首先學(xué)會使用Limix或Unix,極大 的增加了用戶的負擔。目前市場上的同類作業(yè)調(diào)度系統(tǒng)產(chǎn)品主要有PlatformMultiCluster。存在的不足是產(chǎn)品價格昂貴,集群內(nèi)部的調(diào)度器只能是Platform LSF,而不支持其它集群調(diào)度器,無法為用戶提供統(tǒng)一的圖形界面和進行遠程作業(yè)管理以及滿足科學(xué)計算軟件進行問題求解。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種具有彈性架構(gòu)的集群作業(yè)調(diào)度系統(tǒng),作業(yè)調(diào)度系統(tǒng)是B/S架構(gòu)的,為用戶提供統(tǒng)一的圖形界面和進行遠程作業(yè)管理以及使用科學(xué)計算軟件進行問題求解。系統(tǒng)同時支持在集群間建立調(diào)度器,支持多集群的調(diào)度,集群內(nèi)部調(diào)度器支持OpenPBS、 MAUI,并且可以擴展。
本發(fā)明要解決的問題是用戶可以通過web提交作業(yè),使用科學(xué)計算軟件求解并且支持在集群間和集群內(nèi)部建立不同的調(diào)度器,支持多集群以及大規(guī)模集群時的作業(yè)調(diào)度。本發(fā)明的系統(tǒng)還提供應(yīng)用管理功能,自動生成作業(yè)運行時與應(yīng)用相關(guān)的運行腳本。
本發(fā)明的作業(yè)調(diào)度系統(tǒng),包括調(diào)度器管理模塊,策略管理模塊,資源管理模塊,作業(yè)管理模塊,應(yīng)用管理模塊。調(diào)度器管理模塊與策略管理模塊、資源管理模塊、作業(yè)管理模塊相連,作業(yè)管理模塊又與應(yīng)用管理模塊和資源管理模塊相連,五模塊共同協(xié)作完成作業(yè)的調(diào)度。如圖1所示。
調(diào)度器管理模塊負責(zé)創(chuàng)建調(diào)度器,控制調(diào)度器的狀態(tài),在集群間和集群內(nèi)部建立的調(diào)度器是不同的。集群間的調(diào)度器是應(yīng)用i,度器,負賁將作業(yè)按照作業(yè)的應(yīng)用屬性分配到具有該應(yīng)用的集群上,即將任務(wù)提交給具有某個應(yīng)用屬性的隊列里。集群內(nèi)部調(diào)度器負責(zé)按用戶設(shè)定的調(diào)度策略調(diào)度在該集群隊列中的任務(wù)。當大規(guī)模集群時,可以通過把這個大集群劃分成小集群,擴展集群內(nèi)調(diào)度器,降低一個調(diào)度器時的調(diào)度負載和通訊負載,來支持大規(guī)模的集群應(yīng)用。
策略管理模塊負責(zé)調(diào)度策略的制定,在本發(fā)明的系統(tǒng)中包含作業(yè)的調(diào)度策略和資源的調(diào)度策略。其中作業(yè)的調(diào)度策略,包括優(yōu)先級、資源公平共享、資源需求的策略,并允許用戶自定義調(diào)度策略;資源的調(diào)度策略包括CPU負載低優(yōu)先,資源先空閑先使用,最小滿足需求的資源優(yōu)先策略。調(diào)度器需要選擇要使用的調(diào)度策略,這些調(diào)度策略可以相同,也可以不同。資源管理模塊,負賁包括集群、功能池、節(jié)點的管理,其中節(jié)點的管理包括收集節(jié)點的靜態(tài)信息、負載信息;靜態(tài)信息包括,按核計算的CPU個數(shù),CPU類型,內(nèi)存大小,磁盤容量;負載信息包括CPU利用率、內(nèi)存利用率、磁盤利用率。調(diào)度器需要根據(jù)資源管理模塊提供的信息進行調(diào)度。
作業(yè)管理模塊,負責(zé)作業(yè)的提交、修改、刪除、重啟、掛起、退出、強制執(zhí)行,作業(yè)管理模塊與資源管理模塊和應(yīng)用管理模塊相連。作業(yè)創(chuàng)建時,可以選擇提交的集群和節(jié)點,這些集群和節(jié)點是資源管理模塊提供的;作業(yè)創(chuàng)建時時有一個應(yīng)用屬性,選擇某一應(yīng)用后,填寫這個應(yīng)用相關(guān)的參數(shù)配置,當作業(yè)提交時根據(jù)該應(yīng)用的運行命令和參數(shù)配置信息,自動生成作業(yè)運行腳本,根據(jù)應(yīng)用配置自動生成運行腳本的流程圖,如圖2所示。應(yīng)用相關(guān)的參數(shù)和應(yīng)用運行命令都是應(yīng)用管理模塊提供的,應(yīng)用管理模塊負責(zé)應(yīng)用的添加、刪除,應(yīng)用添加時,用戶界面中提示,填寫應(yīng)用名稱,添加應(yīng)用運行的命令,添加應(yīng)用描述,添加應(yīng)用參數(shù)的格式,添加應(yīng)用參數(shù)。應(yīng)用添加的流程圖如例圖3所示。
本發(fā)明的有益效果是為用戶提供web界面,使各科學(xué)應(yīng)用領(lǐng)域(如數(shù)學(xué)、化學(xué)、生物、物理、氣象、工業(yè)制造等)的研究人員、專家能夠以圖形化的方式便捷的查看集群系統(tǒng)中可用的軟硬件資源,并通過簡單的填寫和選擇參數(shù)提交作業(yè),在優(yōu)秀的作業(yè)調(diào)度器的管理下,實現(xiàn)對各領(lǐng)域?qū)I(yè)應(yīng)用軟件及系統(tǒng)計算資源的使用。本發(fā)明支持多集群間調(diào)度,通過集群系統(tǒng)的共享,可以解決用戶對計算資源的需求問題,讓用戶同時使用更多的硬件資源來解決同一個問題,從而加快問題求解的規(guī)模和速度, 一定程度上緩解某些用戶計算能力緊張的局面。采用B/S結(jié)構(gòu),符合作業(yè)調(diào)度系統(tǒng)的發(fā)展趨勢,客戶端不依賴于操作系統(tǒng)平臺,通過Web瀏覽器即可方便地對作業(yè)進行管理,為單集群和多集群上作業(yè)的管理提供了單一 :的系統(tǒng)映像。
附圖1系統(tǒng)基本結(jié)構(gòu)示意附件2根據(jù)應(yīng)用配置自動生成運行腳本的流程圖;附圖3應(yīng)用管理中添加應(yīng)用的流程圖;附圖4小規(guī)模集群時作業(yè)系統(tǒng)架構(gòu)圖;附圖5大規(guī)模集群時作業(yè)系統(tǒng)架構(gòu)圖;附圖6多集群吋作業(yè)系統(tǒng)架構(gòu)圖。
具體實施例方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清晰,下面結(jié)合附圖和實施例,對小規(guī)模集群、大規(guī)模集群、多集群時的作業(yè)系統(tǒng)架構(gòu)和作業(yè)提交的流程進行詳細說明。
為小規(guī)模集群時作業(yè)系統(tǒng)架構(gòu)圖如附圖4所示,小規(guī)模集群時,WebServer、Scheduler and Manager部署在一臺服務(wù)器上,啟動Webserver和SchedulerandManager的進程以及各Node上的Agent,用戶通過Webserver的用戶接口創(chuàng)建作業(yè)、提交作業(yè),作業(yè)進入SchedulerandManager的進程所管理的隊列等待調(diào)度,SchedulerandManager通過各Node上Agent査看各Node的資源使用情況,執(zhí)行調(diào)度策略,決定某個作業(yè)的運行情況。
為大規(guī)模集群時作業(yè)系統(tǒng)架構(gòu)圖如附圖5所示,大規(guī)模集群時,集群內(nèi)部將擴展多個SchedulerandManager ,每個SchedulerandManager管理和調(diào)度其所轄節(jié)點。WebServer、 Scheduler and Manager分別部署在不同的服務(wù)器上,這樣擴展的SchedulerandManager,分擔作業(yè)的管理,降低單個SchedulerandManager時的調(diào)度任務(wù),以降低通信瓶頸。啟動Webserver和各個SchedulerandManager的進程以及各Node上的Agent,用戶通過Webserver的用戶接口創(chuàng)建作業(yè)、提交作業(yè),在創(chuàng)建作業(yè)時用戶可以指定作業(yè)調(diào)度的SchedulerandManager,如果不指定,系統(tǒng)根據(jù)簡單的輪詢原則,將提交的作業(yè)依次分配給各SchedulerandManager,分配的作業(yè)進入相應(yīng)SchedulerandManager所管理的隊列等待調(diào)度,SchedulerandManager根據(jù)其所轄Node上的資源使用情況,執(zhí)行調(diào)度策略,確定其隊列中某個作業(yè)的運行情況。各SchedulerandManager的調(diào)度獨立進行,每個SchedulerandManager的調(diào)度策略可以不同,用戶可以根據(jù)需要設(shè)定。
為多集群時作業(yè)系統(tǒng)架構(gòu)圖如附圖6所示,多集群時,增加集群間SchedulerandManager,負責(zé)集群間的調(diào)度和管理,每個集群內(nèi)部有各自的SchedulerandManager,負責(zé)集群內(nèi)部節(jié)點的管—理和調(diào)度。WebServer、集群間的SchedulerandManager可以部署在同一臺服務(wù)器上,啟動Webserver和集群間SchedulerandManager進程,以及各集群內(nèi)部的SchedulerandManager禾晰有Node上的Agent,用戶通過Webserver的用戶接口創(chuàng)建作業(yè)、提交作業(yè),作業(yè)進入集群間SchednlerandManager的進程所管理的隊列等待調(diào)度,如果指定運行該作業(yè)的cluster,作業(yè)就直接進入該cluster的內(nèi)部調(diào)度器,如果沒有指定運行該作業(yè)的cluster,則集群間SchedulerandManager,根據(jù)作業(yè)的應(yīng)用屬性選擇當前任務(wù)最少的cluster作為運行該作業(yè)的cluster。作業(yè)進入集群內(nèi)部后,將被集群內(nèi)部的SchedulerandManager進行管理和調(diào)度。
本發(fā)明的具有彈性架構(gòu)的作業(yè)調(diào)度系統(tǒng)釆用B/S架構(gòu),用戶通過瀏覽器,可以方便快捷的進行作業(yè)管理。由于本體系結(jié)構(gòu)中允許在集群間和集群內(nèi)部支持多個調(diào)度器,當集群規(guī)模小,作業(yè)調(diào)度規(guī)則要求單一時,就可以采用一個調(diào)度器的方式進行調(diào)度,減少管理負責(zé)度;當大規(guī)模集群時,在集群內(nèi)部擴展調(diào)度器,降低一個調(diào)度器時的調(diào)度負載和通訊負載,解決單點瓶頸問題;當多集群時,增加集群間的調(diào)度器,負責(zé)將作業(yè)分配到某個集群上,然后再利用集群內(nèi)部調(diào)度器進行調(diào)度,解決多集群調(diào)度問題。當集群規(guī)模較大時或者要求集群內(nèi)部節(jié)點使用不同作業(yè)調(diào)度規(guī)則時,可以使用多個調(diào)度器進行調(diào)度。當多個集群間進行作業(yè)調(diào)度時,可以在集群間添加一個調(diào)度器,將作業(yè)先分配到集群上,然后再在集群內(nèi)部進行調(diào)度。因此本體系架構(gòu)可以滿足多集群作業(yè)調(diào)度和單集群規(guī)模較大時的作業(yè)調(diào)度。由此可見,本發(fā)明的系統(tǒng)具有很好的可擴展性,較廣適用范圍。
權(quán)利要求
1、一種具有彈性架構(gòu)的集群作業(yè)調(diào)度系統(tǒng),其特征在于,系統(tǒng)采用B/S結(jié)構(gòu),客戶端通過瀏覽器遠程實現(xiàn)作業(yè)的提交和管理;系統(tǒng)允許在集群間和集群內(nèi)部建立不同的調(diào)度器,每個調(diào)度器選擇使用的調(diào)度策略相同或不同,作業(yè)提交時根據(jù)其應(yīng)用屬性,自動生成該應(yīng)用的配置和運行腳本,當集群規(guī)模小,作業(yè)調(diào)度規(guī)則要求單一時,采用一個調(diào)度器的方式進行調(diào)度,當集群規(guī)模較大時或者要求集群內(nèi)部節(jié)點使用不同作業(yè)調(diào)度規(guī)則時,擴展多個調(diào)度器進行調(diào)度,用戶根據(jù)需要為不同的調(diào)度器選擇不同的調(diào)度規(guī)則;作業(yè)調(diào)度系統(tǒng)包括調(diào)度器管理模塊,策略管理模塊、資源管理模塊、作業(yè)管理模塊和應(yīng)用管理模塊,其中調(diào)度器管理模塊與策略管理模塊、資源管理模塊、作業(yè)管理模塊相連,作業(yè)管理模塊又與應(yīng)用管理模塊和資源管理模塊相連,五模塊共同協(xié)作完成作業(yè)的調(diào)度;調(diào)度器管理模塊負責(zé)創(chuàng)建調(diào)度器,控制調(diào)度器的狀態(tài),在集群間和集群內(nèi)部建立的調(diào)度器是不同的,集群間的調(diào)度器是應(yīng)用調(diào)度器,負責(zé)將作業(yè)按照作業(yè)的應(yīng)用屬性分配到具有該應(yīng)用的集群上,即將任務(wù)提交給具有某個應(yīng)用屬性的隊列里,集群內(nèi)部調(diào)度器負責(zé)按用戶設(shè)定的調(diào)度策略調(diào)度在該集群隊列中的任務(wù),當大規(guī)模集群時,通過把這個大集群劃分成小集群,擴展集群內(nèi)調(diào)度器,降低一個調(diào)度器時的調(diào)度負載和通訊負載,來支持大規(guī)模的集群應(yīng)用;策略管理模塊負責(zé)調(diào)度策略的制定,系統(tǒng)中包含作業(yè)的調(diào)度策略和資源的調(diào)度策略,其中作業(yè)的調(diào)度策略包括優(yōu)先級、資源公平共享、資源需求的策略,并允許用戶自定義調(diào)度策略;資源的調(diào)度策略包括CPU負載低優(yōu)先,資源先空閑先使用,最小滿足需求的資源優(yōu)先策略;調(diào)度器需要選擇要使用的調(diào)度策略,這些調(diào)度策略相同或不同;資源管理模塊負責(zé)包括集群、功能池、節(jié)點的管理,其中節(jié)點的管理包括收集節(jié)點的靜態(tài)信息、負載信息;靜態(tài)信息包括,按核計算的CPU個數(shù),CPU類型,內(nèi)存大小,磁盤容量;負載信息包括CPU利用率、內(nèi)存利用率、磁盤利用率,調(diào)度器需要根據(jù)資源管理模塊提供的信息進行調(diào)度;作業(yè)管理模塊負責(zé)作業(yè)的提交、修改、刪除、重啟、掛起、退出、強制執(zhí)行,作業(yè)管理模塊與資源管理模塊和應(yīng)用管理模塊相連,作業(yè)創(chuàng)建時,選擇提交的集群和節(jié)點,這些集群和節(jié)點是資源管理模塊提供的;作業(yè)創(chuàng)建時時有一個應(yīng)用屬性,選擇某一應(yīng)用后,填寫這個應(yīng)用相關(guān)的參數(shù)配置,當作業(yè)提交時根據(jù)該應(yīng)用的運行命令和參數(shù)配置信息,自動生成作業(yè)運行腳本,應(yīng)用相關(guān)的參數(shù)和應(yīng)用運行命令都是應(yīng)用管理模塊提供的,應(yīng)用管理模塊負責(zé)應(yīng)用的添加、刪除,應(yīng)用添加時,用戶界面中提示,填寫應(yīng)用名稱,添加應(yīng)用運行的命令,添加應(yīng)用描述,添加應(yīng)用參數(shù)的格式,添加應(yīng)用參數(shù)。
2、 根據(jù)權(quán)利要求1所描述的系統(tǒng),其特征在于,當多個集群間進行作業(yè)調(diào)度 時,在集群間添加一個調(diào)度器,通過該調(diào)度器將作業(yè)先分配到集群上,然后再利 用集群內(nèi)部的調(diào)度器在集群內(nèi)部進行調(diào)度。
3、 根據(jù)權(quán)利要求1所描述的系統(tǒng),其特征在于,該系統(tǒng)中的作業(yè)有一個應(yīng)用 屬性,作業(yè)提交時,從應(yīng)用管理模塊中獲得該應(yīng)用的配置和應(yīng)用運行命令,當作 業(yè)提交時,自動生成方便用戶使用的作業(yè)運行腳本。
全文摘要
本發(fā)明提供了一種具有彈性架構(gòu)的集群作業(yè)調(diào)度系統(tǒng),本作業(yè)調(diào)度系統(tǒng)采用B/S結(jié)構(gòu),客戶端通過web瀏覽器即可方便地實現(xiàn)作業(yè)的提交和管理,為多集群上作業(yè)的管理提供了單一的系統(tǒng)映像。系統(tǒng)結(jié)構(gòu)包括調(diào)度器管理模塊、資源管理模塊、作業(yè)管理模塊、應(yīng)用管理模塊和策略管理模塊,調(diào)度器管理模塊可以在集群間和集群內(nèi)部建立不同的調(diào)度器,每個調(diào)度器選擇使用的調(diào)度策略可以各不相同,作業(yè)管理模塊根據(jù)作業(yè)的應(yīng)用屬性,從應(yīng)用管理模塊中獲得相應(yīng)應(yīng)用的配置和應(yīng)用運行命令,當作業(yè)提交時,自動生成作業(yè)運行腳本,為作業(yè)調(diào)度提供了靈活的調(diào)度機制,方便用戶使用。
文檔編號G06F3/048GK101599026SQ20091001711
公開日2009年12月9日 申請日期2009年7月9日 優(yōu)先權(quán)日2009年7月9日
發(fā)明者剛 李, 邸雙朋, 健 魏 申請人:浪潮電子信息產(chǎn)業(yè)股份有限公司