記為未啟動(dòng),從而使監(jiān)控線程有效的確定管理命令的執(zhí)行情況,并將管理命令的執(zhí)行情況發(fā)送至資源池。
[0052]但是,在上述實(shí)施例中,應(yīng)當(dāng)注意的是,對(duì)于監(jiān)控線程對(duì)操作成功和操作失敗的子管理命令的處理方式,本發(fā)明并不作限定,由于該處理的目的在于實(shí)現(xiàn)對(duì)操作失敗的命令的重新執(zhí)行,以及避免對(duì)執(zhí)行成功的操作命令的重復(fù)執(zhí)行,從而有效地提高資源池的資源管理效率,因此,對(duì)于操作完成的子管理命令的處理方式本發(fā)明并不作限定,其也可以是未列舉的其他的可以提高資源池中資源管理效率的處理方式。
[0053]此外,對(duì)于上述實(shí)施例中的自動(dòng)代理服務(wù)和監(jiān)控線程,二者可以是同一個(gè)監(jiān)控服務(wù),也可以是其他的不同的監(jiān)控服務(wù),本發(fā)明對(duì)此并不作限定,其只要能夠?qū)崿F(xiàn)對(duì)每個(gè)子管理命令的執(zhí)行情況的監(jiān)控操作,并能夠確保執(zhí)行成功的子管理命令不再重復(fù)執(zhí)行,并使執(zhí)行失敗的子管理命令重新執(zhí)行,從而達(dá)到提高資源池的資源管理效率的目的即可。
[0054]根據(jù)本發(fā)明的上述方案可以看出,本發(fā)明對(duì)于資源池的資源管理效率低的問(wèn)題給出了有效的解決方案,為了更好的清楚本發(fā)明的具體實(shí)施流程,下面將結(jié)合圖2對(duì)PaaS環(huán)境下資源池的管理流程進(jìn)行詳細(xì)闡述。
[0055]圖2為云計(jì)算環(huán)境下資源池管理與IaaS層的資源操作流程圖,從圖2中可以看出,PaaS環(huán)境下資源池的管理流程為:
[0056]首先,資源池發(fā)出需要調(diào)用IaaS層服務(wù)的管理命令;
[0057]然后,建立操作隊(duì)列,并對(duì)資源池發(fā)出的管理命令進(jìn)行解析,并根據(jù)命令涉及的資源個(gè)數(shù)分解成多個(gè)子管理命令;其中,操作隊(duì)列的簡(jiǎn)略代碼如下所示:
[0058]Public class taskqueue{
[0059]Task:CreateVM
[0060]}
[0061 ]接著,在操作隊(duì)列中對(duì)每個(gè)子管理命令進(jìn)行持久化處理;
[0062]然后,建立與該操作隊(duì)列對(duì)應(yīng)的監(jiān)控線程;其中,監(jiān)控線程的簡(jiǎn)略代碼如下所示:
[0063]Public class WatchService{
[0064]If (CreateVM = true) {
[0065]sendMessageCVM create success”);
[0066]}else{
[0067]sendMessage(”VM create fail”);
[0068]}
[0069]最后,按照隊(duì)列順序執(zhí)行每個(gè)子管理命令,在執(zhí)行過(guò)程中,IaaS層的自動(dòng)代理服務(wù)負(fù)責(zé)監(jiān)控操作隊(duì)列中每個(gè)子管理命令的執(zhí)行情況,并將每個(gè)子管理命令的執(zhí)行情況發(fā)送至監(jiān)控線程;監(jiān)控線程負(fù)責(zé)接收每個(gè)子管理命令的執(zhí)行情況信息,并對(duì)操作隊(duì)列的管理命令進(jìn)行監(jiān)控,同時(shí)將監(jiān)控信息發(fā)送至資源池管理操作。
[0070]其中,監(jiān)控線程在得到每個(gè)子管理命令的執(zhí)行情況信息后,將執(zhí)行成功的子管理命令做成功標(biāo)記,將執(zhí)行失敗的子管理命令重新啟動(dòng)或標(biāo)記為未啟動(dòng);當(dāng)監(jiān)控線程通過(guò)對(duì)操作隊(duì)列的監(jiān)控,判斷操作隊(duì)列中的每個(gè)子管理命令都執(zhí)行成功時(shí),則監(jiān)控線程將資源創(chuàng)建成功的信息發(fā)送至資源池管理操作;當(dāng)監(jiān)控線程通過(guò)對(duì)操作隊(duì)列的監(jiān)控,判斷操作隊(duì)列中至少有一個(gè)子管理命令執(zhí)行失敗時(shí),則監(jiān)控線程將資源創(chuàng)建失敗的信息發(fā)送至資源池管理操作。
[0071]此外,根據(jù)本發(fā)明的實(shí)施例,還提供了一種用于PaaS環(huán)境下的資源池管理裝置。
[0072]如圖3所示,根據(jù)本發(fā)明實(shí)施例的資源池管理裝置包括:
[0073]分解模塊31,用于對(duì)上述管理命令進(jìn)行分解,并得到多個(gè)子管理命令;
[0074]執(zhí)行模塊32,用于執(zhí)行上述多個(gè)子管理命令;
[0075]監(jiān)控模塊33,用于對(duì)每個(gè)子管命令的執(zhí)行情況進(jìn)行監(jiān)控;
[0076]確定模塊34,用于根據(jù)上述每個(gè)子管理命令所對(duì)應(yīng)的監(jiān)控結(jié)果,確定上述每個(gè)子管理命令所涉及資源的操作情況。
[0077]其中,在一個(gè)實(shí)施例中,為了提高資源池的資源管理效率,上述分解模塊31還可用于根據(jù)管理命令所涉及的資源個(gè)數(shù),對(duì)該管理命令進(jìn)行分解,從而達(dá)到對(duì)涉及不同資源的管理命令進(jìn)行分別管理的目的。
[0078]此外,在另一個(gè)實(shí)施例中,為了提高資源池的資源管理效率,根據(jù)本發(fā)明實(shí)施例的資源池管理裝置還可包括:
[0079]建立隊(duì)列模塊(未示出),用于在對(duì)上述管理命令進(jìn)行分解之前,通過(guò)建立操作隊(duì)列,并將上述管理命令加入至該操作隊(duì)列中;并且,上述分解模塊31還可用于對(duì)上述操作隊(duì)列中的管理命令進(jìn)行分解;
[0080]持久化處理模塊(未示出),用于在執(zhí)行上述多個(gè)子管理命令之前,對(duì)上述操作隊(duì)列進(jìn)行持久化處理,能夠?qū)崿F(xiàn)PaaS層資源池管理和IaaS層的完全解耦,從而提高了系統(tǒng)運(yùn)行的靈活性。
[0081]綜上所述,借助于本發(fā)明的上述技術(shù)方案,本發(fā)明通過(guò)對(duì)管理命令分解后得到的每個(gè)子管理命令的執(zhí)行情況進(jìn)行監(jiān)控,并確定每個(gè)子管理命令所涉及資源的操作情況,能夠有效的確定資源池的資源管理命令的執(zhí)行狀況,從而有效的提高資源池的資源管理效率;此外,本發(fā)明通過(guò)對(duì)操作隊(duì)列中管理命令的持久化處理,能夠?qū)崿F(xiàn)PaaS層資源池管理和IaaS層的完全解耦,從而提高了系統(tǒng)運(yùn)行的靈活性。
[0082]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種用于PaaS環(huán)境下的資源池管理方法,其特征在于,包括: 對(duì)管理命令進(jìn)行分解,得到多個(gè)子管理命令; 執(zhí)行所述多個(gè)子管理命令,并對(duì)每個(gè)子管理命令的執(zhí)行情況進(jìn)行監(jiān)控; 根據(jù)所述每個(gè)子管理命令所對(duì)應(yīng)的監(jiān)控結(jié)果,確定所述每個(gè)子管理命令所涉及資源的操作情況。2.根據(jù)權(quán)利要求1所述的資源池管理方法,其特征在于,所述管理命令由所述資源池發(fā)出、并且用于對(duì)IaaS層的服務(wù)進(jìn)行調(diào)用。3.根據(jù)權(quán)利要求1所述的資源池管理方法,其特征在于,對(duì)所述管理命令進(jìn)行分解包括: 根據(jù)所述管理命令所涉及的資源個(gè)數(shù),對(duì)所述管理命令進(jìn)行分解。4.根據(jù)權(quán)利要求1所述的資源池管理方法,其特征在于,在對(duì)所述管理命令進(jìn)行分解前,所述資源池管理方法進(jìn)一步包括: 建立操作隊(duì)列,并將所述管理命令加入至所述操作隊(duì)列; 并且,對(duì)管理命令進(jìn)行分解包括: 對(duì)所述操作隊(duì)列中的管理命令進(jìn)行分解。5.根據(jù)權(quán)利要求4所述的資源池管理方法,其特征在于,在執(zhí)行所述多個(gè)子管理命令之前,所述資源池管理方法進(jìn)一步包括: 對(duì)所述操作隊(duì)列進(jìn)行持久化處理。6.根據(jù)權(quán)利要求1所述的資源池管理方法,其特征在于,進(jìn)一步包括: 建立與管理命令對(duì)應(yīng)的監(jiān)控線程; 并且,在得到所述每個(gè)子管理命令所對(duì)應(yīng)的監(jiān)控結(jié)果之后,將監(jiān)控結(jié)果發(fā)送至所述監(jiān)控線程,由所述監(jiān)控線程確定所述每個(gè)管理子命令所涉及資源的操作情況。7.根據(jù)權(quán)利要求1所述的資源池管理方法,其特征在于,進(jìn)一步包括: 將操作成功的子管理命令標(biāo)記為成功執(zhí)行;和/或 將操作失敗的所述子管理命令重新啟動(dòng),或者將操作失敗的所述子管理命令標(biāo)記為未啟動(dòng)。8.一種用于PaaS環(huán)境下的資源池管理裝置,其特征在于,包括: 分解模塊,用于對(duì)所述管理命令進(jìn)行分解,得到多個(gè)子管理命令; 執(zhí)行模塊,用于執(zhí)行所述多個(gè)子管理命令; 監(jiān)控模塊,用于對(duì)每個(gè)子管命令的執(zhí)行情況進(jìn)行監(jiān)控; 確定模塊,用于根據(jù)所述每個(gè)子管理命令所對(duì)應(yīng)的監(jiān)控結(jié)果,確定所述每個(gè)子管理命令所涉及資源的操作情況。9.根據(jù)權(quán)利要求8所述的資源池管理裝置,其特征在于,所述分解模塊還用于根據(jù)所述管理命令所涉及的資源個(gè)數(shù),對(duì)所述管理命令進(jìn)行分解。10.根據(jù)權(quán)利要求8所述的資源池管理裝置,其特征在于,進(jìn)一步包括: 建立隊(duì)列模塊,用于在對(duì)所述管理命令進(jìn)行分解之前,建立操作隊(duì)列,并將所述管理命令加入至所述操作隊(duì)列;并且,所述分解模塊還用于對(duì)所述操作隊(duì)列中的管理命令進(jìn)行分解; 持久化處理模塊,用于在執(zhí)行所述多個(gè)子管理命令之前,對(duì)所述操作隊(duì)列進(jìn)行持久化CO
【專利摘要】本發(fā)明公開(kāi)了一種用于PaaS環(huán)境下的資源池管理方法,該資源池管理方法包括:對(duì)管理命令進(jìn)行分解,得到多個(gè)子管理命令;執(zhí)行所述多個(gè)子管理命令,并對(duì)每個(gè)子管理命令的執(zhí)行情況進(jìn)行監(jiān)控;根據(jù)所述每個(gè)子管理命令所對(duì)應(yīng)的監(jiān)控結(jié)果,確定所述每個(gè)子管理命令所涉及資源的操作情況。本發(fā)明通過(guò)對(duì)管理命令分解后得到的每個(gè)子管理命令的執(zhí)行情況進(jìn)行監(jiān)控,能夠有效的確定資源池的資源管理命令的執(zhí)行狀況,從而有效的提高資源池的資源管理效率。
【IPC分類】G06F9/50
【公開(kāi)號(hào)】CN105653371
【申請(qǐng)?zhí)枴?br>【發(fā)明人】馬玉國(guó), 李亦民, 張平
【申請(qǐng)人】曙光云計(jì)算技術(shù)有限公司
【公開(kāi)日】2016年6月8日
【申請(qǐng)日】2015年12月29日