專利名稱:云系統(tǒng)調(diào)度方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)應(yīng)用領(lǐng)域,尤其涉及一種云系統(tǒng)調(diào)度方法和系統(tǒng)。
背景技術(shù):
當(dāng)前,云計(jì)算逐漸被行業(yè)認(rèn)可,云操作系統(tǒng)(云OS)逐漸實(shí)現(xiàn)并付諸于實(shí)踐。在云OS中,虛擬機(jī)的調(diào)度系統(tǒng)是最重要的組成部分,虛擬機(jī)的并發(fā)操作,是調(diào)度系統(tǒng)的主要內(nèi)容之一。虛擬機(jī)的并發(fā)操作使得云OS系統(tǒng)的使用效率更高,避免了用戶長時(shí)間等待或者操作超時(shí)。傳統(tǒng)的并發(fā)操作策略是請(qǐng)求隊(duì)列中的操作請(qǐng)求串行執(zhí)行,等待一個(gè)虛擬機(jī)完全操作完成后,才進(jìn)行下一個(gè)操作,從而大大降低了云OS系統(tǒng)的效率及可用性。
發(fā)明內(nèi)容
本發(fā)明提供了一種云系統(tǒng)調(diào)度方法和系統(tǒng),解決了云OS系統(tǒng)的效率及可用性低的問題。一種云系統(tǒng)調(diào)度方法,包括接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中;從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī);將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)。優(yōu)選的,所述根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)包括獲取所述云系統(tǒng)中當(dāng)前正常運(yùn)行的全部物理機(jī);根據(jù)所述虛擬機(jī)操作請(qǐng)求所請(qǐng)求的虛擬機(jī)占用的物理資源,從所述當(dāng)前正常運(yùn)行的全部物理機(jī)中,篩選出能夠滿足所述虛擬機(jī)操作請(qǐng)求所需要占用的物理資源的物理機(jī)。優(yōu)選的,所述篩選出能夠滿足所述虛擬機(jī)操作請(qǐng)求所需要占用的物理資源的物理機(jī)包括獲取所述全部正常工作的物理機(jī)的狀態(tài)參數(shù),所述狀態(tài)參數(shù)包括是否正常、CPU、內(nèi)存、使能、運(yùn)行的虛擬機(jī)數(shù)、正在操作的虛擬機(jī)數(shù);根據(jù)所述狀態(tài)參數(shù),將能夠運(yùn)行所述虛擬機(jī)操作請(qǐng)求的物理機(jī)篩選出來。優(yōu)選的,將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)的步驟之后,還包括將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除。優(yōu)選的,所述將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除的步驟之后,還包括 從所述虛擬機(jī)操作指令隊(duì)列中再選擇一條虛擬機(jī)操作請(qǐng)求,并對(duì)所述虛擬機(jī)操作請(qǐng)求執(zhí)行調(diào)度。本發(fā)明還提供了一種云系統(tǒng)調(diào)度裝置,包括調(diào)度隊(duì)列維護(hù)模塊,用于接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中;物理機(jī)篩選模塊,用于從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī);調(diào)度執(zhí)行模塊,用于將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)。優(yōu)選的,所述物理機(jī)篩選模塊包括資源獲取單元,用于獲取所述云系統(tǒng)中當(dāng)前正常運(yùn)行的全部物理機(jī); 物理機(jī)選擇單元,用于根據(jù)所述虛擬機(jī)操作請(qǐng)求所請(qǐng)求的虛擬機(jī)占用的物理資源,從所述當(dāng)前正常運(yùn)行的全部物理機(jī)中,篩選出能夠滿足所述虛擬機(jī)操作請(qǐng)求所需要占用的物理資源的物理機(jī)。優(yōu)選的,所述調(diào)度隊(duì)列維護(hù)模塊,還用于將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除。本發(fā)明提供了一種云系統(tǒng)調(diào)度方法和系統(tǒng),接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中,從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī),將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī),解決了云OS系統(tǒng)的效率及可用性低的問題。
圖I為本發(fā)明的實(shí)施例一提供的一種云系統(tǒng)調(diào)度方法的流程圖;圖2為本發(fā)明的實(shí)施例二提供的一種云系統(tǒng)調(diào)度裝置和結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了解決云OS系統(tǒng)的效率及可用性低的問題,本發(fā)明的實(shí)施例提供了一種云系統(tǒng)調(diào)度方法和裝置。下文中將結(jié)合附圖對(duì)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明。需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互任意組合。 首先結(jié)合附圖,對(duì)本發(fā)明實(shí)施例一進(jìn)行說明。本發(fā)明實(shí)施例提供了一種云系統(tǒng)調(diào)度方法,使用該方法完成云系統(tǒng)內(nèi)部調(diào)度的流程如圖I所示,包括步驟101、接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中;本步驟中,將用戶對(duì)虛擬機(jī)操作的虛擬機(jī)操作請(qǐng)求保存到虛擬機(jī)操作指令隊(duì)列中,后期對(duì)于虛擬機(jī)操作請(qǐng)求指令的響應(yīng)都從此隊(duì)列中提取請(qǐng)求。步驟102、從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī);本步驟中,對(duì)整個(gè)系統(tǒng)中物理機(jī)狀態(tài)分析,獲取所述云系統(tǒng)中當(dāng)前正常運(yùn)行的全部物理機(jī),從而選擇虛擬機(jī)可以運(yùn)行的最合適的物理機(jī)。具體的,通過合理高效的物理機(jī)狀態(tài)模型,快速判斷出系統(tǒng)中每個(gè)物理機(jī)各種狀態(tài)參數(shù)(是否正常、CPU、內(nèi)存、使能、運(yùn)行的虛擬機(jī)數(shù)、正在操作的虛擬機(jī)數(shù)等),根據(jù)所述狀態(tài)參數(shù),將能夠運(yùn)行所述虛擬機(jī)操作請(qǐng)求的物理機(jī)篩選出來,從而決定要處理的操作請(qǐng)求要運(yùn)行在哪臺(tái)物理機(jī)上。
優(yōu)選的,對(duì)整個(gè)系統(tǒng)中物理機(jī)進(jìn)行狀態(tài)分析,從而及時(shí)更新系統(tǒng)中相關(guān)狀態(tài),為下一次的虛擬機(jī)并發(fā)操作反饋準(zhǔn)確的信息。步驟103、將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī);步驟104、將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除;步驟105、從所述虛擬機(jī)操作指令隊(duì)列中再選擇一條虛擬機(jī)操作請(qǐng)求,并對(duì)所述虛擬機(jī)操作請(qǐng)求執(zhí)行調(diào)度;本步驟中,在完成對(duì)上一條虛擬機(jī)操作請(qǐng)求的調(diào)度之后,即可立刻開始重復(fù)步驟102至步驟104,對(duì)下一條虛擬機(jī)操作請(qǐng)求進(jìn)行調(diào)度,不需要等待上一條虛擬機(jī)操作請(qǐng)求執(zhí)行完成。步驟106、接收所述物理機(jī)的執(zhí)行反饋,在所述物理機(jī)執(zhí)行所述虛擬機(jī)操作請(qǐng)求失敗時(shí),將所述虛擬機(jī)操作請(qǐng)求重新加入至所述虛擬機(jī)操作指令隊(duì)列中;本步驟中,為了進(jìn)一步增加云系統(tǒng)調(diào)度的準(zhǔn)確性,啟動(dòng)虛擬機(jī)監(jiān)控進(jìn)程,實(shí)時(shí)對(duì)虛擬機(jī)狀態(tài)進(jìn)行監(jiān)控分析,從而分別處理執(zhí)行成功或失敗的操作請(qǐng)求,為調(diào)度提供準(zhǔn)確的依據(jù)。下面結(jié)合附圖,對(duì)本發(fā)明的實(shí)施例二進(jìn)行說明。本發(fā)明實(shí)施例提供了一種云系統(tǒng)調(diào)度裝置,其結(jié)構(gòu)如圖2所示,包括調(diào)度隊(duì)列維護(hù)模塊201,用于接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中;物理機(jī)篩選模塊202,用于從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī);調(diào)度執(zhí)行模塊203,用于將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)。優(yōu)選的,所述物理機(jī)篩選模塊202包括資源獲取單元,用于獲取所述云系統(tǒng)中當(dāng)前正常運(yùn)行的全部物理機(jī);物理機(jī)選擇單元,用于根據(jù)所述虛擬機(jī)操作請(qǐng)求所請(qǐng)求的虛擬機(jī)占用的物理資源,從所述當(dāng)前正常運(yùn)行的全部物理機(jī)中,篩選出能夠滿足所述虛擬機(jī)操作請(qǐng)求所需要占用的物理資源的物理機(jī)。優(yōu)選的,所述調(diào)度隊(duì)列維護(hù)模塊201,還用于將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除。優(yōu)選的,所述調(diào)度隊(duì)列維護(hù)模塊201還用于接收所述物理機(jī)的執(zhí)行反饋,在所述物理機(jī)執(zhí)行所述虛擬機(jī)操作請(qǐng)求失敗時(shí),將所述虛擬機(jī)操作請(qǐng)求重新加入至所述虛擬機(jī)操作指令隊(duì)列中。本發(fā)明的實(shí)施例的云系統(tǒng)調(diào)度裝置,能夠與本發(fā)明的實(shí)施例所提供的一種云系統(tǒng)調(diào)度方法相結(jié)合,接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中,從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī),將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī),并在完成一條虛擬機(jī)操作請(qǐng)求的調(diào)度之后,立刻開始對(duì)虛擬機(jī)操作指令隊(duì)列中的另一條虛擬機(jī)操作請(qǐng)求的調(diào)度,解決了云OS系統(tǒng)的效率及可用性低的問題。本領(lǐng)域普通技術(shù)人員可以理解上述實(shí)施例的全部或部分步驟可以使用計(jì)算機(jī)程序流程來實(shí)現(xiàn),所述計(jì)算機(jī)程序可以存儲(chǔ)于一計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,所述計(jì)算機(jī)程序在相應(yīng)的硬件平臺(tái)上(如系統(tǒng)、設(shè)備、裝置、器件等)執(zhí)行,在執(zhí)行時(shí),包括方法實(shí)施例的步驟之一或其組合。
可選地,上述實(shí)施例的全部或部分步驟也可以使用集成電路來實(shí)現(xiàn),這些步驟可以被分別制作成一個(gè)個(gè)集成電路模塊,或者將它們中的多個(gè)模塊或步驟制作成單個(gè)集成電路模塊來實(shí)現(xiàn)。這樣,本發(fā)明不限制于任何特定的硬件和軟件結(jié)合。上述實(shí)施例中的各裝置/功能模塊/功能單元可以采用通用的計(jì)算裝置來實(shí)現(xiàn),它們可以集中在單個(gè)的計(jì)算裝置上,也可以分布在多個(gè)計(jì)算裝置所組成的網(wǎng)絡(luò)上。上述實(shí)施例中的各裝置/功能模塊/功能單元以軟件功能模塊的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲(chǔ)在一個(gè)計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中。上述提到的計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)可以是只讀存儲(chǔ)器,磁盤或光盤等。任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求所述的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種云系統(tǒng)調(diào)度方法,其特征在于,該方法包括 接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中; 從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī); 將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)。
2.根據(jù)權(quán)利要求I所述的云系統(tǒng)調(diào)度方法,其特征在于,所述根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)包括 獲取所述云系統(tǒng)中當(dāng)前正常運(yùn)行的全部物理機(jī); 根據(jù)所述虛擬機(jī)操作請(qǐng)求所請(qǐng)求的虛擬機(jī)占用的物理資源,從所述當(dāng)前正常運(yùn)行的全部物理機(jī)中,篩選出能夠滿足所述虛擬機(jī)操作請(qǐng)求所需要占用的物理資源的物理機(jī)。
3.根據(jù)權(quán)利要求2所述的云系統(tǒng)調(diào)度方法,其特征在于,所述篩選出能夠滿足所述虛擬機(jī)操作請(qǐng)求所需要占用的物理資源的物理機(jī)包括 獲取所述全部正常工作的物理機(jī)的狀態(tài)參數(shù),所述狀態(tài)參數(shù)包括是否正常、CPU、內(nèi)存、使能、運(yùn)行的虛擬機(jī)數(shù)、正在操作的虛擬機(jī)數(shù); 根據(jù)所述狀態(tài)參數(shù),將能夠運(yùn)行所述虛擬機(jī)操作請(qǐng)求的物理機(jī)篩選出來。
4.根據(jù)權(quán)利要求I所述的云系統(tǒng)調(diào)度方法,其特征在于,將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)的步驟之后,還包括 將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除。
5.根據(jù)權(quán)利要求4所述的云系統(tǒng)調(diào)度方法,其特征在于,所述將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除的步驟之后,還包括 從所述虛擬機(jī)操作指令隊(duì)列中再選擇一條虛擬機(jī)操作請(qǐng)求,并對(duì)所述虛擬機(jī)操作請(qǐng)求執(zhí)行調(diào)度。
6.根據(jù)權(quán)利要求I所述的云系統(tǒng)調(diào)度方法,其特征在于,將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)的步驟之后,還包括 接收所述物理機(jī)的執(zhí)行反饋,在所述物理機(jī)執(zhí)行所述虛擬機(jī)操作請(qǐng)求失敗時(shí),將所述虛擬機(jī)操作請(qǐng)求重新加入至所述虛擬機(jī)操作指令隊(duì)列中。
7.—種云系統(tǒng)調(diào)度裝置,其特征在于,包括 調(diào)度隊(duì)列維護(hù)模塊,用于接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中; 物理機(jī)篩選模塊,用于從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī); 調(diào)度執(zhí)行模塊,用于將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)。
8.根據(jù)權(quán)利要求7所述的云系統(tǒng)調(diào)度裝置,其特征在于,所述物理機(jī)篩選模塊包括 資源獲取単元,用于獲取所述云系統(tǒng)中當(dāng)前正常運(yùn)行的全部物理機(jī); 物理機(jī)選擇單元,用于根據(jù)所述虛擬機(jī)操作請(qǐng)求所請(qǐng)求的虛擬機(jī)占用的物理資源,從所述當(dāng)前正常運(yùn)行的全部物理機(jī)中,篩選出能夠滿足所述虛擬機(jī)操作請(qǐng)求所需要占用的物理資源的物理機(jī)。
9.根據(jù)權(quán)利要求7所述的云系統(tǒng)調(diào)度裝置,其特征在于,所述調(diào)度隊(duì)列維護(hù)模塊,還用于將已發(fā)送至物理的虛擬機(jī)操作請(qǐng)求從所述虛擬機(jī)操作指令隊(duì)列中刪除。
10.根據(jù)權(quán)利要求7所述的云系統(tǒng)調(diào)度裝置,其特征在于,所述調(diào)度隊(duì)列維護(hù)模塊還用于接收所述物理機(jī)的執(zhí)行反饋,在所述物理機(jī)執(zhí)行所述虛擬機(jī)操作請(qǐng)求失敗時(shí),將所述虛擬機(jī)操作請(qǐng)求重新加入至所述虛擬機(jī)操作指令隊(duì)列中。
全文摘要
本發(fā)明提供了一種云系統(tǒng)調(diào)度方法和裝置。涉及計(jì)算機(jī)應(yīng)用領(lǐng)域;解決了云OS系統(tǒng)的效率及可用性低的問題。該方法包括接收兩個(gè)或兩個(gè)以上并發(fā)的虛擬機(jī)操作請(qǐng)求,將所述并發(fā)的虛擬機(jī)操作請(qǐng)求保存至虛擬機(jī)操作指令隊(duì)列中;從所述虛擬機(jī)操作指令隊(duì)列中提取一虛擬機(jī)操作請(qǐng)求,根據(jù)所述虛擬機(jī)操作請(qǐng)求從云系統(tǒng)中選擇可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī);將所述虛擬機(jī)操作請(qǐng)求發(fā)送至所述可以完成該虛擬機(jī)操作請(qǐng)求的物理機(jī)。本發(fā)明提供的技術(shù)方案適用于云系統(tǒng),實(shí)現(xiàn)了高效率的云系統(tǒng)調(diào)度。
文檔編號(hào)G06F9/48GK102629216SQ20121004391
公開日2012年8月8日 申請(qǐng)日期2012年2月24日 優(yōu)先權(quán)日2012年2月24日
發(fā)明者劉俊鵬, 郭鋒 申請(qǐng)人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司