專利名稱:一種資源分配方法及資源管理平臺的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種資源分配方法及資源管理平臺。
背景技術(shù):
云計(jì)算可以根據(jù)用戶資源的需求進(jìn)行按需分配,即業(yè)務(wù)需要資源時(shí)進(jìn)行分配,不需要時(shí)釋放資源,當(dāng)有多個(gè)錯(cuò)峰業(yè)務(wù)時(shí),可以從整體上提高系統(tǒng)各個(gè)部分的利用效率。云計(jì)算的這一特點(diǎn)使得企業(yè)運(yùn)營的硬件成本和管理成本得到了有效地降低,提高了硬件資源利用率,也使得云計(jì)算技術(shù)得到了極大的提高。作為一種最為常見的資源分配方式,虛擬機(jī)(Virtual Machine,縮寫為VM)通過將硬件資源虛擬化,在同一個(gè)計(jì)算機(jī)硬件上向多個(gè)用戶提供服務(wù),提高了硬件資源的利用率。當(dāng)用戶請求一定能力的資源時(shí),可以通過資源管理平臺暴露的接口向資源管理平臺申請資源,申請資源時(shí),用戶提供資源能力需求參數(shù),該需求參數(shù)包括VM的CPU、內(nèi)存、硬盤、網(wǎng)絡(luò)能力,VM的位置要求,VM的鏡像(Image)等,需求參數(shù)主要是指需要資源管理平臺滿足的一些技術(shù)性能參數(shù)要求,進(jìn)而資源管理平臺根據(jù)用戶的需求參數(shù)向用戶提供資源。在現(xiàn)有技術(shù)中,同一宿主機(jī)上的VM之間具有一定隔離性,而且隨著虛擬化技術(shù)的不同,隔離性能也不一樣,這個(gè)隔離性主要是VM之間的相互影響,如一個(gè)VM上運(yùn)行的應(yīng)用進(jìn)入死循環(huán)狀態(tài),可能會(huì)導(dǎo)致該VM死機(jī),但該VM的死機(jī)不會(huì)影響其他VM的運(yùn)行。本發(fā)明中的宿主機(jī)指運(yùn)行VM的機(jī)器,其可以是物理機(jī),也可以是一個(gè)VM。然而,由于VM共用硬件資源,而硬件資源本身的特性限制會(huì)使得VM之間仍然會(huì)存在硬件資源的競爭,例如硬盤的讀寫,由于物理硬盤的轉(zhuǎn)速、讀寫速度等,多個(gè)虛擬機(jī)共同頻繁讀寫硬盤會(huì)相互影響。當(dāng)同一物理機(jī)上有兩個(gè)或多個(gè)VM,而各VM所運(yùn)行的應(yīng)用可能會(huì)有資源爭奪,就會(huì)使得各個(gè)VM性能無法保證,且物理機(jī)不能發(fā)揮最優(yōu)性能,例如一個(gè)物理機(jī)有2個(gè)VM,而這2個(gè)VM所運(yùn)行的應(yīng)用都是頻繁讀寫硬盤的應(yīng)用,如使用硬盤緩存所處理的數(shù)據(jù)或者硬盤數(shù)據(jù)的拷貝、更改等,此時(shí)這2個(gè)VM上的應(yīng)用會(huì)導(dǎo)致VM之間有硬件資源的使用競爭,會(huì)使得VM所在的物理機(jī)的整體性能下降。由于目前的基礎(chǔ)設(shè)施即服務(wù)(IaaS)的物理資源是多用戶共享,用戶無法知道其所申請到的資源和哪些其他的應(yīng)用共享物理資源,使得用戶無法避免VM間硬件資源競爭情況的出現(xiàn),同時(shí),由于資源管理模塊無法獲知所分配的VM上將要運(yùn)行的應(yīng)用的特征,使得資源管理模塊同樣無法避免上述資源競爭情況的出現(xiàn),也就無法避免競爭導(dǎo)致VM性能的下降。另外,對于硬件資源有同質(zhì)需求的多個(gè)VM(同質(zhì)指VM對硬件資源的需求相同或相似,例如兩個(gè)VM都是頻繁讀寫硬盤),如果部署在同一物理機(jī)上,長期運(yùn)行則會(huì)使得該物理機(jī)的某個(gè)硬件長期處于高負(fù)荷狀態(tài),而其他的硬件則長期處于低負(fù)荷狀態(tài),使得該物理機(jī)的整體性能發(fā)揮不均衡,增加了能耗和硬件損耗。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種資源分配方法,旨在解決由于多個(gè)應(yīng)用程序共用硬件資源產(chǎn)生硬件資源的競爭,導(dǎo)致宿主機(jī)整體性能下降的問題。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種資源分配方法,所述方法包括下述步驟接收資源請求者發(fā)送的資源請求,其中所述資源請求包括資源需求和資源的應(yīng)用特性;根據(jù)所述資源請求和資源應(yīng)用特性分配策略,確定向所述資源請求者分配資源的宿主機(jī);控制所述宿主機(jī)向所述資源請求者分配資源,向所述資源請求者返回資源分配信
肩、O本發(fā)明實(shí)施例的另一目的在于提供一種資源管理平臺,所述資源管理平臺包括資源請求接收單元,用于接收資源請求者發(fā)送的資源請求,其中所述資源請求包括資源需求和資源的應(yīng)用特性;宿主機(jī)確定單元,用于根據(jù)資源請求和資源應(yīng)用特性分配策略以及資源應(yīng)用特性組合策略,確定向資源請求者分配資源的宿主機(jī);以及分配信息返回單元,用于控制所述宿主機(jī)向資源請求者分配資源,向所述資源請求者返回資源分配信息。本發(fā)明實(shí)施例通過接收資源請求者的包括資源需求和資源的應(yīng)用特性的資源請求,根據(jù)該資源請求、預(yù)設(shè)的資源應(yīng)用特性分配策略,確定向資源請求者分配資源的宿主機(jī),控制宿主機(jī)向資源請求者分配資源,向資源請求者返回資源分配信息。本發(fā)明實(shí)施例會(huì)參考資源的應(yīng)用特性以及資源應(yīng)用特性分配策略確定分配資源的宿主機(jī),解決了現(xiàn)有技術(shù)中由于多個(gè)應(yīng)用程序共用硬件資源產(chǎn)生硬件資源的競爭、導(dǎo)致宿主機(jī)以及分配的資源本身性能下降的問題,從而根據(jù)資源請求和資源應(yīng)用特性分配策略進(jìn)行資源的分配,優(yōu)化了資源的分配,有效提高了資源的利用效率,降低了硬件損耗,提高了用戶體驗(yàn)。
圖I是本發(fā)明實(shí)施例一提供的資源分配方法的實(shí)現(xiàn)流程2是本發(fā)明實(shí)施例二提供的資源分配方法的實(shí)現(xiàn)流程3是本發(fā)明實(shí)施例三提供的資源分配方法的實(shí)現(xiàn)流程4是本發(fā)明實(shí)施例五提供的資源管理平臺的結(jié)構(gòu)示意5是本發(fā)明實(shí)施例六提供的資源管理平臺的結(jié)構(gòu)示意6是本發(fā)明實(shí)施例七提供的資源管理平臺的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。以下結(jié)合具體實(shí)施例對本發(fā)明的具體實(shí)現(xiàn)進(jìn)行詳細(xì)描述實(shí)施例一:圖I示出了本發(fā)明實(shí)施例一提供的資源分配方法的實(shí)現(xiàn)流程,詳述如下在步驟SlOl中,接收資源請求者發(fā)送的資源請求,資源請求包括資源需求和資源的應(yīng)用特性。在本發(fā)明實(shí)施例中,可以通過預(yù)設(shè)的接口接收資源請求,從而使該接口可以接收資源的應(yīng)用特性,該預(yù)設(shè)的接口可以為表征狀態(tài)轉(zhuǎn)移(RESTful)接口、網(wǎng)絡(luò)服務(wù)(WebService)接口或遠(yuǎn)程調(diào)用接口,資源主要是指具有中央處理器(CPU)、內(nèi)存、硬盤、網(wǎng)絡(luò)等的虛擬機(jī)(VM),或者具有計(jì)算能力的資源,如運(yùn)行于某一操作系統(tǒng)上的Java虛擬機(jī)(JVM)或計(jì)算代理。該資源請求是由資源請求者發(fā)起,在具體實(shí)施過程中,該資源請求者可以是向資源管理平臺請求資源的任何用戶,當(dāng)然該資源請求者也包括程序,如分布式計(jì)算系統(tǒng)的調(diào)度模塊。在本發(fā)明實(shí)施例中,資源請求中包括的資源需求是指用戶請求的資源性能參數(shù)要求,即所提供資源需要滿足的一些能力要求,本發(fā)明中稱之為資源規(guī)格,例如,當(dāng)請求的資源為虛擬機(jī)時(shí),資源規(guī)格可以是資源所在宿主機(jī)位置、虛擬機(jī)的CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)、操作系統(tǒng)或應(yīng)用程序之一或其任意組合,其中,資源所在宿主機(jī)位置可以是指定宿主機(jī)應(yīng)該在哪個(gè)位置,或者對位置有哪些要求,如所申請的多個(gè)資源位于同一個(gè)宿主機(jī)等,具體示例如表I所示。表I :
權(quán)利要求
1.一種資源分配方法,其特征在于,所述方法包括下述步驟接收資源請求者發(fā)送的資源請求,其中所述資源請求包括資源需求和資源的應(yīng)用特根據(jù)所述資源請求和資源應(yīng)用特性分配策略,確定向所述資源請求者分配資源的宿主機(jī);控制所述分配資源的宿主機(jī)向所述資源請求者分配資源,向所述資源請求者返回資源分配信息。
2.如權(quán)利要求I所述的方法,其特征在于,在根據(jù)所述資源請求和資源應(yīng)用特性分配策略,確定向所述資源請求者分配資源的宿主機(jī)的步驟之前,所述方法還包括步驟預(yù)先配置所述資源應(yīng)用特性分配策略,所述資源應(yīng)用特性分配策略包括基于區(qū)域分配的資源應(yīng)用特性分配策略,基于宿主機(jī)分配的資源應(yīng)用特性分配策略,以及基于資源應(yīng)用特性組合策略的資源應(yīng)用特性分配策略之一或其任意組合。
3.如權(quán)利要求2所述的方法,其特征在于,根據(jù)所述資源請求和資源應(yīng)用特性分配策略,確定向所述資源請求者分配資源的宿主機(jī)的步驟包括根據(jù)所述資源請求中的資源需求、資源的應(yīng)用特性以及配置的資源應(yīng)用特性分配策略,在資源池中確定一滿足所述資源需求的空閑資源;當(dāng)存在滿足所述資源需求的空閑資源時(shí),確定所述空閑資源所在宿主機(jī)是否為分配資源的宿主機(jī)。
4.如權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述資源請求中的資源需求、資源的應(yīng)用特性以及配置的資源應(yīng)用特性分配策略,在資源池中確定一滿足所述資源需求的空閑資源的步驟包括當(dāng)所述資源請求中的資源需求存在區(qū)域要求,或資源提供區(qū)域在所述資源池中的資源權(quán)限控制策略中被設(shè)定,或者分配區(qū)域被請求的資源的應(yīng)用特性以及所述資源應(yīng)用特性分配策略限定時(shí),根據(jù)所述資源請求中的資源需求和資源的應(yīng)用特性定位到對應(yīng)的區(qū)域并確定滿足所述資源需求的空閑資源,否則,定位到所有資源池確定滿足所述資源需求的空閑資源。
5.如權(quán)利要求3所述的方法,其特征在于,當(dāng)存在滿足所述資源需求的空閑資源時(shí),確定所述空閑資源所在宿主機(jī)是否為分配資源的宿主機(jī)的步驟包括步驟若所述資源應(yīng)用特性分配策略中未定義資源應(yīng)用特性組合策略,則直接確定所述空閑資源所在宿主機(jī)為分配資源的宿主機(jī);若所述資源應(yīng)用特性分配策略中定義了資源應(yīng)用特性組合策略,則根據(jù)所述空閑資源所在宿主機(jī)上的已分配資源的應(yīng)用特性、所述資源請求中的資源的應(yīng)用特性、以及所述資源應(yīng)用特性組合策略確定所述已分配的資源的應(yīng)用特性和所述資源請求中的資源的應(yīng)用特性可否共存,當(dāng)可共存時(shí)則確定所述空閑資源所在宿主機(jī)為分配資源的宿主機(jī)。
6.如權(quán)利要求5所述的方法,其特征在于,所述當(dāng)可共存時(shí)則確定所述空閑資源所在宿主機(jī)為分配資源的宿主機(jī)的步驟包括根據(jù)所述空閑資源所在宿主機(jī)上的已分配資源的應(yīng)用特性、資源請求中的資源的應(yīng)用特性以及所述資源應(yīng)用特性組合策略,按照資源共存度從高到低的順序選擇宿主機(jī)上的資源分配給資源請求者。
7.如權(quán)利要求I所述的方法,其特征在于,所述資源的資源需求包括資源所在宿主機(jī)位置、資源的CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)、操作系統(tǒng)以及應(yīng)用程序之一或其任意組合的資源規(guī)格;所述資源的應(yīng)用特性為資源上所運(yùn)行的應(yīng)用的類型,或者指資源請求者將對所要申請的資源的使用情況,所述使用情況包括資源的CPU使用率、內(nèi)存使用率、磁盤讀寫、網(wǎng)絡(luò)上下行、GPU使用率之一或其任意組合。
8.如權(quán)利要求I所述的方法,其特征在于,控制所述宿主機(jī)分配資源,并返回資源分配信息的步驟之后,所述方法還包括步驟保存所述分配的資源的相關(guān)信息,所述相關(guān)信息包括資源的應(yīng)用特性。
9.如權(quán)利要求I所述的方法,其特征在于,控制所述分配資源的宿主機(jī)向資源請求者分配資源,向資源請求者返回資源分配信息的步驟之后,所述方法還包括根據(jù)預(yù)設(shè)的策略收集資源的使用信息,根據(jù)資源的使用信息計(jì)算所述資源的應(yīng)用特性。
10.如權(quán)利要求9所述的方法,其特征在于,所述方法還包括步驟當(dāng)計(jì)算得到的應(yīng)用特性與資源分配請求中資源的應(yīng)用特性不同,或當(dāng)前的資源池存在更優(yōu)的空閑資源時(shí),根據(jù)預(yù)設(shè)的資源調(diào)整策略進(jìn)行資源的調(diào)整。
11.一種資源管理平臺,其特征在于,所述資源管理平臺包括資源請求接收單元,用于接收資源請求者發(fā)送的資源請求,其中所述資源請求包括資源需求和資源的應(yīng)用特性;宿主機(jī)確定單元,用于根據(jù)資源請求和資源應(yīng)用特性分配策略,確定向資源請求者分配資源的宿主機(jī);以及分配信息返回單元,用于控制所述分配資源的宿主機(jī)向資源請求者分配資源,向所述資源請求者返回資源分配信息。
12.如權(quán)利要求11所述的資源管理平臺,其特征在于,所述資源管理平臺還包括策略配置單元,用于預(yù)先配置資源應(yīng)用特性分配策略,所述資源應(yīng)用特性分配策略包括基于區(qū)域分配的資源應(yīng)用特性分配策略,基于宿主機(jī)分配的資源應(yīng)用特性分配策略,以及基于資源應(yīng)用特性組合策略的資源應(yīng)用特性分配策略之一或其任意組合。
13.如權(quán)利要求11所述的資源管理平臺,其特征在于,所述宿主機(jī)確定單元包括空閑資源確定子單元,用于根據(jù)所述資源請求中的資源需求、資源的應(yīng)用特性以及配置的資源應(yīng)用特性分配策略,在資源池中確定一滿足所述資源需求的空閑資源;以及宿主機(jī)確定子單元,用于當(dāng)存在滿足用戶資源需求的空閑資源時(shí),根據(jù)資源應(yīng)用特性組合策略,確定所述空閑資源所在宿主機(jī)是否為分配資源的宿主機(jī)。
14.如權(quán)利要求11所述的資源管理平臺,其特征在于,所述資源的資源需求包括資源所在宿主機(jī)位置、資源的CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)、操作系統(tǒng)以及應(yīng)用程序之一或其任意組合的資源規(guī)格;所述資源的應(yīng)用特性為資源上所運(yùn)行的應(yīng)用的類型,或者指資源請求者將對所要申請的資源的使用情況,所述使用情況包括資源的CPU使用率、內(nèi)存使用率、磁盤讀寫、網(wǎng)絡(luò)上下行、GPU使用率之一或其任意組合。
15.如權(quán)利要求11所述的資源管理平臺,其特征在于,所述資源管理平臺還包括信息保存單元,用于保存所述分配的資源的相關(guān)信息,所述相關(guān)信息包括資源的應(yīng)用特性。
16.如權(quán)利要求11所述的資源管理平臺,其特征在于,所述資源管理平臺還包括應(yīng)用特性計(jì)算單元,用于根據(jù)預(yù)設(shè)的策略收集資源的使用信息,根據(jù)資源的使用信息計(jì)算所述資源的應(yīng)用特性。
17.如權(quán)利要求11所述的資源管理平臺,其特征在于,所述資源調(diào)整單元包括資源調(diào)整單元,用于當(dāng)計(jì)算得到的應(yīng)用特性與資源分配請求中資源的應(yīng)用特性不同,或當(dāng)前的資源池存在更優(yōu)的空閑資源時(shí),根據(jù)預(yù)設(shè)的資源調(diào)整策略進(jìn)行資源的調(diào)整。
全文摘要
本發(fā)明適用于計(jì)算機(jī)技術(shù)領(lǐng)域,提供了一種資源分配方法及資源管理平臺,所述方法包括下述步驟接收資源請求者發(fā)送的資源請求,其中所述資源請求包括資源需求和資源的應(yīng)用特性;根據(jù)所述資源請求和資源應(yīng)用特性分配策略,確定向所述資源請求者分配資源的宿主機(jī);控制所述宿主機(jī)向所述資源請求者分配資源,向資源請求者返回資源分配信息,從而解決了現(xiàn)有技術(shù)中由于多個(gè)應(yīng)用程序共用硬件資源產(chǎn)生硬件資源的競爭,導(dǎo)致宿主機(jī)整體性能下降的問題,有效提高了服務(wù)器資源的利用效率、降低了硬件的損耗,提高了用戶體驗(yàn)。
文檔編號H04W72/04GK102958166SQ20111025103
公開日2013年3月6日 申請日期2011年8月29日 優(yōu)先權(quán)日2011年8月29日
發(fā)明者柴曉前 申請人:華為技術(shù)有限公司