两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種云存儲(chǔ)系統(tǒng)調(diào)度方法和裝置與流程

文檔序號(hào):12034259閱讀:168來(lái)源:國(guó)知局
一種云存儲(chǔ)系統(tǒng)調(diào)度方法和裝置與流程

本發(fā)明涉及云存儲(chǔ)技術(shù)領(lǐng)域,特別涉及一種云存儲(chǔ)系統(tǒng)調(diào)度方法和裝置。



背景技術(shù):

整個(gè)云存儲(chǔ)系統(tǒng)包含多個(gè)服務(wù)器,從功能上可以分為中心管理服務(wù)器、存儲(chǔ)管理服務(wù)器和存儲(chǔ)服務(wù)器等,這些服務(wù)器在工作時(shí)都是相互影響的。事實(shí)上,用戶在該云存儲(chǔ)系統(tǒng)中的所有操作(包括內(nèi)部操作和外部操作,內(nèi)部操作包含抽幀轉(zhuǎn)存、循環(huán)覆蓋、數(shù)據(jù)同步、數(shù)據(jù)回傳等,外部操作包含用戶對(duì)存儲(chǔ)數(shù)據(jù)的寫入操作、讀操作、下載等。)都消耗著云存儲(chǔ)系統(tǒng)的資源,影響著云存儲(chǔ)系統(tǒng)的性能,然而這些操作的對(duì)云存儲(chǔ)系統(tǒng)的性能的影響也各不相同。當(dāng)某個(gè)服務(wù)器的性能不穩(wěn)定或者發(fā)生異常損壞,都會(huì)導(dǎo)致整個(gè)云存儲(chǔ)系統(tǒng)發(fā)生問(wèn)題。為了解決這樣的問(wèn)題,很多技術(shù)被提出,其中包含ha/集群部署模式、raid/iraid技術(shù)、讀寫負(fù)載均衡技術(shù)、數(shù)據(jù)存儲(chǔ)切片技術(shù)等。

然而,這些技術(shù)的出發(fā)點(diǎn)都是從數(shù)據(jù)讀寫的安全性和魯棒性來(lái)解決問(wèn)題,使得云存儲(chǔ)系統(tǒng)中的各服務(wù)器節(jié)點(diǎn)均攤云存儲(chǔ)的壓力和風(fēng)險(xiǎn),降低各服務(wù)器節(jié)點(diǎn)的負(fù)載壓力,提高云存儲(chǔ)系統(tǒng)的穩(wěn)定性。這些技術(shù)將所有對(duì)該云存儲(chǔ)系統(tǒng)的所有操作都放在了平等的位置上,忽視了在該對(duì)云存儲(chǔ)系統(tǒng)的操作中,根據(jù)操作的性質(zhì),這些操作具有等級(jí)之分,如對(duì)于該云存儲(chǔ)系統(tǒng)的內(nèi)部操作的實(shí)時(shí)性要求較低,而對(duì)外部操作如寫入操作的實(shí)時(shí)性要求就較高,對(duì)于實(shí)時(shí)性要求較高的操作,其處理的等級(jí)就會(huì)高一些。而現(xiàn)有技術(shù)就未能針對(duì)云存儲(chǔ)系統(tǒng)的操作的性質(zhì),對(duì)整個(gè)云存儲(chǔ)系統(tǒng)的資源配置進(jìn)行合理調(diào)度。

那么,如何針對(duì)云存儲(chǔ)系統(tǒng)的操作的性質(zhì),合理調(diào)度云存儲(chǔ)系統(tǒng)的資源配置,使得同等硬件配置下的云存儲(chǔ)系統(tǒng)的相對(duì)性能得到提升成為亟待解決的問(wèn)題。



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

本發(fā)明實(shí)施例公開了一種云存儲(chǔ)系統(tǒng)調(diào)度方法和裝置,以實(shí)現(xiàn)針對(duì)云存儲(chǔ)系統(tǒng)的操作的性質(zhì),合理調(diào)度云存儲(chǔ)系統(tǒng)的資源配置,使得同等硬件配置下的云存儲(chǔ)系統(tǒng)的相對(duì)性能得到提升。具體方案如下:

一方面,本發(fā)明實(shí)施例提供了一種云存儲(chǔ)系統(tǒng)調(diào)度方法,應(yīng)用于存儲(chǔ)管理服務(wù)器,所述方法包括:

獲得所述云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及內(nèi)存mem占用率,并且,分別計(jì)算所述云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率;

利用所述平均磁盤io占用率、所述平均cpu占用率以及所述平均mem占用率,計(jì)算所述云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值;

根據(jù)所述云存儲(chǔ)壓力值,確定所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài);

根據(jù)所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述操作調(diào)度指令,響應(yīng)所述存儲(chǔ)管理服務(wù)器的調(diào)度操作。

可選的,所述當(dāng)前系統(tǒng)狀態(tài)包括空閑狀態(tài)、正常狀態(tài)以及壓力狀態(tài);

所述根據(jù)所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述操作調(diào)度指令,響應(yīng)所述存儲(chǔ)管理服務(wù)器的調(diào)度操作,包括:

當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述正常狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送第一操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第一操作調(diào)度指令后,根據(jù)當(dāng)前已設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述空閑狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)空閑狀態(tài)處理規(guī)則的第二操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第二操作調(diào)度指令后,根據(jù)所述第二操作調(diào)度指令所攜帶的所述預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述壓力狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)壓力狀態(tài)處理規(guī)則的第三操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第三操作調(diào)度指令后,根據(jù)所述第三操作調(diào)度指令所攜帶的所述預(yù)設(shè)壓力狀態(tài) 處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作。

可選的,所述分別計(jì)算所述云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率,包括:

利用預(yù)設(shè)公式分別計(jì)算平均磁盤io占用率、平均cpu占用率以及平均mem占用率;其中,所述預(yù)設(shè)公式分別為:

其中,表示所述平均磁盤io占用率,表示所述平均mem占用率,表示所述平均cpu占用率;

wai表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率,memi表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的mem占用率,cpui表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的cpu占用率,其中,i屬于1~n之間的任一整數(shù),wai、memi以及cpui均為百分制數(shù)值,取值范圍為[0,1]。

可選的,所述計(jì)算所述云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值所利用公式為:

其中,syspress表示所述云存儲(chǔ)壓力值,k1、k2和k3為權(quán)重系數(shù)。

可選的,所述根據(jù)所述云存儲(chǔ)壓力值,確定所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),包括:

判斷所述云存儲(chǔ)壓力值是否超過(guò)第一預(yù)設(shè)閾值,若否,確定所述云存儲(chǔ)系統(tǒng)處于空閑狀態(tài);

若是,判斷所述云存儲(chǔ)壓力值是否超過(guò)第二預(yù)設(shè)閾值,若未超過(guò),確定所述云存儲(chǔ)系統(tǒng)處于正常狀態(tài),若超過(guò),確定所述云存儲(chǔ)系統(tǒng)處于壓力狀態(tài),其中,所述第一預(yù)設(shè)閾值小于所述第二預(yù)設(shè)閾值。

可選的,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述第二操作調(diào)度指令所攜帶的所述預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,包括:

所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置;

若否,所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作,若存在,處理所述內(nèi)部操作,若不存在,根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

若是,關(guān)閉所述對(duì)讀操作的限速設(shè)置,繼續(xù)執(zhí)行所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作的步驟。

可選的,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述第三操作調(diào)度指令所攜帶的所述預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,包括:

所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作;

當(dāng)判斷結(jié)果為否時(shí),判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置,若否,開啟所述對(duì)讀操作的限速設(shè)置,若是,根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

當(dāng)判斷結(jié)果為是時(shí),暫停對(duì)所述內(nèi)部操作的執(zhí)行,繼續(xù)執(zhí)行所述判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置的步驟。

可選的,本發(fā)明實(shí)施例所提供的一種云存儲(chǔ)系統(tǒng)調(diào)度方法還包括:

當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述壓力狀態(tài)時(shí),并且所述各存儲(chǔ)節(jié)點(diǎn)的設(shè)置內(nèi)容中存在對(duì)所述讀操作的限速設(shè)置以及對(duì)內(nèi)部操作的暫停設(shè)置時(shí),通過(guò)運(yùn)維平臺(tái)輸出提示信息,以提示用戶所述云存儲(chǔ)系統(tǒng)當(dāng)前的壓力過(guò)大。

另一方面,本發(fā)明實(shí)施例還提供了一種云存儲(chǔ)系統(tǒng)調(diào)度裝置,應(yīng)用于存儲(chǔ)管理服務(wù)器,所述裝置包括:數(shù)據(jù)獲得計(jì)算模塊、云存儲(chǔ)壓力值計(jì)算模塊、當(dāng)前系統(tǒng)狀態(tài)確定模塊和指令發(fā)送模塊;

所述數(shù)據(jù)獲得計(jì)算模塊:用于獲得所述云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及內(nèi)存mem占用率,并且,分別計(jì)算所述云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率;

所述云存儲(chǔ)壓力值計(jì)算模塊:用于利用所述平均磁盤io占用率、所述平均cpu占用率以及所述平均mem占用率,計(jì)算所述云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值;

所述當(dāng)前系統(tǒng)狀態(tài)確定模塊:用于根據(jù)所述云存儲(chǔ)壓力值,確定所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài);

所述指令發(fā)送模塊:用于根據(jù)所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述操作調(diào)度指令,響應(yīng)所述存儲(chǔ)管理服務(wù)器的調(diào)度操作。

可選的,所述當(dāng)前系統(tǒng)狀態(tài)包括空閑狀態(tài)、正常狀態(tài)以及壓力狀態(tài);

所述指令發(fā)送模塊包括第一指令發(fā)送單元、第二指令發(fā)送單元和第三指令發(fā)送單元;

所述第一指令發(fā)送單元:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述正常狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送第一操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第一操作調(diào)度指令后,根據(jù)當(dāng)前已設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

所述第二指令發(fā)送單元:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述空閑狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)空閑狀態(tài)處理規(guī)則的第二操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第二操作調(diào)度指令后,根據(jù)所述第二操作調(diào)度指令所攜帶的所述預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

所述第三指令發(fā)送單元:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述壓力狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)壓力狀態(tài)處理規(guī)則的第三操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第三操作調(diào)度指令后,根據(jù)所述第三操作調(diào)度指令所攜帶的所述預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所 對(duì)應(yīng)的至少一個(gè)操作。

可選的,所述數(shù)據(jù)獲得計(jì)算模塊,具體用于:

利用預(yù)設(shè)公式分別計(jì)算平均磁盤io占用率、平均cpu占用率以及平均mem占用率;其中,所述預(yù)設(shè)公式分別為:

其中,表示所述平均磁盤io占用率,表示所述平均mem占用率,表示所述平均cpu占用率;

wai表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率,memi表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的mem占用率,cpui表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的cpu占用率,其中,i屬于1~n之間的任一整數(shù),wai、memi以及cpui均為百分制數(shù)值,取值范圍為[0,1]。

可選的,所述云存儲(chǔ)壓力值計(jì)算模塊所利用公式為:

其中,syspress表示所述云存儲(chǔ)壓力值,k1、k2和k3為權(quán)重系數(shù)。

可選的,所述當(dāng)前系統(tǒng)狀態(tài)確定模塊包括第一判斷單元、第二判斷單元、空閑狀態(tài)確定單元、正常狀態(tài)確定單元和壓力狀態(tài)確定單元;

所述第一判斷模塊:用于判斷所述云存儲(chǔ)壓力值是否超過(guò)第一預(yù)設(shè)閾值,若否,觸發(fā)所述空閑狀態(tài)確定單元,若是,觸發(fā)所述第二判斷單元;

所述空閑狀態(tài)確定單元:用于確定所述云存儲(chǔ)系統(tǒng)處于空閑狀態(tài);

所述第二判斷單元:用于判斷所述云存儲(chǔ)壓力值是否超過(guò)第二預(yù)設(shè)閾值,若未超過(guò),觸發(fā)所述正常狀態(tài)確定單元,若超過(guò),觸發(fā)所述壓力狀態(tài)確定單元;

所述正常狀態(tài)確定單元:用于確定所述云存儲(chǔ)系統(tǒng)處于正常狀態(tài);

所述壓力狀態(tài)確定單元:用于確定所述云存儲(chǔ)系統(tǒng)處于壓力狀態(tài);

其中,所述第一預(yù)設(shè)閾值小于所述第二預(yù)設(shè)閾值。

可選的,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述第二操作調(diào)度指令所攜帶的所述預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,包括:

所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置;

若否,所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作,若存在,處理所述內(nèi)部操作,若不存在,根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

若是,關(guān)閉所述對(duì)讀操作的限速設(shè)置,繼續(xù)執(zhí)行所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作的步驟。

可選的,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述第三操作調(diào)度指令所攜帶的所述預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,包括:

所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作;

當(dāng)判斷結(jié)果為否時(shí),判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置,若否,開啟所述對(duì)讀操作的限速設(shè)置,若是,根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

當(dāng)判斷結(jié)果為是時(shí),暫停對(duì)所述內(nèi)部操作的執(zhí)行,繼續(xù)執(zhí)行所述判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置的步驟。

可選的,本發(fā)明實(shí)施例所提供的一種云存儲(chǔ)系統(tǒng)調(diào)度裝置還包括提示信息輸出模塊;

所述提示信息輸出模塊:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述壓力狀態(tài)時(shí),并且所述各存儲(chǔ)節(jié)點(diǎn)的設(shè)置內(nèi)容中存在對(duì)所述讀操作的限速設(shè)置以及對(duì)內(nèi)部操作的暫停設(shè)置時(shí),通過(guò)運(yùn)維平臺(tái)輸出提示信息,以提示用戶所述云存儲(chǔ)系統(tǒng)當(dāng)前的壓力過(guò)大。

在本方案中,首先獲得云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及內(nèi)存mem占用率,并且,分別計(jì)算該云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率;利用該平均磁盤io占用率、該平均cpu占用率以及該平均mem占用率,計(jì)算該云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值;根據(jù)該云存儲(chǔ)壓力值,確定該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài);根據(jù)該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度指令,以使該各存儲(chǔ)節(jié)點(diǎn)根據(jù)該操作調(diào)度指令,響應(yīng)該存儲(chǔ)管理服務(wù)器的調(diào)度操作。以實(shí)現(xiàn)針對(duì)云存儲(chǔ)系統(tǒng)的操作的性質(zhì),合理調(diào)度云存儲(chǔ)系統(tǒng)的資源配置,使得同等硬件配置下的云存儲(chǔ)系統(tǒng)的相對(duì)性能得到提升。當(dāng)然,實(shí)施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。

附圖說(shuō)明

為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本發(fā)明實(shí)施例提供的一種云存儲(chǔ)系統(tǒng)調(diào)度方法的流程示意圖;

圖2為本發(fā)明實(shí)施例提供的一種云存儲(chǔ)系統(tǒng)調(diào)度方法的另一流程示意圖;

圖3為本發(fā)明實(shí)施例提供的一種云存儲(chǔ)系統(tǒng)調(diào)度方法的另一流程示意圖;

圖4為本發(fā)明實(shí)施例提供的一種云存儲(chǔ)系統(tǒng)調(diào)度裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造 性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。

本發(fā)明實(shí)施例提供了一種云存儲(chǔ)系統(tǒng)調(diào)度方法和裝置,可以實(shí)現(xiàn)針對(duì)云存儲(chǔ)系統(tǒng)的操作的性質(zhì),合理調(diào)度云存儲(chǔ)系統(tǒng)的資源配置,使得同等硬件配置下的云存儲(chǔ)系統(tǒng)的相對(duì)性能得到提升。

下面首先對(duì)本發(fā)明實(shí)施例所提供的一種云存儲(chǔ)系統(tǒng)調(diào)度方法進(jìn)行介紹。

需要說(shuō)明的是,本發(fā)明實(shí)施例所提供的云存儲(chǔ)系統(tǒng)調(diào)度方法可以應(yīng)用于存儲(chǔ)管理服務(wù)器,當(dāng)該云存儲(chǔ)系統(tǒng)中僅存在一個(gè)存儲(chǔ)管理服務(wù)器時(shí),該存儲(chǔ)管理服務(wù)器可以管理該云存儲(chǔ)系統(tǒng)中的所有的用于存儲(chǔ)數(shù)據(jù)的存儲(chǔ)服務(wù)器(存儲(chǔ)節(jié)點(diǎn)),當(dāng)該云存儲(chǔ)系統(tǒng)中存在多個(gè)存儲(chǔ)管理服務(wù)器時(shí),該各存儲(chǔ)管理服務(wù)器中的信息可以相互交互,達(dá)到同步的效果,在理論上每個(gè)存儲(chǔ)管理服務(wù)器都可以獲得該云存儲(chǔ)系統(tǒng)中的所有的用于存儲(chǔ)數(shù)據(jù)的存儲(chǔ)服務(wù)器的相關(guān)信息,等等,這都是合理的。該云存儲(chǔ)系統(tǒng)是集群部署的云存儲(chǔ)系統(tǒng),并且通過(guò)負(fù)載均衡技術(shù)已經(jīng)使得各存儲(chǔ)服務(wù)器(存儲(chǔ)節(jié)點(diǎn))均攤整個(gè)云存儲(chǔ)系統(tǒng)的壓力。

如圖1所示,本發(fā)明實(shí)施例所提供的一種云存儲(chǔ)系統(tǒng)調(diào)度方法,可以包括步驟:

s101:獲得該云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及內(nèi)存mem占用率,并且,分別計(jì)算該云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率;

可以理解的是,為了便于管理該云存儲(chǔ)系統(tǒng)中的各存儲(chǔ)節(jié)點(diǎn),該存儲(chǔ)管理服務(wù)器可以實(shí)時(shí)的或者定期的獲得該云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及內(nèi)存mem占用率。對(duì)于該獲得的各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及mem占用率都是實(shí)時(shí)變化的,需同時(shí)獲得該各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及mem占用率。并根據(jù)上述信息,計(jì)算該云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率。

具體的,所述分別計(jì)算該云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率,可以包括:

利用預(yù)設(shè)公式分別計(jì)算平均磁盤io占用率、平均cpu占用率以及平均mem占用率;其中,該預(yù)設(shè)公式分別可以為:

其中,表示該平均磁盤io占用率,表示該平均mem占用率,表示該平均cpu占用率;

wai表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率,memi表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的mem占用率,cpui表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的cpu占用率,其中,i屬于1~n之間的任一整數(shù),wai、memi以及cpui均為百分制數(shù)值,取值范圍為[0,1]。

需要說(shuō)明的是,對(duì)于云存儲(chǔ)系統(tǒng)來(lái)說(shuō),評(píng)價(jià)該系統(tǒng)壓力的因子往往包括磁盤io占用率、cpu占用率以及mem占用率,根據(jù)該計(jì)算所得出的平均磁盤io占用率、平均cpu占用率以及平均mem占用率即可確定該云存儲(chǔ)系統(tǒng)的當(dāng)前所處的壓力值。

s102:利用該平均磁盤io占用率、該平均cpu占用率以及該平均mem占用率,計(jì)算該云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值;

可以理解的是,對(duì)于確定該云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值的實(shí)現(xiàn)方式可以有多種,其中,可以是直接將該所得的平均磁盤io占用率、平均cpu占用率以及平均mem占用率進(jìn)行相加,將該所得的結(jié)果確定為該云存儲(chǔ)壓力值;也可以是通過(guò)設(shè)定權(quán)重系數(shù),將該所得的平均磁盤io占用率、平均cpu占用率以及平均mem占用率與對(duì)應(yīng)的權(quán)重系數(shù)的乘積的和來(lái)確定該云存儲(chǔ)壓力值,本發(fā)明實(shí)施例提供了一種實(shí)現(xiàn)方式,具體的,所述計(jì)算該云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值所利用公式可以為:

其中,syspress表示該云存儲(chǔ)壓力值,k1、k2和k3為權(quán)重系數(shù)。

需要說(shuō)明的是,對(duì)于k1、k2和k3的設(shè)置,可以根據(jù)該云存儲(chǔ)系統(tǒng)的各存儲(chǔ)節(jié)點(diǎn)當(dāng)前對(duì)應(yīng)的操作進(jìn)行設(shè)定,當(dāng)該云存儲(chǔ)系統(tǒng)中的各存儲(chǔ)節(jié)點(diǎn)當(dāng)前對(duì)應(yīng)的操作對(duì)云存儲(chǔ)系統(tǒng)的內(nèi)存mem的要求較高,則將該平均mem占用率對(duì)應(yīng)的權(quán)重系數(shù)k2設(shè)置較大些;當(dāng)該云存儲(chǔ)系統(tǒng)中的各存儲(chǔ)節(jié)點(diǎn)當(dāng)前對(duì)應(yīng)的操作對(duì)云存儲(chǔ)系統(tǒng)的cpu的要求較高,則將該平均cpu占用率對(duì)應(yīng)的權(quán)重系數(shù)k3設(shè)置較大些;同理,若對(duì)該云存儲(chǔ)系統(tǒng)的磁盤io的要求較高,則將該平均磁盤io占用率對(duì)應(yīng)的權(quán)重系數(shù)k1設(shè)置較大些,等等,這都是合理的。

s103:根據(jù)該云存儲(chǔ)壓力值,確定該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài);

可以理解的是,根據(jù)該云存儲(chǔ)壓力值,可以直觀的確定該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)所處的壓力,當(dāng)該云存儲(chǔ)壓力值相對(duì)較大時(shí),如超過(guò)某一預(yù)定閾值,可以表明該云存儲(chǔ)系統(tǒng)的當(dāng)前的處理數(shù)據(jù)的壓力相對(duì)較大,此時(shí),該存儲(chǔ)管理服務(wù)器就可以對(duì)該各存儲(chǔ)節(jié)點(diǎn)進(jìn)行調(diào)度,比如限制某些操作的進(jìn)行;當(dāng)該云存儲(chǔ)壓力值相對(duì)較小時(shí),如低于某一設(shè)定閾值,則可以表明該云存儲(chǔ)系統(tǒng)的當(dāng)前的處理數(shù)據(jù)的壓力相對(duì)較小,此時(shí),該存儲(chǔ)管理服務(wù)器就可以調(diào)度該各存儲(chǔ)節(jié)點(diǎn)的操作設(shè)置,如加快讀/寫操作的速度,等等??梢岳斫獾氖牵x/寫操作的速度越快,該對(duì)云存儲(chǔ)系統(tǒng)造成的壓力越大。

具體的,所述根據(jù)該云存儲(chǔ)壓力值,確定該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài)(s103),可以包括:

判斷該云存儲(chǔ)壓力值是否超過(guò)第一預(yù)設(shè)閾值,若否,確定該云存儲(chǔ)系統(tǒng)處于空閑狀態(tài),

若是,判斷該云存儲(chǔ)壓力值是否超過(guò)第二預(yù)設(shè)閾值,若未超過(guò),確定該云存儲(chǔ)系統(tǒng)處于正常狀態(tài),若超過(guò),確定該云存儲(chǔ)系統(tǒng)處于壓力狀態(tài),其中,該第一預(yù)設(shè)閾值小于該第二預(yù)設(shè)閾值。

需要說(shuō)明的是,該第一預(yù)設(shè)閾值和該第二預(yù)設(shè)閾值,可以是管理人員根據(jù)經(jīng)驗(yàn)預(yù)先設(shè)置,也可以是該存儲(chǔ)管理服務(wù)器根據(jù)該云存儲(chǔ)系統(tǒng)中的各存儲(chǔ)節(jié)點(diǎn)的工作狀態(tài)進(jìn)行默認(rèn)設(shè)定,等等,這都是合理的。

s104:根據(jù)該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度 指令,以使該各存儲(chǔ)節(jié)點(diǎn)根據(jù)該操作調(diào)度指令,響應(yīng)該存儲(chǔ)管理服務(wù)器的調(diào)度操作。

其中,該操作調(diào)度指令中包含各種對(duì)該云存儲(chǔ)系統(tǒng)中的各存儲(chǔ)節(jié)點(diǎn)的對(duì)應(yīng)操作的設(shè)置內(nèi)容,該存儲(chǔ)管理服務(wù)器將該操作調(diào)度指令下發(fā)給該各存儲(chǔ)節(jié)點(diǎn)后,各存儲(chǔ)節(jié)點(diǎn)根據(jù)該操作調(diào)度指令,可以對(duì)該對(duì)應(yīng)操作進(jìn)行相應(yīng)的調(diào)度。

具體的,所述當(dāng)前系統(tǒng)狀態(tài)可以包括空閑狀態(tài)、正常狀態(tài)以及壓力狀態(tài);

所述根據(jù)該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度指令,以使該各存儲(chǔ)節(jié)點(diǎn)根據(jù)該操作調(diào)度指令,響應(yīng)該存儲(chǔ)管理服務(wù)器的調(diào)度操作(s104),可以包括:

s1041:當(dāng)該云存儲(chǔ)系統(tǒng)處于該正常狀態(tài)時(shí),向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送第一操作調(diào)度指令,以使該各存儲(chǔ)節(jié)點(diǎn)在接收到該第一操作調(diào)度指令后,根據(jù)當(dāng)前已設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

s1042:當(dāng)該云存儲(chǔ)系統(tǒng)處于該空閑狀態(tài)時(shí),向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)空閑狀態(tài)處理規(guī)則的第二操作調(diào)度指令,以使該各存儲(chǔ)節(jié)點(diǎn)在接收到該第二操作調(diào)度指令后,根據(jù)該第二操作調(diào)度指令所攜帶的該預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

s1043:當(dāng)該云存儲(chǔ)系統(tǒng)處于該壓力狀態(tài)時(shí),向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)壓力狀態(tài)處理規(guī)則的第三操作調(diào)度指令,以使該各存儲(chǔ)節(jié)點(diǎn)在接收到該第三操作調(diào)度指令后,根據(jù)該第三操作調(diào)度指令所攜帶的該預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作。

在實(shí)際應(yīng)用中,該云存儲(chǔ)系統(tǒng)中存在的操作很多,從功能上可以包括內(nèi)部操作和外部操作,對(duì)于外部操作來(lái)說(shuō),主要的操作對(duì)象主要是平臺(tái)服務(wù)器、用戶以及前端相機(jī)等。而內(nèi)部操作則是云存儲(chǔ)系統(tǒng)的內(nèi)部進(jìn)行的,對(duì)外(用戶)不可見。同時(shí),對(duì)于該所有操作來(lái)說(shuō),每個(gè)操作都消耗著云存儲(chǔ)系統(tǒng)的資源,影響著云存儲(chǔ)系統(tǒng)的性能,但這些操作對(duì)云存儲(chǔ)系統(tǒng)來(lái)說(shuō),其影響程度以及資源消耗影響因素上是存在差異的,具體可以參考表1。

表1

對(duì)于云存儲(chǔ)系統(tǒng)中所存在的各種操作,均不是時(shí)刻均等進(jìn)行的,如對(duì)視頻數(shù)據(jù)或圖片數(shù)據(jù)的寫入(存儲(chǔ)),在上下班高峰期時(shí)對(duì)該云存儲(chǔ)系統(tǒng)造成的壓力就會(huì)較高,而夜晚時(shí)期該對(duì)視頻數(shù)據(jù)或圖片數(shù)據(jù)的寫入的壓力就會(huì)相對(duì)較小,該云存儲(chǔ)系統(tǒng)負(fù)擔(dān)的壓力是動(dòng)態(tài)變化的,而根據(jù)該負(fù)擔(dān)的壓力的動(dòng)態(tài)變化,該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài)也是動(dòng)態(tài)變化的。

對(duì)于該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),可以根據(jù)當(dāng)前負(fù)載的壓力即云存儲(chǔ)壓力值,分為空閑狀態(tài)、正常狀態(tài)以及壓力狀態(tài),對(duì)于當(dāng)前系統(tǒng)狀態(tài)為正常狀態(tài)時(shí),可以表明當(dāng)前的云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)對(duì)應(yīng)的操作壓力處于平衡狀態(tài),可以向各存儲(chǔ)節(jié)點(diǎn)發(fā)送第一操作調(diào)度指令,以使該各存儲(chǔ)節(jié)點(diǎn)在接收到第一操作調(diào)度指令后,根據(jù)當(dāng)前已設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;對(duì)于當(dāng)前系統(tǒng)狀態(tài)為空閑狀態(tài)時(shí),可以表明當(dāng)前的云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)對(duì)應(yīng)的操作壓力較小,此時(shí)就可以發(fā)送攜帶有預(yù)設(shè)空閑狀態(tài)處理規(guī)則的第二操作調(diào)度指令,以使各存儲(chǔ)節(jié)點(diǎn)接收到第二操作調(diào)度指令后,根據(jù)該攜帶的預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)該設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;對(duì)于當(dāng)前系統(tǒng)狀態(tài)為壓力狀態(tài)時(shí),可以表明當(dāng)前的云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)對(duì)應(yīng)的操作壓力過(guò)大,超過(guò)了該各存儲(chǔ)節(jié)點(diǎn)的負(fù)載能力,此時(shí),可以向各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)壓力狀態(tài)處理規(guī)則的第三操作調(diào)度指令,以使各存儲(chǔ)節(jié)點(diǎn)接收到該第三操作調(diào)度指令后,根據(jù)所攜帶的預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)該設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作。

具體的,如圖2所示,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)該第二操作調(diào)度指令所攜帶的該預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,可以包括:

s201:該各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速 設(shè)置;若否,執(zhí)行步驟s202,若是,執(zhí)行步驟s203;

s202:該各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作,若存在,執(zhí)行步驟s204,若不存在,執(zhí)行步驟s205;

s203:關(guān)閉該對(duì)讀操作的限速設(shè)置,繼續(xù)步驟s202;

s204:處理該內(nèi)部操作,繼續(xù)執(zhí)行步驟s205;

s205:根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作。

可以理解的是,對(duì)于云存儲(chǔ)系統(tǒng)來(lái)說(shuō),首先需要保證對(duì)于錄像/圖片/文件的寫入以及錄像預(yù)覽等實(shí)時(shí)性高的外部操作的執(zhí)行,其次才是對(duì)錄像回放和錄像/圖片/文件下載等實(shí)時(shí)性低的外部操作以及內(nèi)部操作的執(zhí)行,然而對(duì)于內(nèi)部操作而言,由于是對(duì)外(用戶)不可見的,因此可以在云存儲(chǔ)資源較充裕即云存儲(chǔ)系統(tǒng)處于空閑狀態(tài)下進(jìn)行。

當(dāng)該各存儲(chǔ)節(jié)點(diǎn)接收到該第二操作調(diào)度指令后,因?yàn)樵摳鞔鎯?chǔ)節(jié)點(diǎn)均處于空閑的狀態(tài),因此會(huì)根據(jù)該第二操作調(diào)度指令所攜帶的預(yù)設(shè)空閑狀態(tài)處理規(guī)則將存在的對(duì)讀操作的限速設(shè)置關(guān)閉,處理存在的待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作,可以理解的是,對(duì)于讀操作的速度來(lái)說(shuō),當(dāng)讀操作的速度越快,其對(duì)該云存儲(chǔ)系統(tǒng)造成的壓力越大。

對(duì)于該云存儲(chǔ)系統(tǒng)處于壓力狀態(tài)時(shí),可以表明各存儲(chǔ)節(jié)點(diǎn)的當(dāng)前所承擔(dān)的負(fù)載壓力較大,超出了該各存儲(chǔ)節(jié)點(diǎn)的負(fù)載能力,此時(shí),該存儲(chǔ)管理服務(wù)器可以向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶預(yù)設(shè)壓力狀態(tài)處理規(guī)則的第三操作調(diào)度指令,以使跟存儲(chǔ)節(jié)點(diǎn)作出相應(yīng)的處理,如圖3所示,具體的,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)該第三操作調(diào)度指令所攜帶的該預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,可以包括:

s301:該各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作,當(dāng)判斷結(jié)果為否時(shí),執(zhí)行步驟s302,當(dāng)判斷結(jié)果為是時(shí),執(zhí)行步驟s303;

s302:判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置,若否,執(zhí)行步驟s304,若是,執(zhí)行步驟s305;

s303:暫停對(duì)該內(nèi)部操作的執(zhí)行,繼續(xù)執(zhí)行步驟s302;

s304:開啟該對(duì)讀操作的限速設(shè)置,繼續(xù)執(zhí)行步驟s305;

s305:根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作。

需要說(shuō)明的是,當(dāng)云存儲(chǔ)系統(tǒng)處于壓力狀態(tài)時(shí),可以表明該各存儲(chǔ)節(jié)點(diǎn)當(dāng)前處理對(duì)應(yīng)的操作的負(fù)載壓力超過(guò)了該各存儲(chǔ)節(jié)點(diǎn)所能承擔(dān)的壓力。此時(shí),可以根據(jù)該預(yù)設(shè)壓力狀態(tài)處理規(guī)則對(duì)各存儲(chǔ)節(jié)點(diǎn)進(jìn)行設(shè)置,暫停該存在的待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作,以及對(duì)讀操作進(jìn)行限速設(shè)置,以此來(lái)降低該各存儲(chǔ)節(jié)點(diǎn)的負(fù)載壓力。當(dāng)然,根據(jù)該預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置后,如果該云存儲(chǔ)系統(tǒng)的當(dāng)前狀態(tài)還是壓力狀態(tài),則可以確定該云存儲(chǔ)系統(tǒng)的硬件配置過(guò)差或者當(dāng)前云存儲(chǔ)系統(tǒng)的壓力過(guò)大。此時(shí),就需要該存儲(chǔ)管理服務(wù)器執(zhí)行其他相應(yīng)的對(duì)策,如輸出提示信息,提示用戶升級(jí)云存儲(chǔ)系統(tǒng)的硬件配置等。當(dāng)然,如果該云存儲(chǔ)系統(tǒng)處于壓力狀態(tài)下,并且在根據(jù)該預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置前,該云存儲(chǔ)系統(tǒng)中的各存儲(chǔ)節(jié)點(diǎn)均對(duì)該讀操作進(jìn)行了限速設(shè)置,且暫停了對(duì)待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作的處理,也可以表明該云存儲(chǔ)系統(tǒng)的硬件配置過(guò)差或者當(dāng)前云存儲(chǔ)系統(tǒng)的壓力過(guò)大。具體的,針對(duì)這些情況,本發(fā)明實(shí)施例所提供的云存儲(chǔ)系統(tǒng)調(diào)度方法還可以包括:

當(dāng)所述云存儲(chǔ)系統(tǒng)處于該壓力狀態(tài)時(shí),并且該各存儲(chǔ)節(jié)點(diǎn)的設(shè)置內(nèi)容中存在對(duì)該讀操作的限速設(shè)置以及對(duì)內(nèi)部操作的暫停設(shè)置時(shí),通過(guò)運(yùn)維平臺(tái)輸出提示信息,以提示用戶該云存儲(chǔ)系統(tǒng)當(dāng)前的壓力過(guò)大。

可以理解的是,該提示信息可以是聲音提示、亮度提示或者文字提示,等等,本發(fā)明實(shí)施例并不對(duì)該提示信息類型進(jìn)行限定。

相應(yīng)于上述方法實(shí)施例,如圖4所示,本發(fā)明實(shí)施例還提供了一種云存儲(chǔ)系統(tǒng)調(diào)度裝置,可以應(yīng)用于存儲(chǔ)管理服務(wù)器,該裝置可以包括:數(shù)據(jù)獲得計(jì)算模塊401、云存儲(chǔ)壓力值計(jì)算模塊402、當(dāng)前系統(tǒng)狀態(tài)確定模塊403和指令發(fā)送模塊404;

所述數(shù)據(jù)獲得計(jì)算模塊401:用于獲得所述云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及內(nèi)存mem占用率,并且,分別計(jì)算所述云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率;

所述云存儲(chǔ)壓力值計(jì)算模塊402:用于利用所述平均磁盤io占用率、所述平均cpu占用率以及所述平均mem占用率,計(jì)算所述云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值;

所述當(dāng)前系統(tǒng)狀態(tài)確定模塊403:用于根據(jù)所述云存儲(chǔ)壓力值,確定所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài);

所述指令發(fā)送模塊404:用于根據(jù)所述云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述操作調(diào)度指令,響應(yīng)所述存儲(chǔ)管理服務(wù)器的調(diào)度操作。

應(yīng)用本發(fā)明實(shí)施例,首先獲得云存儲(chǔ)系統(tǒng)中各存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率、cpu占用率以及內(nèi)存mem占用率,并且,分別計(jì)算該云存儲(chǔ)系統(tǒng)的平均磁盤io占用率、平均cpu占用率以及平均mem占用率;利用該平均磁盤io占用率、該平均cpu占用率以及該平均mem占用率,計(jì)算該云存儲(chǔ)系統(tǒng)的云存儲(chǔ)壓力值;根據(jù)該云存儲(chǔ)壓力值,確定該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài);根據(jù)該云存儲(chǔ)系統(tǒng)的當(dāng)前系統(tǒng)狀態(tài),向該各存儲(chǔ)節(jié)點(diǎn)發(fā)送操作調(diào)度指令,以使該各存儲(chǔ)節(jié)點(diǎn)根據(jù)該操作調(diào)度指令,響應(yīng)該存儲(chǔ)管理服務(wù)器的調(diào)度操作。以實(shí)現(xiàn)針對(duì)云存儲(chǔ)系統(tǒng)的操作的性質(zhì),合理調(diào)度云存儲(chǔ)系統(tǒng)的資源配置,使得同等硬件配置下的云存儲(chǔ)系統(tǒng)的相對(duì)性能得到提升。

具體的,所述當(dāng)前系統(tǒng)狀態(tài)包括空閑狀態(tài)、正常狀態(tài)以及壓力狀態(tài);

所述指令發(fā)送模塊404可以包括第一指令發(fā)送單元、第二指令發(fā)送單元和第三指令發(fā)送單元;

所述第一指令發(fā)送單元:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述正常狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送第一操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第一操作調(diào)度指令后,根據(jù)當(dāng)前已設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

所述第二指令發(fā)送單元:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述空閑狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)空閑狀態(tài)處理規(guī)則的第二操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第二操作調(diào)度指令后,根據(jù)所述第二操作調(diào)度指令所攜帶的所述預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

所述第三指令發(fā)送單元:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述壓力狀態(tài)時(shí),向所述各存儲(chǔ)節(jié)點(diǎn)發(fā)送攜帶有預(yù)設(shè)壓力狀態(tài)處理規(guī)則的第三操作調(diào)度指令,以使所述各存儲(chǔ)節(jié)點(diǎn)在接收到所述第三操作調(diào)度指令后,根據(jù)所述第三操作調(diào)度指令所攜帶的所述預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作。

具體的,所述數(shù)據(jù)獲得計(jì)算模塊401,具體用于:

利用預(yù)設(shè)公式分別計(jì)算平均磁盤io占用率、平均cpu占用率以及平均mem占用率;其中,所述預(yù)設(shè)公式可以分別為:

其中,表示所述平均磁盤io占用率,表示所述平均mem占用率,表示所述平均cpu占用率;

wai表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的磁盤io占用率,memi表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的mem占用率,cpui表示第i個(gè)存儲(chǔ)節(jié)點(diǎn)的cpu占用率,其中,i屬于1~n之間的任一整數(shù),wai、memi以及cpui均為百分制數(shù)值,取值范圍為[0,1]。

具體的,所述云存儲(chǔ)壓力值計(jì)算模塊所利用公式可以為:

其中,syspress表示所述云存儲(chǔ)壓力值,k1、k2和k3為權(quán)重系數(shù)。

具體的,所述當(dāng)前系統(tǒng)狀態(tài)確定模塊403可以包括第一判斷單元、第二判斷單元、空閑狀態(tài)確定單元、正常狀態(tài)確定單元和壓力狀態(tài)確定單元;

所述第一判斷模塊:用于判斷所述云存儲(chǔ)壓力值是否超過(guò)第一預(yù)設(shè)閾值,若否,觸發(fā)所述空閑狀態(tài)確定單元,若是,觸發(fā)所述第二判斷單元;

所述空閑狀態(tài)確定單元:用于確定所述云存儲(chǔ)系統(tǒng)處于空閑狀態(tài);

所述第二判斷單元:用于判斷所述云存儲(chǔ)壓力值是否超過(guò)第二預(yù)設(shè)閾值,若未超過(guò),觸發(fā)所述正常狀態(tài)確定單元,若超過(guò),觸發(fā)所述壓力狀態(tài)確定單元;

所述正常狀態(tài)確定單元:用于確定所述云存儲(chǔ)系統(tǒng)處于正常狀態(tài);

所述壓力狀態(tài)確定單元:用于確定所述云存儲(chǔ)系統(tǒng)處于壓力狀態(tài);

其中,所述第一預(yù)設(shè)閾值小于所述第二預(yù)設(shè)閾值。

具體的,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述第二操作調(diào)度指令所攜帶的所述預(yù)設(shè)空閑狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,包括:

所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置;

若否,所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作,若存在,處理所述內(nèi)部操作,若不存在,根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

若是,關(guān)閉所述對(duì)讀操作的限速設(shè)置,繼續(xù)執(zhí)行所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作的步驟。

具體的,所述各存儲(chǔ)節(jié)點(diǎn)根據(jù)所述第三操作調(diào)度指令所攜帶的所述預(yù)設(shè)壓力狀態(tài)處理規(guī)則進(jìn)行設(shè)置,并根據(jù)所設(shè)置內(nèi)容,執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作,包括:

所述各存儲(chǔ)節(jié)點(diǎn)判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在待進(jìn)行和/或正在進(jìn)行的內(nèi)部操作;

當(dāng)判斷結(jié)果為否時(shí),判斷各自對(duì)應(yīng)的設(shè)置內(nèi)容中是否存在對(duì)讀操作的限速設(shè)置,若否,開啟所述對(duì)讀操作的限速設(shè)置,若是,根據(jù)所設(shè)置內(nèi)容執(zhí)行所對(duì)應(yīng)的至少一個(gè)操作;

具體的,本發(fā)明實(shí)施例所提供的一種云存儲(chǔ)系統(tǒng)調(diào)度裝置,還可以包括提 示信息輸出模塊;

所述提示信息輸出模塊:用于當(dāng)所述云存儲(chǔ)系統(tǒng)處于所述壓力狀態(tài)時(shí),并且所述各存儲(chǔ)節(jié)點(diǎn)的設(shè)置內(nèi)容中存在對(duì)所述讀操作的限速設(shè)置以及對(duì)內(nèi)部操作的暫停設(shè)置時(shí),通過(guò)運(yùn)維平臺(tái)輸出提示信息,以提示用戶所述云存儲(chǔ)系統(tǒng)當(dāng)前的壓力過(guò)大。

對(duì)于系統(tǒng)/裝置實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法實(shí)施例的部分說(shuō)明即可。

需要說(shuō)明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語(yǔ)僅僅用來(lái)將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來(lái),而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、物品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、物品或者設(shè)備中還存在另外的相同要素。

本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施方式中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可以存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,這里所稱得的存儲(chǔ)介質(zhì),如:rom/ram、磁碟、光盤等。

以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
闸北区| 新田县| 秦皇岛市| 奈曼旗| 新津县| 彰化市| 赣州市| 永年县| 天门市| 桂林市| 中阳县| 达尔| 开化县| 肃宁县| 瑞金市| 富平县| 陇川县| 木兰县| 天津市| 贺州市| 德格县| 安多县| 郓城县| 江油市| 万源市| 东至县| 呼玛县| 阜宁县| 常山县| 张家口市| 沙田区| 依兰县| 易门县| 龙胜| 嘉义市| 手机| 苏尼特右旗| 青岛市| 沽源县| 于田县| 波密县|