亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

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

文檔序號(hào):11590104閱讀:232來(lái)源:國(guó)知局

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



背景技術(shù):

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



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

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

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

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

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

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

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

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

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

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

附圖說(shuō)明

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

具體實(shí)施方式

下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步說(shuō)明:

如圖1所示,本實(shí)施例包括任務(wù)提交節(jié)點(diǎn)、master計(jì)算節(jié)點(diǎn)、任務(wù)隊(duì)列模塊、slave節(jié)點(diǎn)和云計(jì)算平臺(tái);

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

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

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

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

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

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

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

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

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

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

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

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1