欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于云計算的高性能計算調(diào)度框架的制作方法

文檔序號:11590104閱讀:234來源:國知局

本發(fā)明涉及云計算分析領(lǐng)域,尤其涉及一種基于云計算的高性能計算調(diào)度框架。



背景技術(shù):

隨著互聯(lián)網(wǎng)技術(shù)的流行,互聯(lián)網(wǎng)用戶的數(shù)量已經(jīng)越來越龐,這就需要互聯(lián)網(wǎng)中有效的調(diào)度作業(yè)。傳統(tǒng)的作業(yè)調(diào)度計算框架,并不能靈活地分配計算資源,容易出現(xiàn)計算資源浪費或者不能滿足計算任務(wù)要求的情況,或者在不滿足計算任務(wù)需求的時候,新的節(jié)點資源調(diào)度較慢,不能滿足高性能、實時的調(diào)度需求。



技術(shù)實現(xiàn)要素:

有鑒于現(xiàn)有技術(shù)的上述缺陷,本發(fā)明所要解決的技術(shù)問題是提供一種基于云計算的高性能計算調(diào)度框架,可以完成分布式計算程序作業(yè)的實時高息能調(diào)度到整個集群中的各個節(jié)點運行,結(jié)合云計算技術(shù),為主流云計算市場提供一種穩(wěn)定高效、基于云平臺、易拓展且高性能的高性能計算平臺。

為實現(xiàn)上述目的,本發(fā)明提供了一種基于云計算的高性能計算調(diào)度框架,包括任務(wù)提交節(jié)點、master計算節(jié)點、任務(wù)隊列模塊、slave節(jié)點和云計算平臺;

所述任務(wù)提交節(jié)點中包括任務(wù)提交模塊、狀態(tài)獲取api模塊、狀態(tài)獲取進程模塊;所述master計算節(jié)點中包括狀態(tài)獲取主進程模塊和任務(wù)調(diào)度分配器模塊;所述slave節(jié)點中包括任務(wù)接受模塊、任務(wù)啟動模塊、任務(wù)執(zhí)行模塊和狀態(tài)監(jiān)控模塊;

基于云計算的高性能計算調(diào)度框架啟動時,通過云計算平臺提供計算節(jié)點資源;在運行過程中,云計算平臺實時監(jiān)控高性能計算調(diào)度框架的中任務(wù)隊列模塊的任務(wù)隊列狀態(tài),依據(jù)等待在任務(wù)隊列中的任務(wù)數(shù)量與最大的空閑節(jié)點數(shù)量進行調(diào)度,以此準備或者回收slave節(jié)點;

高性能計算調(diào)度框架中,待運算的任務(wù)通過所述任務(wù)提交模塊提交給任務(wù)調(diào)度分配器模塊,所述任務(wù)調(diào)度分配器模塊將任務(wù)放入相應(yīng)的任務(wù)隊列模塊中,所述任務(wù)調(diào)度分配器模塊實時的從狀態(tài)獲取主進程模塊中獲取整個集群的負載狀況,并將任務(wù)通過任務(wù)隊列模塊傳輸給slave節(jié)點去執(zhí)行,所述slave節(jié)點中的任務(wù)接受模塊接收到任務(wù)后通過任務(wù)啟動模塊啟動任務(wù),再由任務(wù)執(zhí)行模塊執(zhí)行操作,執(zhí)行過程中通過狀態(tài)監(jiān)控模塊進行狀態(tài)監(jiān)控,并將所得的信息傳送給狀態(tài)獲取進程模塊,所述任務(wù)提交模塊將正在執(zhí)行的任務(wù)進度與狀態(tài)等信息通過狀態(tài)獲取api模塊傳送給狀態(tài)獲取進程模塊,所述狀態(tài)獲取進程模塊將所得的信息傳送給狀態(tài)獲取主進程模塊作為任務(wù)調(diào)度的依據(jù),所述狀態(tài)獲取主進程模塊中存放了整個集群節(jié)點的性能信息和所有任務(wù)執(zhí)行狀態(tài)的監(jiān)控信息。

以上系統(tǒng),首先通過api申請master計算資源節(jié)點,在云計算平臺接收到申請請求以后,在云資源池上動態(tài)劃分云計算資源節(jié)點,并通過master模版部署,形成master計算節(jié)點,并運行,同時云計算平臺完成master程序的服務(wù)端口配置,形成master服務(wù),供slave節(jié)點連接;master云計算資源節(jié)點完成部署,形成master服務(wù)以后,啟動slave集群節(jié)點的申請,云計算平臺動態(tài)申請相應(yīng)數(shù)量的slave節(jié)點,并且通過slave模版完成slave程序的部署與配置;slave所有的節(jié)點在啟動時,通過云計算平臺提供的服務(wù)發(fā)現(xiàn)動態(tài)發(fā)現(xiàn)master服務(wù),并將自身注冊到master管理器,完成整個集群的配置。

所述slave節(jié)點作為執(zhí)行服務(wù)器來執(zhí)行相應(yīng)任務(wù);待運算的任務(wù)放到j(luò)obfile中通過任務(wù)調(diào)度分配器模塊將任務(wù)放入相應(yīng)的任務(wù)隊列,任務(wù)進入不同隊列的依據(jù)可以是任務(wù)提交時設(shè)置,也可由任務(wù)調(diào)度分配器模塊進行自動判斷;任務(wù)提交是異步的,所以不影響后續(xù)的任務(wù)提交,也不影響任務(wù)調(diào)度;任務(wù)調(diào)度分配器模塊一旦發(fā)現(xiàn)一個任務(wù)的資源需求可以得到滿足,就可將任務(wù)傳輸給slave節(jié)點去執(zhí)行,當(dāng)任務(wù)執(zhí)行模塊執(zhí)行操作時,將jobfile中要執(zhí)行的計算任務(wù)加載到fork出來的進程中,jobfile中除了要執(zhí)行的計算任務(wù)描述,還包括環(huán)境變量等描述,在執(zhí)行時也需要依據(jù)描述進行環(huán)境變量設(shè)置,master的狀態(tài)獲取主進程模塊會將任務(wù)的狀態(tài)放在內(nèi)存中,直到收到clean_perid信號(任務(wù)完成信號),收到該信號以后,master將刪除該任務(wù)信息,至此,也即完成了一個任務(wù)的調(diào)度。

較佳的,所述狀態(tài)監(jiān)控模塊是一種分布式監(jiān)控程序,分別監(jiān)控master計算節(jié)點上的狀態(tài)獲取主進程和slave節(jié)點的狀態(tài)信息。監(jiān)控的信息包括slave服務(wù)器本身的性能信息、slave節(jié)點作為執(zhí)行服務(wù)器正在執(zhí)行的任務(wù)進度與狀態(tài),并將這些性能信息、進度與狀態(tài)信息實時(也可以說是短周期,默認5s)傳送給master的狀態(tài)獲取主進程模塊。狀態(tài)獲取主進程模塊將slave服務(wù)器的性能信息以鏈表的形式存放在內(nèi)存中,同時將任務(wù)執(zhí)行的進度與狀態(tài)信息作為鏈表的形式存放在內(nèi)存中,這樣就形成了關(guān)于整個集群節(jié)點的實時監(jiān)控,所有任務(wù)執(zhí)行狀態(tài)的監(jiān)控。

本發(fā)明的有益效果是:本發(fā)明通過云計算提供計算資源節(jié)點并基于云計算的高性能計算調(diào)度框架,可以高效的分配計算資源,高效的調(diào)度任務(wù),可對所調(diào)度的計算節(jié)點進行監(jiān)控,根據(jù)任務(wù)量大小新增或釋放節(jié)點,穩(wěn)定高效地完成任務(wù)且不浪費云平臺中的資源。

附圖說明

圖1是本發(fā)明實施例一的流程示意圖;

具體實施方式

下面結(jié)合附圖和實施例對本發(fā)明作進一步說明:

如圖1所示,本實施例包括任務(wù)提交節(jié)點、master計算節(jié)點、任務(wù)隊列模塊、slave節(jié)點和云計算平臺;

所述任務(wù)提交節(jié)點中包括任務(wù)提交模塊、狀態(tài)獲取api模塊、狀態(tài)獲取進程模塊;所述master計算節(jié)點中包括狀態(tài)獲取主進程模塊和任務(wù)調(diào)度分配器模塊;所述slave節(jié)點中包括任務(wù)接受模塊、任務(wù)啟動模塊、任務(wù)執(zhí)行模塊和狀態(tài)監(jiān)控模塊;

基于云計算的高性能計算調(diào)度框架啟動時,通過云計算平臺提供計算節(jié)點資源;在運行過程中,云計算平臺實時監(jiān)控高性能計算調(diào)度框架的中任務(wù)隊列模塊的任務(wù)隊列狀態(tài),依據(jù)等待在任務(wù)隊列中的任務(wù)數(shù)量與最大的空閑節(jié)點數(shù)量進行調(diào)度,以此準備或者回收slave節(jié)點;

高性能計算調(diào)度框架中,待運算的任務(wù)通過所述任務(wù)提交模塊提交給任務(wù)調(diào)度分配器模塊,所述任務(wù)調(diào)度分配器模塊將任務(wù)放入相應(yīng)的任務(wù)隊列模塊中,所述任務(wù)調(diào)度分配器模塊實時的從狀態(tài)獲取主進程模塊中獲取整個集群的負載狀況,并將任務(wù)通過任務(wù)隊列模塊傳輸給slave節(jié)點去執(zhí)行,所述slave節(jié)點中的任務(wù)接受模塊接收到任務(wù)后通過任務(wù)啟動模塊啟動任務(wù),再由任務(wù)執(zhí)行模塊執(zhí)行操作,執(zhí)行過程中通過狀態(tài)監(jiān)控模塊進行狀態(tài)監(jiān)控,并將所得的信息傳送給狀態(tài)獲取進程模塊,所述任務(wù)提交模塊將正在執(zhí)行的任務(wù)進度與狀態(tài)等信息通過狀態(tài)獲取api模塊傳送給狀態(tài)獲取進程模塊,所述狀態(tài)獲取進程模塊將所得的信息傳送給狀態(tài)獲取主進程模塊作為任務(wù)調(diào)度的依據(jù),所述狀態(tài)獲取主進程模塊中存放了整個集群節(jié)點的性能信息和所有任務(wù)執(zhí)行狀態(tài)的監(jiān)控信息。

如果任務(wù)在執(zhí)行時,任務(wù)隊列模塊中等待的任務(wù)過多,整個集群不能較快的執(zhí)行的新的任務(wù)時,云計算平臺會依據(jù)自身的調(diào)度原則提供新的計算資源給高性能計算調(diào)度框架,master計算節(jié)點收到新創(chuàng)建的計算資源節(jié)點以后,作為slave節(jié)點添加到集群中,這時可以將等待隊列中的任務(wù)向新添加的節(jié)點進行調(diào)度,從而減輕等待的任務(wù)。如果集群中某些slave節(jié)點沒有任務(wù)執(zhí)行達到一定的時間,master計算節(jié)點則標記空閑的節(jié)點狀態(tài),云計算平臺依據(jù)調(diào)度原則回收這些空閑節(jié)點,作為云計算平臺的資源,從而時高性能計算調(diào)度框架實時保持在一個適度的利用率之中,提高生產(chǎn)效率,降低資源浪費。

基于云計算的高性能計算調(diào)度框架啟動時,通過云計算平臺提供計算節(jié)點資源;在運行過程中,云計算平臺實時監(jiān)控高性能計算調(diào)度框架的中任務(wù)隊列模塊的任務(wù)隊列狀態(tài),依據(jù)等待在任務(wù)隊列中的任務(wù)數(shù)量與最大的空閑節(jié)點數(shù)量進行調(diào)度,以此準備或者回收slave節(jié)點。例如設(shè)定任務(wù)隊列模塊中任務(wù)隊列中等待分配計算資源的任務(wù)數(shù)量最大閥值為50,同時設(shè)定高性能計算調(diào)度框架集群中空閑的slave節(jié)點的數(shù)量最多為10,則云計算平臺將進行如下調(diào)度:

通過云計算平臺監(jiān)控到任務(wù)隊列模塊中等待的隊列數(shù)量達到50,則從master計算節(jié)點的狀態(tài)獲取主進程模塊中獲取目前集群節(jié)點中每個slave節(jié)點的平均處理任務(wù)數(shù)量,例如每個slave節(jié)點的平均處理任務(wù)數(shù)量為10,則自動劃分6個新的slave節(jié)點,其中1用作冗余,并部署slave應(yīng)用程序,然后通知master計算節(jié)點,6個新的slave節(jié)點已經(jīng)準備到位,master計算節(jié)點這時可以添加6個slave節(jié)點到自己的計算集群,并分配任務(wù)到新的計算節(jié)點。

云計算平臺在完成新的資源節(jié)點的添加后,繼續(xù)通過狀態(tài)監(jiān)控模塊持續(xù)監(jiān)控高性能計算集群的狀態(tài),如果發(fā)現(xiàn)高性能計算集群的空閑slave節(jié)點數(shù)量到達10,則持續(xù)觀察10分鐘,如果到達10分鐘以后,空閑slave節(jié)點數(shù)量仍然大于10,則啟動自動回收調(diào)度,云計算平臺向master計算節(jié)點獲取空閑的節(jié)點的信息,將這些計算資源節(jié)點回收,減少高性能計算集群的空閑節(jié)點上數(shù)量。

一旦集群中的某個節(jié)點資源出現(xiàn)問題,高性能計算調(diào)度框架將該節(jié)點上運行的任務(wù)重新調(diào)度到其他節(jié)點運行,master計算節(jié)點會默認按照每5s一次的頻率獲取slave節(jié)點的狀態(tài),包括服務(wù)器本身的性能信息,也包括slave節(jié)點作為執(zhí)行服務(wù)器正在執(zhí)行的任務(wù)進度與狀態(tài),一旦發(fā)現(xiàn)15s之內(nèi)某一個slave節(jié)點沒有任何的響應(yīng),則認為該節(jié)點已經(jīng)出現(xiàn)問題,則將該節(jié)點從調(diào)度器中刪除,同時標記為空閑節(jié)點(讓云計算平臺進行回收),同時將運行在該slave節(jié)點的任務(wù)調(diào)度到其他節(jié)點去運行,調(diào)度的依據(jù)為將其調(diào)度到資源利用率較低或者空閑的slave節(jié)點中。

程序具備斷點恢復(fù)的能力,計算狀態(tài)可以快速的進行恢復(fù),不需要全部重新計算。整個集群需要配置外置存儲,所有的計算任務(wù)狀態(tài)在master內(nèi)存中保存的是執(zhí)行的結(jié)果狀態(tài)與存儲位置,實時的進度狀態(tài)由slave節(jié)點實時的保存到外置存儲中(以log日志的形式),狀態(tài)恢復(fù)時,新的節(jié)點依據(jù)master的記錄,找到外置存儲中需要恢復(fù)的任務(wù)log在外置存儲中的位置,讀取log日志,恢復(fù)進程計算狀態(tài)。

通過對高性能計算平臺運算任務(wù)的分析,可以根據(jù)運算需求提供當(dāng)前需要的計算節(jié)點數(shù)量,并且由高性能計算調(diào)度框架管理這些云計算節(jié)點形成集群,然后并發(fā)調(diào)度執(zhí)行需要的計算任務(wù)到集群中的各個節(jié)點,量變化時,根據(jù)任務(wù)在執(zhí)行過程中,由云計算平臺對集群中臺進行進行監(jiān)控。當(dāng)計算任務(wù)量大小新增或釋放容器,穩(wěn)定高效地完成任務(wù)且不浪費云平臺中的資源。

以上詳細描述了本發(fā)明的較佳具體實施例。應(yīng)當(dāng)理解,本領(lǐng)域的普通技術(shù)人員無需創(chuàng)造性勞動就可以根據(jù)本發(fā)明的構(gòu)思作出諸多修改和變化。因此,凡本技術(shù)領(lǐng)域中技術(shù)人員依本發(fā)明的構(gòu)思在現(xiàn)有技術(shù)的基礎(chǔ)上通過邏輯分析、推理或者有限的實驗可以得到的技術(shù)方案,皆應(yīng)在由權(quán)利要求書所確定的保護范圍內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
商都县| 乌拉特前旗| 乃东县| 长宁区| 长海县| 太湖县| 蓬溪县| 兰溪市| 景洪市| 鹤岗市| 确山县| 璧山县| 鲜城| 襄樊市| 拉萨市| 沙田区| 铁岭县| 化隆| 岐山县| 湟源县| 博白县| 湾仔区| 大石桥市| 临颍县| 泊头市| 延长县| 同德县| 桐城市| 临漳县| 洪湖市| 金塔县| 文安县| 秦安县| 大姚县| 五华县| 夏津县| 财经| 元阳县| 临漳县| 新绛县| 靖州|