本發(fā)明涉及信息技術領域,具體涉及一種云平臺虛擬資源高速調度方法與系統(tǒng)。
背景技術:
目前,隨著互聯(lián)網及其應用的快速發(fā)展,網絡發(fā)生了架構性改變,由原來的互聯(lián)網、廣域網、城域網與局域網架構發(fā)展為云管端的網絡架構,企業(yè)級網絡應用逐步遷移到云計算平臺中;對于企業(yè)級應用,對云計算平臺虛擬資源的高速調度、創(chuàng)建各種虛擬局域網成為當務之急,目前云平臺虛擬資源調度,存在以下問題,如
(1)虛擬資源調度低效;
(2)資源分配不合理、資源利用率低;
(3)用戶體驗差的缺點。
技術實現(xiàn)要素:
為了解決上述問題,本發(fā)明目的是提供一種基于優(yōu)先級的云平臺虛擬資源高速調度的方法與系統(tǒng),用以解決目前云平臺虛擬資源分配不合理及資源利用率低的問題。
為實現(xiàn)上述目的,本發(fā)明提供了一種云平臺虛擬資源高速調度方法,包括:對申請任務的優(yōu)先級值進行初始化;從資源分配等待隊列中讀取申請任務;分析現(xiàn)有虛擬資源情況;空閑的現(xiàn)有虛擬資源充足時,分析申請任務的任務信息;根據(jù)每個申請任務的任務信息直接分配虛擬資源;或根據(jù)每個申請任務的任務信息分配優(yōu)先級值并基于高優(yōu)先級任務先分配資源的原則從資源池中調度虛擬資源構建局域網。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述空閑的虛擬資源不充足時,循環(huán)至重新從資源分配等待隊列中讀取申請任務。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述分析申請任務的任務信息包括:判斷申請任務的等待時間是否超時;若申請任務的等待時間不超時,分析申請任務的任務來源;根據(jù)任務來源的用戶等級的不同分別直接分配虛擬資源或增加優(yōu)先級值;對申請任務類型進行分析并分配優(yōu)先級值;對申請任務的網絡使用需求進行分析并分配優(yōu)先級值;統(tǒng)計每個申請任務的需求信息的優(yōu)先級值并根據(jù)優(yōu)先級值大小進行排序。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,判斷所述申請任務的等待時間超時時,直接分配虛擬資源。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述分析申請任務的任務來源包括:根據(jù)用戶等級將任務來源分為頂級用戶、重要用戶和普通用戶;按照頂級用戶、重要用戶和普通用戶的順序依次判斷任務來源。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述根據(jù)任務來源的用戶等級的不同分別直接分配虛擬資源或增加優(yōu)先級值包括:若申請任務來源為頂級用戶,則直接分配虛擬資源;若申請任務來源為重要用戶,則增加優(yōu)先級值29;若申請任務來源為普通用戶,則增加優(yōu)先級值11。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述對申請任務類型進行分析并分配優(yōu)先級值包括:判斷申請任務為短任務時,增加優(yōu)先級值13,否則,直接對申請任務的網絡使用需求進行分析。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述對申請任務的網絡使用需求進行分析并分配優(yōu)先級值包括:依次判斷申請任務是否需要存儲設備和申請任務是否可以共享存儲設備;申請任務不需要存儲設備時,增加優(yōu)先級值23;申請任務可以共享存儲設備時,增加優(yōu)先級值7;依次判斷申請任務是否需要安全設備和申請任務是否需要共享安全設備;申請任務不需要安全設備時,增加優(yōu)先級值19;申請任務不需要共享安全設備時,增加優(yōu)先級值5;依次判斷申請任務是否需要網絡設備和申請任務是否需要共享網絡設備;申請任務不需要網絡設備時,增加優(yōu)先級值17;申請任務不需要共享網絡設備時,增加優(yōu)先級值3;完成對申請任務的網絡使用需求進行分析并分配優(yōu)先級值。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,統(tǒng)計后所述申請任務的需求信息的優(yōu)先級值相同時,對用戶級別高的申請任務增加優(yōu)先級值1后重新排序。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,還包括:根據(jù)申請任務的運行情況,主動回收虛擬資源。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述主動回收虛擬資源,包括:從完成隊列讀取申請任務,分析申請任務是否完成;若有已完成的申請任務,則回收已完成的申請任務的虛擬資源;對未完成的申請任務,從運行隊列讀取未完成的申請任務;分析未完成的申請任務的運行情況并根據(jù)運行情況選擇性回收未完成的申請任務的虛擬資源;記錄用戶未完成的申請任務的存儲信息,所述存儲信息包括存儲設備名稱、IP地址、任務上下文信息、數(shù)據(jù)庫名稱及登錄用戶名與密碼,所述任務上下文信息包括計算中間結果、會話與認證Cookie。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述分析未完成的申請任務的運行情況并根據(jù)運行情況選擇性回收未完成的申請任務的虛擬資源包括:分析未完成申請任務是否休眠超時;若未完成申請任務休眠超時,則回收未完成申請任務的虛擬機或Docker;若未完成申請任務休眠超時,依次分析未完成申請任務是否使用專用虛擬網絡安全設備和專用虛擬網絡設備;若未完成申請任務使用專用虛擬網絡安全設備,則回收未完成申請任務使用的虛擬網絡安全設備;若未完成申請任務使用專用虛擬網絡設備,則回收未完成申請任務使用的虛擬網絡設備;若未完成申請任務休眠未超時,則循環(huán)至重新分析未完成申請任務是否休眠超時。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度方法,所述分析未完成申請任務是否休眠超時的過程中,頂級用戶的未完成申請任務的休眠超時閾值是重要用戶的未完成申請任務的休眠超時閾值的三倍,重要用戶的未完成申請任務的休眠超時閾值是普通用戶的未完成申請任務的休眠超時閾值的兩倍。
本發(fā)明還提供了一種云平臺虛擬資源高速調度系統(tǒng),包括:資源管理單元,連接有資源統(tǒng)計模塊、資源分配模塊和資源回收模塊;任務管理單元,連接有任務申請模塊、任務注銷模塊和任務審計模塊;優(yōu)先級計算單元,連接有現(xiàn)有虛擬資源情況分析模塊、任務來源分析模塊、任務類型分析模塊和網絡使用分析模塊;信息庫單元,用于存儲虛擬資源信息和任務信息;和總控制單元,分別與所述資源管理單元、所述任務管理單元、所述優(yōu)先級計算單元和所述信息庫單元連接。
本發(fā)明公開的上述一種云平臺虛擬資源高速調度系統(tǒng),首先,所述信息庫單元對虛擬資源信息與任務信息進行存儲;同時,所述資源統(tǒng)計模塊對虛擬資源進行統(tǒng)計;然后,所述任務申請模塊進行任務申請并對申請任務的等待時間進行監(jiān)控,如果申請任務的等待時間沒有超時,就通過所述總控制單元啟動優(yōu)先級計算單元計算優(yōu)先級值,針對申請任務與現(xiàn)有資源通過所述現(xiàn)有虛擬資源情況分析模塊、所述任務來源分析模塊、所述任務類型分析模塊和所述網絡使用分析模塊依次進行現(xiàn)有虛擬資源情況分析、任務來源分析、任務類型分析和網絡使用分析,分配并統(tǒng)計優(yōu)先級值,所述資源分配模塊根據(jù)優(yōu)先級值的大小調度虛擬資源,所述任務審計模塊對申請任務進行審計,記錄任務的申請人、時間、單個功能模塊的耗時值,統(tǒng)計申請人對單個資源的申請次數(shù)與耗時、會話休眠時間;最后,所述資源回收模塊回收已完成的申請任務的虛擬資源或根據(jù)未完成的申請任務的運行情況選擇性回收未完成的申請任務的虛擬資源,所述任務注銷模塊用于注銷申請任務的任務進程。
本發(fā)明具有如下優(yōu)點:
本發(fā)明提供的一種云平臺虛擬資源高速調度方法與系統(tǒng),通過基于優(yōu)先級的云平臺虛擬資源高速調度方法及系統(tǒng),使得能夠快速調度、合理分配云計算平臺的虛擬資源,并提高了用戶的體驗。
附圖說明
圖1是本發(fā)明中一種云平臺虛擬資源高速調度系統(tǒng)的組網示意圖。
圖2是本發(fā)明中一種云平臺虛擬資源高速調度系統(tǒng)的示意圖。
圖3是本發(fā)明中一種云平臺虛擬資源高速調度方法的虛擬資源分配流程示意圖。
圖4是本發(fā)明中一種云平臺虛擬資源高速調度方法的主動回收虛擬資源流程示意圖。
具體實施方式
以下實施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。
實施例1
參考圖1,本實施例中的一種云平臺虛擬資源高速調度系統(tǒng)04基于優(yōu)先級快速調度、合理分配云計算平臺03的虛擬資源,提高了用戶終端01通過互聯(lián)網02使用云計算平臺03的虛擬資源的體驗。
參考圖2,本實施例中的一種云平臺虛擬資源高速調度系統(tǒng)04包括:總控制單元05,分別與資源管理單元06、任務管理單元07、優(yōu)先級計算單元08和信息庫單元09連接,資源管理單元06,連接有資源統(tǒng)計模塊10、資源分配模塊11和資源回收模塊12;任務管理單元07,連接有任務申請模塊13、任務注銷模塊14和任務審計模塊15;優(yōu)先級計算單元08,連接有現(xiàn)有虛擬資源情況分析模塊16、任務來源分析模塊17、任務類型分析模塊18和網絡使用分析模塊19;信息庫單元09,用于存儲虛擬資源信息和任務信息。
進一步地,本實施例中的一種云平臺虛擬資源高速調度系統(tǒng)04的基本原理是:資源管理單元06、任務管理單元07、優(yōu)先級計算單元08和信息庫單元09均由總控制單元05控制,另外,資源統(tǒng)計模塊10、資源分配模塊11、資源回收模塊12、任務申請模塊13、任務注銷模塊14、任務審計模塊15、現(xiàn)有虛擬資源情況分析模塊16、任務來源分析模塊17、任務類型分析模塊18和網絡使用分析模塊19也由總控制單元05分別通過資源管理單元06、任務管理單元07、優(yōu)先級計算單元08和信息庫單元09間接控制,具體如下:首先,信息庫單元09對虛擬資源信息與任務信息進行存儲;同時,資源統(tǒng)計模塊10對虛擬資源進行統(tǒng)計;然后,任務申請模塊13進行任務申請并對申請任務的等待時間進行監(jiān)控,如果申請任務的等待時間沒有超時,就通過總控制單元05啟動優(yōu)先級計算單元08計算優(yōu)先級值,針對申請任務與現(xiàn)有資源通過現(xiàn)有虛擬資源情況分析模塊16、任務來源分析模塊17、任務類型分析模塊18和網絡使用分析模塊19依次進行現(xiàn)有虛擬資源情況分析、任務來源分析、任務類型分析和網絡使用分析,分配并統(tǒng)計優(yōu)先級值,資源分配模塊11根據(jù)優(yōu)先級值的大小調度虛擬資源,任務審計模塊15對申請任務進行審計,記錄任務的申請人、時間、單個功能模塊的耗時值,統(tǒng)計申請人對單個資源的申請次數(shù)與耗時、會話休眠時間;最后,資源回收模塊12回收已完成的申請任務的虛擬資源或根據(jù)未完成的申請任務的運行情況選擇性回收未完成的申請任務的虛擬資源,任務注銷模塊14用于注銷申請任務的任務進程。
更進一步,參考圖3和圖4,本實施例中的一種云平臺虛擬資源高速調度方法包括:
S301:對申請任務的優(yōu)先級值進行初始化;
S302:從資源分配等待隊列中讀取申請任務;
S303:分析現(xiàn)有虛擬資源情況,空閑的虛擬資源不充足時,循環(huán)至重新從資源分配等待隊列中讀取申請任務;空閑的現(xiàn)有虛擬資源充足時,分析申請任務的任務信息;
其中,分析申請任務的任務信息包括:
S304:判斷申請任務的等待時間是否超時;判斷所述申請任務的等待時間超時時,直接分配虛擬資源;
S305:若申請任務的等待時間不超時,分析申請任務的任務來源,其包括:根據(jù)用戶等級將任務來源分為頂級用戶、重要用戶和普通用戶;按照頂級用戶、重要用戶和普通用戶的順序依次判斷任務來源;
根據(jù)任務來源的用戶等級的不同分別直接分配虛擬資源或增加優(yōu)先級值;
具體來說,即:
S306:判斷是否為頂級用戶,若是頂級用戶,則直接分配虛擬資源;
S307:若不是頂級用戶,判斷是否為重要用戶,若是重要用戶,則增加優(yōu)先級值29;
S308:若不是重要用戶,判斷是否為普通用戶,若是普通用戶,則增加優(yōu)先級值11;
對申請任務類型進行分析并分配優(yōu)先級值,其包括:
S309:判斷申請任務為短任務時,增加優(yōu)先級值13,進一步地,若根據(jù)申請任務的單個功能模塊的耗時歷史記錄預測該申請任務的所有功能模塊耗時小于1個小時,則判斷申請任務為短任務;
否則,對申請任務的網絡使用需求進行分析并分配優(yōu)先級值,其包括:
S310:先判斷申請任務是否需要存儲設備;申請任務不需要存儲設備時,增加優(yōu)先級值23;
S311:申請任務需要存儲設備時,再判斷申請任務是否可以共享存儲設備;申請任務可以共享存儲設備時,增加優(yōu)先級值7;
S312:先判斷申請任務是否需要安全設備;申請任務不需要安全設備時,增加優(yōu)先級值19;
S313:申請任務需要安全設備時,再判斷申請任務是否需要共享安全設備;申請任務不需要共享安全設備時,增加優(yōu)先級值5;
S314:判斷申請任務是否需要網絡設備;申請任務不需要網絡設備時,增加優(yōu)先級值17;
S315:申請任務需要網絡設備時,再判斷申請任務是否需要共享網絡設備;申請任務不需要共享網絡設備時,增加優(yōu)先級值3;
S316:統(tǒng)計每個申請任務的需求信息的優(yōu)先級值并根據(jù)優(yōu)先級值大小進行排序;
S317:判斷統(tǒng)計后所述申請任務的需求信息的優(yōu)先級值是否相同;
S318:統(tǒng)計后所述申請任務的需求信息的優(yōu)先級值相同時,對用戶級別高的申請任務增加優(yōu)先級值1后重新排序;
基于高優(yōu)先級任務先分配資源的原則從資源池中調度虛擬資源構建局域網。
根據(jù)申請任務的運行情況,主動回收虛擬資源,其包括:
S401:從完成隊列讀取申請任務;
S402:分析申請任務是否完成;若有已完成的申請任務,則回收已完成的申請任務的虛擬資源;
S403:對未完成的申請任務,從運行隊列讀取未完成的申請任務;
分析未完成的申請任務的運行情況并根據(jù)運行情況選擇性回收未完成的申請任務的虛擬資源,其包括:
S404:分析未完成申請任務是否休眠超時,在此過程中,頂級用戶的未完成申請任務的休眠超時閾值是重要用戶的未完成申請任務的休眠超時閾值的三倍,重要用戶的未完成申請任務的休眠超時閾值是普通用戶的未完成申請任務的休眠超時閾值的兩倍;
S405:若未完成申請任務休眠超時,則回收未完成申請任務的虛擬機或Docker,其中,Docker是一個開源的應用容器引擎,讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的Linux機器上,也可以實現(xiàn)虛擬化。容器是完全使用沙箱機制,相互之間不會有任何接口;
S406:若未完成申請任務休眠超時,先分析未完成申請任務是否使用專用虛擬網絡安全設備;若未完成申請任務使用專用虛擬網絡安全設備,則回收未完成申請任務使用的虛擬網絡安全設備;
S407:未完成申請任務不使用專用虛擬網絡安全設備時,再分析未完成申請任務是否使用專用虛擬網絡設備;若未完成申請任務使用專用虛擬網絡設備,則回收未完成申請任務使用的虛擬網絡設備;
若未完成申請任務休眠未超時,則循環(huán)至重新分析未完成申請任務是否休眠超時。
S408:記錄用戶未完成的申請任務的存儲信息,所述存儲信息包括存儲設備名稱、IP地址、任務上下文信息、數(shù)據(jù)庫名稱及登錄用戶名與密碼,任務上下文信息包括計算中間結果、會話與認證Cookie,其中,Cookie是一種能夠讓網站服務器把少量數(shù)據(jù)儲存到客戶端的硬盤或內存,或是從客戶端的硬盤讀取數(shù)據(jù)的一種技術;是當你瀏覽某網站時,由Web服務器置于你硬盤上的一個非常小的文本文件,它可以記錄你的用戶ID、密碼、瀏覽過的網頁、停留的時間等信息,當你再次來到該網站時,網站通過讀取Cookie,得知你的相關信息,就可以做出相應的動作,而認證Cookie是指針對用戶請求用于身份驗證的服務器端的Cookie。
雖然,上文中已經用一般性說明及具體實施例對本發(fā)明作了詳盡的描述,但在本發(fā)明基礎上,可以對之作一些修改或改進,這對本領域技術人員而言是顯而易見的。因此,在不偏離本發(fā)明精神的基礎上所做的這些修改或改進,均屬于本發(fā)明要求保護的范圍。