專利名稱:虛擬機熱遷移和部署的方法、服務(wù)器及集群系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實施例涉及通信領(lǐng)域,尤其涉及一種虛擬機熱遷移和部署的方法、服務(wù)器及集群系統(tǒng)。
背景技術(shù):
虛擬化集群是將多臺物理機進(jìn)行統(tǒng)一管理,其通過虛擬化技術(shù)將物理資源抽象為存儲、計算、網(wǎng)絡(luò)等各種資源組成的資源池,虛擬機按需申請資源,被部署到集群系統(tǒng)的物理機中。虛擬機熱遷移技術(shù)是指通過熱遷移將虛擬機從一臺物理機中轉(zhuǎn)移到另一臺物理機中,且保證不中斷業(yè)務(wù)的技木。
現(xiàn)有技術(shù)中通過對集群內(nèi)的虛擬機進(jìn)行實時的熱遷移,可以調(diào)整大量的虛擬機在物理機上的部署情況,從而實現(xiàn)集群范圍內(nèi)的動態(tài)負(fù)載均衡,提高各物理機的資源使用效率。但是,虛擬機熱遷移的執(zhí)行會給集群帶來額外負(fù)荷(網(wǎng)絡(luò)、內(nèi)存、處理器等負(fù)荷)。例如,虛擬機的熱遷移可能要物理機之間進(jìn)行幾十G甚至上百G虛擬機鏡像的遷移,由此導(dǎo)致虛擬機熱遷移對集群內(nèi)網(wǎng)絡(luò)負(fù)荷的影響非常大。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種虛擬機熱遷移和部署的方法、服務(wù)器及集群系統(tǒng),以降低虛擬機熱遷移對集群內(nèi)網(wǎng)絡(luò)負(fù)荷的影響。本發(fā)明實施例提供的虛擬機熱遷移的方法,包括獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,所述第一物理機組內(nèi)的各個物理機共用同一個接入交換機;根據(jù)第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的源物理機和目的物理機;所述源物理機為所述負(fù)載信息超過第一閾值的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機;所述第一閾值大于所述第二閾值;根據(jù)第二動態(tài)資源調(diào)度策略,向所述源物理機下發(fā)遷移指令,所述遷移指令包括待遷移虛擬機標(biāo)識和所述目的物理機的標(biāo)識,用以使所述源物理機根據(jù)所述遷移指令,將所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得所述目的物理機在接收所述源物理機上虛擬機之后的負(fù)載信息小于所述第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于所述第一閾值。本發(fā)明實施例提供的虛擬機部署的方法,包括獲取共用同一個匯聚交換機的所有物理機組內(nèi)各物理機的負(fù)載信息;根據(jù)第一動態(tài)資源調(diào)度策略和所述物理機的負(fù)載信息,確定所有物理機組內(nèi)的目的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機;根據(jù)部署策略,向所述目的物理機下發(fā)部署一個或多個虛擬機的部署指令,用以使所述目的物理機按照所述部署指令部署虛擬機,以及使部署有虛擬機的所述目的物理機的負(fù)載信息小于第一閾值,所述第一閾值大于所述第二閾值。本發(fā)明實施例提供的服務(wù)器,包括
獲取單元,用于獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,所述第一物理機組內(nèi)的各個物理機共用同一個接入交換機;確定單元,用于根據(jù)第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的源物理機和目的物理機;所述源物理機為所述負(fù)載信息超過第一閾值的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機;所述第一閾值大于所述第二閾值;發(fā)送單元,用于根據(jù)第二動態(tài)資源調(diào)度策略,向所述源物理機下發(fā)遷移指令,所述遷移指令包括待遷移虛擬機標(biāo)識和所述目的物理機的標(biāo)識,用以使所述源物理機根據(jù)所述遷移指令,將所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得所述目的物理機在接收所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于所述第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于所述第一閾值。本發(fā)明實施例提供的服務(wù)器,包括獲取單元,用于獲取共用同一個匯聚交換機的所有物理機組內(nèi)各物理機的負(fù)載信息;確定單元,用于根據(jù)第一動態(tài)資源調(diào)度策略和所述物理機的負(fù)載信息,確定所有物理機組內(nèi)的目的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機;部署指令發(fā)送單元,用于根據(jù)部署策略,向所述目的物理機下發(fā)部署一個或多個虛擬機的部署指令,用以使所述目的物理機按照所述部署指令部署虛擬機,以及使部署有虛擬機的所述目的物理機的負(fù)載信息小于第一閾值,所述第一閾值大于所述第二閾值。本發(fā)明實施例提供的集群系統(tǒng),包括多個物理機組,其特征在于,還包括如上所述的服務(wù)器,所述服務(wù)器與所述多個物理機組中的每一物理機具有通信連接。本發(fā)明實施例提供的集群系統(tǒng),包括多個物理機組,其特征在于,還包括如上所述的服務(wù)器,所述服務(wù)器與所述多個物理機組中的每一物理機具有通信連接。由上述技術(shù)方案可知,本發(fā)明實施例提供的虛擬機熱遷移和部署的方法、服務(wù)器及集群系統(tǒng),首先根據(jù)第一動態(tài)資源調(diào)度策略和獲取到的同一個接入交換機下的多個物理機的負(fù)載信息,確定該物理機組內(nèi)的源物理機和目的物理機,進(jìn)而根據(jù)第二動態(tài)資源調(diào)度策略向源物理機下發(fā)遷移指令,使源物源物理機將內(nèi)部與遷移指令中的待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到目的物理機中,使得遷移網(wǎng)絡(luò)流量經(jīng)過同一個接入交換機,一定程度上避免了現(xiàn)有技術(shù)中集群內(nèi)的虛擬機可能跨多個交換機進(jìn)行遷移的情況,從而縮短了數(shù)據(jù)傳輸?shù)逆溌烽L度,提高了遷移速率,同時減少遷移流量,進(jìn)而降低整個集群系統(tǒng)中虛擬機熱遷移對網(wǎng)絡(luò)負(fù)荷的影響。
圖I為本發(fā)明實施例所應(yīng)用的集群系統(tǒng)的結(jié)構(gòu)示意圖;圖2A為本發(fā)明一實施例提供的集群內(nèi)一物理機組的示意圖;圖2B為本發(fā)明一實施例提供的虛擬機熱遷移的方法的流程示意圖3A為本發(fā)明一實施例提供的集群系統(tǒng)的局部結(jié)構(gòu)示意圖;圖3B為本發(fā)明一實施例提供的虛擬機熱遷移的方法的流程示意圖;圖4A為本發(fā)明一實施例提供的集群內(nèi)一物理機組的示意圖;圖4B為本發(fā)明一實施例提供的虛擬機熱遷移的方法的流程示意圖;圖5A為本發(fā)明一實施例提供的集群系統(tǒng)的局部結(jié)構(gòu)示意圖;圖5B為本發(fā)明一實施例提供的虛擬機熱遷移的方法的流程示意圖;
圖6A為本發(fā)明一實施例提供的集群系統(tǒng)的局部結(jié)構(gòu)示意圖;圖6B為本發(fā)明一實施例提供的虛擬部署的方法的流程示意圖;圖7為本發(fā)明另一實施例提供的服務(wù)器的結(jié)構(gòu)示意圖;圖8為本發(fā)明另一實施例提供的服務(wù)器的結(jié)構(gòu)示意圖。
具體實施例方式當(dāng)前,服務(wù)器虛擬化技術(shù)是云計算中基于基礎(chǔ)設(shè)施層的關(guān)鍵技術(shù)。通過對物理服務(wù)器進(jìn)行虛擬化,實現(xiàn)在單臺物理機上部署多臺虛擬機(虛擬操作系統(tǒng)),能夠提高物理機的資源利用率,降低使用成本。集群管理虛擬機最重要的一項特性是虛擬機熱遷移,通過實時的熱遷移,可以調(diào)整大量虛擬機在物理機上的部署情況,從而實現(xiàn)均衡負(fù)載、提高各物理機的資源使用效率,保證各個物理機都承擔(dān)適當(dāng)?shù)呢?fù)載。如圖I所示,圖I示出了本發(fā)明實施例所應(yīng)用的集群系統(tǒng)的結(jié)構(gòu)示意圖;圖中所示的集群是將多臺物理機進(jìn)行統(tǒng)一管理,每一物理機內(nèi)部可設(shè)置有一個或多個虛擬機。當(dāng)然,某些物理機中也可不部署任何虛擬機。在實際應(yīng)用中,交換機(如圖I中的接入交換機、匯聚交換機)中存儲有可復(fù)制虛擬機的鏡像文件,連接該交換機的任一物理機均可查看并使用交換機中的鏡像文件。通常,相關(guān)操作人員通過集群系統(tǒng)中的管理服務(wù)器向一個或多個物理機下發(fā)各種虛擬機的部署指令或遷移指令,以使相對應(yīng)的物理機根據(jù)部署指令執(zhí)行虛擬機的部署,或者,物理機根據(jù)遷移指令執(zhí)行虛擬機的遷移。當(dāng)然,為方便集群系統(tǒng)的管理,集群系統(tǒng)中的物理機被分為多個物理機組(如圖I
中的第一物理機組、第二物理機組........第N物理機組等),這里的物理機組是按照連入
同一個接入交換機的物理機進(jìn)行分組,換言之,每個物理機組內(nèi)的各個物理機共用同一個接入交換機,集群內(nèi)相鄰的物理機組之間可共用同一個匯聚交換機。虛擬機熱遷移包括虛擬處理器和虛擬內(nèi)存的遷移、或者虛擬存儲的遷移。由此,虛擬機的熱遷移是指虛擬機的計算資源和存儲資源同時從一個物理機遷移到另一個物理機。由于現(xiàn)有技術(shù)中相關(guān)操作人員下發(fā)遷移指令,使某一物理機按照遷移指令將內(nèi)部的虛擬機遷移至另一物理機內(nèi)部的熱遷移流程不考慮物理機的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),導(dǎo)致集群內(nèi)的虛擬機可能跨多個交換機進(jìn)行遷移,進(jìn)而對所經(jīng)過的網(wǎng)絡(luò)鏈路造成較大影響,也因網(wǎng)絡(luò)鏈路過長而對虛擬機遷移速率造成影響,同時為集群帶來過度網(wǎng)絡(luò)負(fù)荷。需要說明的是,本發(fā)明實施例中的管理服務(wù)器定時監(jiān)控各個物理機負(fù)載信息,以及物理機內(nèi)虛擬機的資源利用率。以下所述的各實施例中的步驟的執(zhí)行主體均為管理服務(wù)器。
圖2A示出了本發(fā)明ー實施例提供的集群內(nèi)一物理機組的示意圖,圖2B示出了本發(fā)明ー實施例提供的虛擬機熱遷移的方法的流程示意圖,結(jié)合圖2A和圖2B所示,本實施例中的虛擬機熱遷移的方法如下文所述。需要說明的是,本發(fā)明實施例提供的虛擬機熱遷移的方法的執(zhí)行主體可以是服務(wù)器,例如圖I中所示的管理服務(wù)器。101、獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,第一物理機組內(nèi)的各個物理機共用同一個接入交換機。需要說明的是,這里的第一物理機組是泛指集群系統(tǒng)中的同一物理機組。在本實施例中,物理機的負(fù)載信息可包括虛擬機的源利用率和物理機資源利用率,其中該資源包括中央處理器、內(nèi)存、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率等。如圖2A所示,第 一物理機組10包括物理機12a、物理機12b、物理機12c,其共用同一個接入交換機11。圖2A所示的第一物理機組10為集群內(nèi)通用的物理機組,本實施例僅為舉例說明。102、根據(jù)第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的源物理機和目的物理機;源物理機為負(fù)載信息超過第一閾值的物理機,目的物理機為負(fù)載信息小于第二閾值的物理機。在本實施例中,步驟102的一種實現(xiàn)方式如下確定第一物理機組內(nèi)的源物理機和目的物理機的依據(jù)條件可以包括動態(tài)資源調(diào)度策略、第一物理機組內(nèi)各個物理機的負(fù)載信息,其中,該負(fù)載信息包括第一物理機組內(nèi)各個物理機資源利用率和虛擬機資源利用率,另外,該資源包含處理器、內(nèi)存、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率等,應(yīng)當(dāng)理解的是該負(fù)載信息可以按照固定間隔收集;該第一動態(tài)資源調(diào)度策略可以具體包括確定源物理機的策略和確定目的物理機的策略,舉例來說,資源使用過低的物理機稱之為目的物理機(例如負(fù)載信息小于第二閾值的物理機可以稱之為目的物理機),資源使用過高的物理機稱之為源物理機(例如負(fù)載信息大于第一閾值的物理機可以稱之為源物理機)。相應(yīng)的,本發(fā)明實施例的方法還可以包括根據(jù)收集到的集群系統(tǒng)中每個物理機組中各個物理機的負(fù)載信息,計算集群系統(tǒng)中各個物理機組之間的資源分布情況,從而可以統(tǒng)計出各個物理機組內(nèi)負(fù)載信息過高的物理機,負(fù)載信息較低的物理機,也能統(tǒng)計出各個物理組間負(fù)載信息的差距。需要說明的是,第一閾值遠(yuǎn)遠(yuǎn)大于第二閾值。第一閾值、第二閾值可以是預(yù)設(shè)的,也可以是動態(tài)獲取用戶通過人機交互接ロ動態(tài)設(shè)置的數(shù)值,即這里的第一閾值和第二閾值可以是根據(jù)實際應(yīng)用情況靈活設(shè)置,在此不對其進(jìn)行限定。舉例來說,在負(fù)載信息為處理器的使用率時,第一閾值可為80%,第二閾值可為30%,進(jìn)而第一物理機組內(nèi)任一物理機的處理器使用率大于80%的物理機均為源物理機;第一物理機組內(nèi)任一物理機的處理器使用率小于30%的物理機均為源物理機。如圖2A所示,第一物理機組10內(nèi)的物理機12a的處理器使用率為100%,物理機12b的處理器使用率為20%、物理機12c的處理器使用率為40%。第一物理機組10內(nèi)的物理機12a為源物理機、物理機12b為目的物理機。圖中所示的任一虛擬機相對于該虛擬機所在的物理機來說,該物理機的處理器使用率為20%。103、根據(jù)第二動態(tài)資源調(diào)度策略,向源物理機下發(fā)遷移指令,遷移指令包括待遷移虛擬機標(biāo)識和該目的物理機的標(biāo)識,用以使源物理機根據(jù)所述遷移指令,將源物理機上與該虛擬交換機標(biāo)識對應(yīng)的虛擬機遷移到與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得目的物理機在接收源物理機上虛擬機之后的負(fù)載信息小于第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于第一閾值。舉例來說,遷移指令中目的物理機的標(biāo)識為該物理機的代碼/編號等。通常,通過每一物理機的代碼能夠識別出該物理機所在的物理機組、連接的匯聚交換機、接入交換機等內(nèi)容。還需要說明的是,該第二動態(tài)資源調(diào)度策略可以包括優(yōu)先在同一物理機組內(nèi)進(jìn)行虛擬機遷移的策略,即當(dāng)該物理機組內(nèi)有目的物理機時,可以根據(jù)該第二動態(tài)資源調(diào)度策略,向該同一物理機組內(nèi)的源物理機發(fā)送遷移指令,以觸發(fā)該源物理機根據(jù)該遷移指令,將虛擬機遷移到同一物理機組內(nèi)的目的物理機上。值得注意的是,該第一動態(tài)資源調(diào)度策略·和該第二動態(tài)資源調(diào)度策略可以存儲在同一個動態(tài)資源調(diào)度策略集中。另外,當(dāng)該動態(tài)資源調(diào)度策略集還包括保證負(fù)載均衡的策略時,可以使得源物理機將部分虛擬機遷移給目的物理機,即遷移指令中包括源物理機上的部分虛擬機的標(biāo)識,以使得同一機組內(nèi)各個物理機之間的負(fù)載信息均衡?;蛘撸?dāng)該動態(tài)資源調(diào)度策略集還包括節(jié)能減排策略時,可以使得源物理機將全部虛擬機遷移給目的物理機,即遷移指令中包括源物理機上的所有虛擬機的標(biāo)識,以實現(xiàn)節(jié)能的目的。結(jié)合圖2A所示,遷移指令為將第一物理機組10內(nèi)的物理機12a中的兩個虛擬機13遷移至第一物理機組10內(nèi)的物理機12b中,用以使第一物理機組10內(nèi)的各物理機的負(fù)
載均衡。進(jìn)一步地,若第一物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上,則確定負(fù)載信息最小的物理機作為接收所述源物理機上虛擬機的第一個目的物理機。當(dāng)然,若第一物理機組內(nèi)的源物理機的數(shù)量為兩個或兩個以上,服務(wù)器可以向不同的源物理機下發(fā)遷移指令,以使每一接收虛擬機的目的物理機的負(fù)載信息小于所述第一閾值。當(dāng)然,可以使不同源物理機上虛擬機遷移至同一目的物理機上,或者不同源物理機上虛擬機遷移至不同目的物理機,以實現(xiàn)物理機組內(nèi)的所有物理機的負(fù)載信息不大于第一閾值,實現(xiàn)物理機組內(nèi)的負(fù)載均衡。由上述實施例可知,本實施例中的虛擬機熱遷移的方法,首先根據(jù)第一動態(tài)資源調(diào)度策略和獲取到的同一個接入交換機下的多個物理機的負(fù)載信息,確定該物理機組內(nèi)的源物理機和目的物理機,進(jìn)而根據(jù)第二動態(tài)資源調(diào)度策略向源物理機下發(fā)遷移指令,使源物源物理機將內(nèi)部與遷移指令中虛擬機標(biāo)識對應(yīng)的虛擬機遷移到目的物理機中,使得遷移網(wǎng)絡(luò)流量經(jīng)過同一個接入交換機,一定程度上避免了現(xiàn)有技術(shù)中集群內(nèi)的虛擬機可能跨多個交換機進(jìn)行遷移的情況,從而縮短了數(shù)據(jù)傳輸?shù)逆溌烽L度,提高了遷移速率,同時減少遷移流量,進(jìn)而降低整個集群系統(tǒng)中虛擬機熱遷移對網(wǎng)絡(luò)負(fù)荷的影響。圖3A示出了本發(fā)明另一實施例提供的集群系統(tǒng)的局部結(jié)構(gòu)示意圖,圖3B示出了本發(fā)明另一實施例提供的虛擬機熱遷移的方法的流程示意圖,結(jié)合圖3A和圖3B所示,本實施例中的虛擬機熱遷移的方法如下文所述。201、獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,第一物理機組內(nèi)的各個物理機共用同一個接入交換機。如圖3A中的第一物理機組10,其內(nèi)設(shè)有物理機12a、物理機12b、物理機12c,其共用同一個接入交換機11。202、若根據(jù)該第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的所有物理機均為源物理機;則獲取與第一物理機組共用同一個匯聚交換機的第二物理機組內(nèi)各個物理機的負(fù)載信息。如圖3A所示的與第一物理機組10共用同一個匯聚交換機21的第二物理機組20,該第二物理機組20內(nèi)設(shè)有物理機22a、物理機22b、物理機22c,其共用同一個接入交換機。舉例來說,在負(fù)載信息為處理器的使用率時,第一閾值為80%,第二閾值為30%。
圖中所示的任一虛擬機相對于物理機來說,該物理機的處理器使用率為20 %,第一物理機組10內(nèi)任一物理機(物理機12a、物理機12b、物理機12c)的處理器使用率均大于80%,其第一物理機組中的各物理機均為源物理機;第二物理機組20內(nèi)的物理機22a、物理機22b的處理器使用率均小于30 %。203、根據(jù)該第一動態(tài)資源調(diào)度策略和第二物理機組內(nèi)各個物理機的負(fù)載信息,確定第二物理機組內(nèi)的目的物理機。該第二物理機組內(nèi)的物理機22a、物理機22b的目的物理機。204、根據(jù)第三動態(tài)資源調(diào)度策略,向第一物理機組內(nèi)的源物理機下發(fā)遷移指令,遷移指令包括待遷移虛擬機標(biāo)識和第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使第一物理機組內(nèi)的源物理機根據(jù)所述遷移指令,將源物理機上與該待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移至所述第二物理機組內(nèi)的與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得第二物理機組內(nèi)的目的物理機在接收第一物理機組內(nèi)源物理機上與該待遷移虛擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于第一閾值。在本實施例中,該第三動態(tài)資源調(diào)度策略可以包括若同一物理機組內(nèi)無法進(jìn)行虛擬機遷移時,優(yōu)先與同一匯聚交換機下的共用另ー個交換機的物理機組內(nèi)的目的物理機進(jìn)行虛擬機遷移的策略,即當(dāng)該第一物理機組內(nèi)沒有目的物理機時,可以根據(jù)該第三動態(tài)資源調(diào)度策略,向第一物理機組內(nèi)的源物理機發(fā)送遷移指令,以觸發(fā)源物理機根據(jù)該遷移指令,將虛擬機遷移到向同一匯聚交換機下的共用另ー個交換機的物理機組內(nèi)的目的物理機上,值得注意的是,該第一動態(tài)資源調(diào)度策略、第二動態(tài)資源調(diào)度策略和第三動態(tài)資源調(diào)度策略可以存儲在同一個動態(tài)資源調(diào)度策略集中。結(jié)合圖3A來說,遷移指令為將第一物理機組中物理機12a中的兩個虛擬機13遷移至第二物理機組20內(nèi)的物理機22a中;和/或,遷移指令為將第一物理機組中物理機12b中的兩個虛擬機13遷移至第二物理機組20內(nèi)的物理機22b中。也就是說,集群系統(tǒng)中的服務(wù)器可以向物理機12a下發(fā)第一遷移指令,也可以同時向物理機12b下發(fā)第二遷移指令;該第一遷移指令、第二遷移指令中的源物理機不同,但是目的物理機可以相同也可以不同,其根據(jù)實際的第二物理機組內(nèi)各個物理機的負(fù)載信息配置。從圖3A中可以看出,若將第一物理機組中物理機12a、物理機12b中各兩個虛擬機13遷移至第二物理機組20內(nèi)的物理機22a中,則導(dǎo)致第二物理機組20內(nèi)物理機22a的負(fù)載信息不小于第一閾值80%,故,該第二物理機組20內(nèi)的物理機22a只能接收兩個虛擬機,以保證第二物理機組20內(nèi)的物理機22a的負(fù)載信息小于第一閾值。當(dāng)然,在實際應(yīng)用中,若第二物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上,則確定第二物理機組內(nèi)負(fù)載信息最小的物理機作為接收第一物理機組中的源物理機上虛擬機的第一個目的物理機。由上述實施例可知,本實施例中的虛擬機熱遷移的方法,首先根據(jù)動態(tài)資源調(diào)度策略和獲取到的同一個接入交換機下的多個物理機的負(fù)載信息,確定該物理機組內(nèi)的物理機均為源物理機時,獲取共用同一個匯聚交換機的第二物理機組內(nèi)物理機的負(fù)載信息,進(jìn)而服務(wù)器向源物理機下發(fā)遷移指令,以使源物理機根據(jù)遷移指令將源物理機上與該遷移指令中待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到第二物理機組中的目的物理機中,使得遷移網(wǎng)絡(luò)流量只經(jīng)過兩個接入交換機和一個匯聚交換機,縮短了數(shù)據(jù)傳輸?shù)逆溌烽L度,提高了遷移速率,同時減少遷移流量,進(jìn)而降低整個集群系統(tǒng)中虛擬機熱遷移對網(wǎng)絡(luò)負(fù)荷的影響。
從上述實施例可以獲知,優(yōu)先在一個物理機組內(nèi)調(diào)整各物理機的負(fù)載信息,若一個物理機組內(nèi)各物理機的負(fù)載信息均達(dá)到第一閾值,可在共用一個匯聚交換機的各物理機組之間調(diào)整物理機的負(fù)載,由此,可使虛擬機的遷移過程中能夠有效減少網(wǎng)絡(luò)負(fù)荷,同時提高了遷移速率。圖4A示出了本發(fā)明另一實施例提供的物理機組的示意圖,圖4B示出了本發(fā)明另一實施例提供的虛擬機熱遷移的方法的流程示意圖,結(jié)合圖4A和圖4B所示,本實施例中的虛擬機熱遷移的方法如下文所述。301、獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,第一物理機組內(nèi)的各個物理機共用同一個接入交換機。如圖4A中的第一物理機組10,其內(nèi)設(shè)有物理機12a、物理機12b、物理機12c,其共用同一個接入交換機11。舉例來說,物理機的負(fù)載信息可包括虛擬機的源利用率和物理機資源利用率,其中該資源包括中央處理器率、內(nèi)存、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率等。302、若根據(jù)第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的所有物理機均為目的物理機;則按照目的物理機的負(fù)載信息將目的物理機進(jìn)行升序排序,所述排在第一位的目的物理機為負(fù)載信息最小的目的物理機。舉例來說,在負(fù)載信息為處理器的使用率時,第一閾值為80%,第二閾值為50%。如圖4A所示,第一物理機組10內(nèi)每個物理機上的虛擬機總數(shù)為5個,第一物理機組10內(nèi)任一物理機(物理機12a、物理機12b、物理機12c)的處理器使用率均小于50%,其第一物理機組中的各物理機均為目的物理機。圖中所示的任一虛擬機相對于該虛擬機所在的物理機來說,該物理機的處理器使用率為20%。303、根據(jù)節(jié)能減排策略,向排在前N位的目的物理機下發(fā)遷移指令,遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使排在前N位的目的物理機根據(jù)遷移指令,將排在前N位的目的物理機中所有的虛擬機遷移至第一物理機組內(nèi)的與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于第一閾值。本實施例中,N取大于等于I的整數(shù),N小于所述第一物理機組內(nèi)的目的物理機的總數(shù)。當(dāng)然,在其他實施例中,步驟302還可以是若根據(jù)第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的所有物理機均為目的物理機,按照目的物理機的負(fù)載信息將所述目的物理機進(jìn)行降序排序,所述排在末位的目的物理機為負(fù)載信息最小的目的物理機;相應(yīng)地,步驟303則為根據(jù)該節(jié)能減排策略,向所述排在后N位的目的物理機下發(fā)遷移指令,所述遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使所述排在后N位的目的物理機根據(jù)所述遷移指令,將所述排在后N位的目的物理機中所有虛擬機遷移至第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值。如圖4A所示,遷移指令為將排在第一位的目的物理機即物理機12c中所有的虛擬機遷移至第一物理機組10內(nèi)的物理機12a或物理機12b中。
當(dāng)集群系統(tǒng)中存在有負(fù)載信息很低的物理機時,考慮將負(fù)載信息很低的物理機上的虛擬機整合遷移,進(jìn)而可將空閑的物理機下電,以達(dá)到節(jié)能目的;當(dāng)集群整體負(fù)載重新上升時,再響應(yīng)的增加上電的物理機以及對其部署新的虛擬機。由上實施例可知,本實施例中的虛擬機熱遷移的方法,側(cè)重于描述在ー個物理機組內(nèi)的物理機均為目的物理機(即負(fù)載信息較低的物理機)時,可以使第一物理機組內(nèi)的物理機12c整合下電(例如將物理機12c上的虛擬機遷移到同一個物理機組內(nèi)的其他物理機上,這樣物理機12c空閑了,進(jìn)而下電,能夠有效利用集群內(nèi)的資源,合理部署虛擬機,節(jié)省集群管理系統(tǒng)的成本,實現(xiàn)了節(jié)能減排的效果。圖5A示出了本發(fā)明另一實施例提供的集群系統(tǒng)的局部結(jié)構(gòu)示意圖,圖5B示出了本發(fā)明另一實施例提供的虛擬機熱遷移的方法的流程示意圖,結(jié)合圖5A和圖5B所示,本實施例中的虛擬機熱遷移的方法如下文所述。401、獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,第一物理機組內(nèi)的各個物理機共用同一個接入交換機。如圖5A中的第一物理機組10,其內(nèi)設(shè)有物理機12a、物理機12b、物理機12c,其共用同一個接入交換機11。舉例來說,物理機的負(fù)載信息可包括虛擬機的源利用率和物理機資源利用率,其中該資源包括中央處理器、內(nèi)存、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率等。402、根據(jù)第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的所有物理機均為目的物理機,以及根據(jù)第一動態(tài)資源調(diào)度策略和第二物理機組內(nèi)各個物理機的負(fù)載信息,確定第二物理機組內(nèi)的所有物理機均為目的物理機。舉例來說,在負(fù)載信息為內(nèi)存的占有率時,第一閾值為80%,第二閾值為50%。如圖5A所示,第一物理機組10內(nèi)每個物理機上的虛擬機總數(shù)為5個,第一物理機組10內(nèi)任一物理機(物理機12a、物理機12b、物理機12c)的內(nèi)存的占有率均小于50%,該第一物理機組中的各物理機均為目的物理機。第二物理機組20內(nèi)每個物理機上的虛擬機總數(shù)為5個,第二物理機組20內(nèi)任一物理機(物理機22a、物理機22b、物理機22c)的內(nèi)存的占有率均小于50%,該第二物理機組中的各物理機均為目的物理機。圖中所示的任一虛擬機相對于該虛擬機所在的物理機來說,該物理機的內(nèi)存的占有率為20%。403、根據(jù)節(jié)能減排策略,向所述第一物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,所述遷移指令包括所述第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第一物理機內(nèi)的所有目的物理機根據(jù)所述遷移指令,將所述第一物理機組內(nèi)所有目的物理機上的所有虛擬機遷移至所述第二物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值。當(dāng)然,在另一實施例中,步驟403還可為根據(jù)節(jié)能減排策略,向所述第二物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,所述遷移指令包括所述第一物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第二物理機內(nèi)的所有目的物理機根據(jù)所述遷移指令,將所述第二物理機組內(nèi)所有目的物理機上的 所有虛擬機遷移至所述第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值。舉例來說,如圖5A所示,物理機12a接收的遷移指令為將第一物理機組10內(nèi)的物理機12a上的虛擬機遷移至第二物理機組20中的物理機22a中;物理機12b接收的遷移指令為將第一物理機組10內(nèi)的物理機12b上的虛擬機遷移至第二物理機組20中的物理機22b中;物理機12c接收的遷移指令為將第一物理機組10內(nèi)的物理機12c上的虛擬機遷移至第二物理機組20中的物理機22c中。需要說明的是,上述任一遷移指令中的待接收虛擬機的第二物理機組內(nèi)的物理機可為任意的一個或多個,本實施例僅為舉例說明,并對其進(jìn)行限定,其根據(jù)實際的負(fù)載信息進(jìn)行配置。若第一物理機組內(nèi)的每個物理機上的虛擬機均遷移至第二物理機組20中的物理機22a、物理機22b或物理機22c中。當(dāng)然,在另一實施例中,遷移指令還可是指示第二物理機組20內(nèi)每個物理機上的虛擬機均遷移至第一物理機組10中的物理機12a、物理機12b或物理機12c中。需要說明的是,由于將第一物理機組10內(nèi)的每個物理機上的虛擬機遷移至第二物理機組20內(nèi)對應(yīng)的物理機中,需要遷移3個虛擬機,遷移網(wǎng)絡(luò)流量需經(jīng)過兩個接入交換機和一個匯聚交換機;但是,將第二物理機組20內(nèi)的每個物理機上虛擬機遷移至第一物理機組10內(nèi)對應(yīng)的物理機中,需要遷移4個虛擬機,遷移網(wǎng)絡(luò)流量需經(jīng)過兩個接入交換機和一個匯聚交換機;由此,將第一物理機組10內(nèi)的每個物理機上虛擬機遷移至第二物理機組20內(nèi)對應(yīng)的物理機中,能夠更好的節(jié)省遷移過程中的網(wǎng)絡(luò)流量,降低集群內(nèi)網(wǎng)絡(luò)的負(fù)荷,且能夠達(dá)到節(jié)能減排的目的。從上述實施例可知,優(yōu)先在一個物理機組內(nèi)調(diào)整各物理機的負(fù)載信息,且在共用一個匯聚交換機的各物理機組內(nèi)的各物理機的負(fù)載信息均未達(dá)到第二閾值時,可在共用一個匯聚交換機的各物理機組之間調(diào)整物理機的負(fù)載,由此,可使虛擬機的遷移過程中能夠有效減少網(wǎng)絡(luò)負(fù)荷,同時集群管理系統(tǒng)的成本,實現(xiàn)節(jié)能減排的目的。上述實施例可知,服務(wù)器可優(yōu)先在一個物理機組內(nèi)進(jìn)行調(diào)整,如果無法在一個物理機組內(nèi)達(dá)到資源調(diào)整目標(biāo),才考慮在物理機組之間調(diào)整,由此,保證虛擬機熱遷移優(yōu)先在同一個接入交換機下進(jìn)行,減少了對整個集群網(wǎng)絡(luò)的影響,也提高了遷移速率,即提高了資源調(diào)度的速率。圖6A示出了本發(fā)明另一實施例提供的集群系統(tǒng)的局部結(jié)構(gòu)示意圖,圖6B示出了本發(fā)明另一實施例提供的虛擬機部署的方法的流程示意圖,結(jié)合圖6A和圖6B所示,本實施例中的虛擬機部署的方法如下文所述。501、獲取共用同一個匯聚交換機的所有物理機組內(nèi)各物理機的負(fù)載信息。舉例來說,物理機的負(fù)載信息可包括虛擬機的源利用率和物理機資源利用率,其中該資源包括中央處理器、內(nèi)存、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率等。如圖6A中的第一物理機組10,其內(nèi)設(shè)有物理機12a、物理機12b、物理機12c,其共用同一個接入交換機11 ;第二物理機組20,其內(nèi)設(shè)有物理機22a、物理機22b、物理機22c ;第一物理機組10和第二物理機組共用同一個匯聚交換機21。圖中所示的任一虛擬機相對于該虛擬機所在的物理機來說,該物理機的處理器使用率為20%。
從圖6A中可以獲知,第二物理機組內(nèi)的物理機22a中的負(fù)載信息最小。502、根據(jù)第一動態(tài)資源調(diào)度策略和物理機的負(fù)載信息,確定所有物理機組內(nèi)的目的物理機,目的物理機為負(fù)載信息小于第二閾值的物理機。在本實施例中,該第一動態(tài)資源調(diào)度策略可以具體包括確定目的物理機的策略。503、根據(jù)部署策略,向目的物理機下發(fā)部署一個或多個虛擬機的部署指令,用以使目的物理機按照部署指令部署虛擬機,以及使部署有虛擬機的目的物理機的負(fù)載信息小于第一閾值,第一閾值大于所述第二閾值。其中,該部署策略用于使得各個物理機組的負(fù)載信息均衡,且使得每個物理機組內(nèi)的各個物理機的負(fù)載信息均衡。在實際應(yīng)用中,若目的物理機的數(shù)量為兩個或兩個以上,則向負(fù)載信息最小的物理機下發(fā)所述部署指令。 由上述實施例可知,本實施例中的虛擬機部署的方法根據(jù)各物理機的負(fù)載信息進(jìn)行部署,能夠合理部署同一個匯聚交換機下個物理機上虛擬機,同時能夠使各個物理機組的負(fù)載信息均衡,且使得每個物理機組內(nèi)的各個物理機的負(fù)載信息均衡,以有效減少后續(xù)虛擬機遷移的次數(shù)。根據(jù)本發(fā)明的另一方面,如圖7所示,圖7示出了本發(fā)明另一實施例提供的服務(wù)器的結(jié)構(gòu)示意圖,本實施例中服務(wù)器包括獲取單元61、確定單元62和發(fā)送單元63 ;其中,獲取單元61用于獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,所述第一物理機組內(nèi)的各個物理機共用同一個接入交換機;確定單元62用于根據(jù)第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的源物理機和目的物理機;源物理機為所述負(fù)載信息超過第一閾值的物理機,目的物理機為負(fù)載信息小于第二閾值的物理機;第一閾值大于第二閾值;發(fā)送單元63用于根據(jù)第二動態(tài)資源調(diào)度策略,向源物理機下發(fā)遷移指令,遷移指令包括待遷移虛擬機標(biāo)識和該目的物理機的標(biāo)識,用以使源物理機根據(jù)遷移指令,將源物理機上與該待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得目的物理機在接收源物理機上與該待遷移虛擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于第一閾值。
舉例來說,前述的負(fù)載信息可包括虛擬機的源利用率和物理機資源利用率,其中該資源包括中央處理器、內(nèi)存、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率等。進(jìn)一步地,若確定單元根據(jù)所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的所有物理機均為源物理機,則獲取單元61還用于獲取與第一物理機組共用同一個匯聚交換機的第二物理機組內(nèi)各個物理機的負(fù)載信息;相應(yīng)地,確定單元62還用于根據(jù)該第一動態(tài)資源調(diào)度策略和第二物理機組內(nèi)各個物理機的負(fù)載信息,確定第二物理機組內(nèi)的目的物理機;
發(fā)送單元63還用于根據(jù)第三動態(tài)資源調(diào)度策略,向第一物理機組內(nèi)的源物理機下發(fā)遷移指令,遷移指令包括待遷移虛擬機標(biāo)識和該第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使第一物理機組內(nèi)的源物理機根據(jù)遷移指令,將源物理機上與該待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移至第二物理機組內(nèi)的與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得第二物理機組內(nèi)的目的物理機在接收第一物理機組內(nèi)源物理機上與該待遷移虛擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于第一閾值。可選地,發(fā)送單元63還用于在確定第一物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上時,選取負(fù)載信息最小的物理機作為接收源物理機上的虛擬機的第一個目的物理機。在實際應(yīng)用中,發(fā)送單元63還用于在確定第二物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上時,選取第二物理機組內(nèi)負(fù)載信息最小的物理機作為接收所述第一物理機組中的源物理機上虛擬機的第一個目的物理機。進(jìn)一步地,服務(wù)器還包括圖中未示出的排序單元,所述排序單元用于在確定單元62根據(jù)第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的所有物理機均為目的物理機時,按照目的物理機的負(fù)載信息將目的物理機進(jìn)行升序排序,排在第一位的目的物理機為負(fù)載信息最小的目的物理機;或者按照目的物理機的負(fù)載信息將所述目的物理機進(jìn)行降序排序,排在末位的目的物理機為負(fù)載信息最小的目的物理機;相應(yīng)地,發(fā)送單元63,還用于根據(jù)節(jié)能減排策略,向升序排序中排在前N位的目的物理機下發(fā)遷移指令,遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使排在前N位的目的物理機根據(jù)所述遷移指令,將排在前N位的目的物理機中所有的虛擬機遷移至第一物理機組內(nèi)的與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值;或者根據(jù)節(jié)能減排策略,向降序排序中排在后N位的目的物理機下發(fā)遷移指令,遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使排在后N位的目的物理機根據(jù)所述遷移指令,將排在后N位的目的物理機中所有虛擬機遷移至第一物理機組內(nèi)的與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值;N取大于等于I的整數(shù),N小于所述第一物理機組內(nèi)的目的物理機的總數(shù)。進(jìn)一步地,在確定單元62根據(jù)第一動態(tài)資源調(diào)度策略和第一物理機組內(nèi)各個物理機的負(fù)載信息,確定第一物理機組內(nèi)的所有物理機均為目的物理機,以及根據(jù)第一動態(tài)資源調(diào)度策略和第二物理機組內(nèi)各個物理機的負(fù)載信息,確定第二物理機組內(nèi)的所有物理機均為目的物理機時,此時發(fā)送單元63還用于根據(jù)節(jié)能減排策略,向第一物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,遷移指令包括第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使第一物理機內(nèi)的所有目的物理機根據(jù)遷移指令,將第一物理機組內(nèi)所有目的物理機上的所有虛擬機遷移至第二物理機組內(nèi)的與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值; 或者,根據(jù)該節(jié)能減排策略,向第二物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,遷移指令包括所述第一物理機組內(nèi)的目的物理機的標(biāo)識,用以使第而物理機內(nèi)的所有目的物理機根據(jù)所述遷移指令,將第二物理機組內(nèi)所有目的物理機上的所有虛擬機遷移至第一物理機組內(nèi)的與目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)
載信息小于第一閾值。由上述實施例可知,本實施例的服務(wù)器,通過根據(jù)第一動態(tài)資源調(diào)度策略和獲取單元獲取到的同一個接入交換機下的多個物理機的負(fù)載信息,在確定單元中確定該物理機組內(nèi)的源物理機和目的物理機,進(jìn)而通過遷移單元將源物理機上與該遷移指令中的待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到目的物理機中,使得遷移網(wǎng)絡(luò)流量只經(jīng)過一個接入交換機,縮短了數(shù)據(jù)傳輸?shù)逆溌烽L度,提高了遷移速率,同時減少遷移流量,進(jìn)而降低整個集群系統(tǒng)中虛擬機熱遷移對網(wǎng)絡(luò)負(fù)荷的影響。根據(jù)本發(fā)明的另一方面,如圖8所示,圖8示出了本發(fā)明另一實施例提供的服務(wù)器的結(jié)構(gòu)示意圖,本實施例中服務(wù)器包括獲取單元71、確定單元72和部署指令發(fā)送單元73 ;其中,獲取單元71用于獲取共用同一個匯聚交換機的所有物理機組內(nèi)各物理機的負(fù)載信息;確定單元72用于根據(jù)第一動態(tài)資源調(diào)度策略和物理機的負(fù)載信息,確定所有物理機組內(nèi)的目的物理機,目的物理機為負(fù)載信息小于第二閾值的物理機;部署指令發(fā)送單元73,用于根據(jù)部署策略,向所述目的物理機下發(fā)部署一個或多個虛擬機的部署指令,用以使所述目的物理機按照所述部署指令部署虛擬機,以及使部署有虛擬機的所述目的物理機的負(fù)載信息小于第一閾值,所述第一閾值大于所述第二閾值。進(jìn)一步地,前述的部署指令發(fā)送單元73還用于在確定所述目的物理機的數(shù)量為兩個或兩個以上時,向負(fù)載信息最小的物理機下發(fā)所述部署指令。前述的負(fù)載信息可包括虛擬機的源利用率和物理機資源利用率,其中該資源包括中央處理器、內(nèi)存、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率等。由上實施例可知,本實施例中的服務(wù)器根據(jù)各物理機的負(fù)載信息進(jìn)行部署,能夠合理部署同一個匯聚交換機下個物理機上的虛擬機,同時能夠使各個物理機的負(fù)載均衡,以有效減少后續(xù)虛擬機遷移的次數(shù)。
特別地,在集群系統(tǒng)中創(chuàng)建虛擬機吋,自動為其選擇合適的位置。即將虛擬機按照負(fù)載狀況均勻分布到不同的物理機組中。根據(jù)本發(fā)明的另一方面,本發(fā)明實施例還提供ー種集群系統(tǒng),包括多個物理機組,和本發(fā)明實施例任意所述的服務(wù)器,所述服務(wù)器與所述多個物理機組中的每ー物理機具有通信連接。在本實施例中,集群系統(tǒng)中的物理機是按照連接同一個接入交換機進(jìn)行分組,SPー個物理機組內(nèi)的各個物理機共同連接ー個交換機。
另外,該集群系統(tǒng)可以獲取集群內(nèi)的資源數(shù)據(jù),該資源數(shù)據(jù)可以即為上述各個物理機的負(fù)載信息,該負(fù)載信息包括虛擬機資源利用率以及物理機資源利用率等。且該資源包含處理器(比如CPU,DSP)、內(nèi)存、存儲IO速率、網(wǎng)絡(luò)收發(fā)速率等,且負(fù)載信息可以按照固定間隔收集。更為具體的,該服務(wù)器可以為圖7所示的服務(wù)器,并可以執(zhí)行圖2B、3B、4B和5B任一所示方法的實施例,其實現(xiàn)原理相類似,此處不再贅述?;蛘?,該服務(wù)器可以為圖8所示的服務(wù)器,并可以執(zhí)行圖6B所示方法實施例的技術(shù)方案,其實現(xiàn)原理相類似,此處不再贅述?;蛘撸摲?wù)器也可以是匯總有圖7所示的服務(wù)器和圖8所示的服務(wù)器的功能集
ム
ロ ο需要說明的是,前述實施例描述中所采用的第一、第二的說法,沒有限定順序的意思,僅為方便區(qū)分而已。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成。前述的程序可以存儲于ー計算機可讀取存儲介質(zhì)中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質(zhì)包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。最后應(yīng)說明的是以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然可以對前述各實施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。
權(quán)利要求
1.一種虛擬機熱遷移的方法,其特征在于,包括 獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,所述第一物理機組內(nèi)的各個物理機共用同一個接入交換機; 根據(jù)第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的源物理機和目的物理機;所述源物理機為所述負(fù)載信息超過第一閾值的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機;所述第一閾值大于所述第二閾值; 根據(jù)第二動態(tài)資源調(diào)度策略,向所述源物理機下發(fā)遷移指令,所述遷移指令包括待遷移虛擬機標(biāo)識和所述目的物理機的標(biāo)識,用以使所述源物理機根據(jù)所述遷移指令,將所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得所述目的物理機在接收所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于所述第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于所述第一閾值。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,若根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的所有物理機均為源物理機;則所述方法還包括 獲取與所述第一物理機組共用同一個匯聚交換機的第二物理機組內(nèi)各個物理機的負(fù)載信息; 根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第二物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第二物理機組內(nèi)的目的物理機; 根據(jù)所述第三動態(tài)資源調(diào)度策略,向所述第一物理機組內(nèi)的源物理機下發(fā)遷移指令,所述遷移指令包括待遷移虛擬機標(biāo)識和所述第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第一物理機組內(nèi)的源物理機根據(jù)所述遷移指令,將所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移至所述第二物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得所述第二物理機組內(nèi)的目的物理機在接收所述第一物理機組內(nèi)源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于所述第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于所述第一閾值。
3.根據(jù)權(quán)利要求I所述的方法,其特征在于,若所述第一物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上,則所述方法還包括 確定負(fù)載信息最小的物理機作為接收所述源物理機上的虛擬機的第一個目的物理機。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,若所述第二物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上,則所述方法還包括 確定第二物理機組內(nèi)負(fù)載信息最小的物理機作為接收所述第一物理機組中的源物理機上的虛擬機的第一個目的物理機。
5.根據(jù)權(quán)利要求I所述的方法,其特征在于,若根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的所有物理機均為目的物理機,則所述方法還包括 按照目的物理機的負(fù)載信息將所述目的物理機進(jìn)行升序排序,所述排在第一位的目的物理機為負(fù)載信息最小的目的物理機;根據(jù)節(jié)能減排策略,向所述排在前N位的目的物理機下發(fā)遷移指令,所述遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使所述排在前N位的目的物理機根據(jù)所述遷移指令,將所述排在前N位的目的物理機中所有的虛擬機遷移至第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值; 或者, 按照目的物理機的負(fù)載信息將所述目的物理機進(jìn)行降序排序,所述排在末位的目的物理機為負(fù)載信息最小的目的物理機; 根據(jù)所述節(jié)能減排策略,向所述排在后N位的目的物理機下發(fā)遷移指令,所述遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使所述排在后N位的目的物理機根據(jù)所述遷移指令,將所述排在后N位的目的物理機中所有虛擬機遷移至第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值; N取大于等于I的整數(shù),N小于所述第一物理機組內(nèi)的目的物理機的總數(shù)。
6.根據(jù)權(quán)利要求2所述的方法,其特征在干,若根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的所有物理機均為目的物理機,以及根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第二物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第二物理機組內(nèi)的所有物理機均為目的物理機,則所述方法還包括 則根據(jù)節(jié)能減排策略,向所述第一物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,所述遷移指令包括所述第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第一物理機內(nèi)的所有目的物理機根據(jù)所述遷移指令,將所述第一物理機組內(nèi)所有目的物理機上的所有虛擬機遷移至所述第二物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值;或者, 則根據(jù)所述節(jié)能減排策略,向所述第二物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,所述遷移指令包括所述第一物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第而物理機內(nèi)的所有目的物理機根據(jù)所述遷移指令,將所述第二物理機組內(nèi)所有目的物理機上的所有虛擬機遷移至所述第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值。
7.根據(jù)權(quán)利要求I至6任一所述的方法,其特征在于,所述負(fù)載信息包括物理機的處理器使用率、內(nèi)存占用率、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率。
8.—種虛擬機部署的方法,其特征在于,包括 獲取共用同一個匯聚交換機的所有物理機組內(nèi)各物理機的負(fù)載信息; 根據(jù)第一動態(tài)資源調(diào)度策略和所述物理機的負(fù)載信息,確定所有物理機組內(nèi)的目的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機; 根據(jù)部署策略,向所述目的物理機下發(fā)部署一個或多個虛擬機的部署指令,用以使所述目的物理機按照所述部署指令部署虛擬機,以及使部署有虛擬機的所述目的物理機的負(fù)載信息小于第一閾值,所述第一閾值大于所述第ニ閾值。
9.根據(jù)權(quán)利要求8所述的方法,其特征在干,若所述目的物理機的數(shù)量為兩個或兩個以上,則向負(fù)載信息最小的物理機下發(fā)所述部署指令。
10.根據(jù)權(quán)利要求8或9所述的方法,其特征在于,所述負(fù)載信息包括物理機的處理器使用率、內(nèi)存占用率、存儲I/O速率或網(wǎng)絡(luò)收發(fā)速率。
11.一種服務(wù)器,其特征在于,包括 獲取單元,用于獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,所述第一物理機組內(nèi)的各個物理機共用同一個接入交換機; 確定單元,用于根據(jù)第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的源物理機和目的物理機;所述源物理機為所述負(fù)載信息超過第一閾值的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機;所述第一閾值大于所述第二閾值; 發(fā)送單元,用于根據(jù)第二動態(tài)資源調(diào)度策略,向所述源物理機下發(fā)遷移指令,所述遷移指令包括待遷移虛擬機標(biāo)識和所述目的物理機的標(biāo)識,用以使所述源物理機根據(jù)所述遷移指令,將所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得所述目的物理機在接收所述源物理機上與所述待遷移虛 擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于所述第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于所述第一閾值。
12.根據(jù)權(quán)利要求11所述的服務(wù)器,其特征在于,若所述確定單元根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的所有物理機均為源物理機,則所述獲取單元,還用于獲取與所述第一物理機組共用同一個匯聚交換機的第二物理機組內(nèi)各個物理機的負(fù)載信息; 相應(yīng)地,所述確定單元,還用于根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第二物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第二物理機組內(nèi)的目的物理機; 所述發(fā)送單元,還用于根據(jù)第三動態(tài)資源調(diào)度策略,向所述第一物理機組內(nèi)的源物理機下發(fā)遷移指令,所述遷移指令包括待遷移虛擬機標(biāo)識和所述第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第一物理機組內(nèi)的源物理機根據(jù)所述遷移指令,將所述源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移至所述第二物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得所述第二物理機組內(nèi)的目的物理機在接收所述第一物理機組內(nèi)源物理機上與所述待遷移虛擬機標(biāo)識對應(yīng)的虛擬機之后的負(fù)載信息小于所述第一閾值,以及遷出虛擬機之后的源物理機的負(fù)載信息小于所述第一閾值。
13.根據(jù)權(quán)利要求11所述的服務(wù)器,其特征在于,所述發(fā)送單元,還用于在確定所述第一物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上時,選取負(fù)載信息最小的物理機作為接收所述源物理機上虛擬機的第一個目的物理機。
14.根據(jù)權(quán)利要求12所述的服務(wù)器,其特征在于,所述發(fā)送單元,還用于在確定第二物理機組內(nèi)的目的物理機的數(shù)量為兩個或兩個以上時,選取第二物理機組內(nèi)負(fù)載信息最小的物理機作為接收所述第一物理機組中的源物理機上虛擬機的第一個目的物理機。
15.根據(jù)權(quán)利要求11所述的服務(wù)器,其特征在于,還包括排序單元, 所述排序單元用于在所述確定單元根據(jù)所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的所有物理機均為目的物理機時,按照目的物理機的負(fù)載信息將所述目的物理機進(jìn)行升序排序,所述排在第一位的目的物理機為負(fù)載信息最小的目的物理機;或者 按照目的物理機的負(fù)載信息將所述目的物理機進(jìn)行降序排序,所述排在末位的目的物理機為負(fù)載信息最小的目的物理機; 相應(yīng)地,所述發(fā)送単元還用于 根據(jù)節(jié)能減排策略,向所述升序排序中排在前N位的目的物理機下發(fā)遷移指令,所述遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使所述排在前N位的目的物理機根據(jù)所述遷移指令,將所述排在前N位的目的物理機中所有的虛擬機遷移至第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值; 或者 根據(jù)所述節(jié)能減排策略,向所述降序排序中排在后N位的目的物理機下發(fā)遷移指令,所述遷移指令中包括預(yù)接收虛擬機的目的物理機的標(biāo)識,用以使所述排在后N位的目的物理機根據(jù)所述遷移指令,將所述排在后N位的目的物理機中所有虛擬機遷移至第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值; N取大于等于I的整數(shù),N小于所述第一物理機組內(nèi)的目的物理機的總數(shù)。
16.根據(jù)權(quán)利要求12所述的服務(wù)器,其特征在于,在所述確定単元根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第一物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第一物理機組內(nèi)的所有物理機均為目的物理機,以及根據(jù)所述第一動態(tài)資源調(diào)度策略和所述第二物理機組內(nèi)各個物理機的負(fù)載信息,確定所述第二物理機組內(nèi)的所有物理機均為目的物理機吋, 所述發(fā)送単元,還用于 根據(jù)節(jié)能減排策略,向所述第一物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,所述遷移指令包括所述第二物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第一物理機內(nèi)的所有目的物理機根據(jù)所述遷移指令,將所述第一物理機組內(nèi)所有目的物理機上的所有虛擬機遷移至所述第二物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值; 或者, 根據(jù)所述節(jié)能減排策略,向所述第二物理機組內(nèi)的所有目的物理機下發(fā)遷移指令,所述遷移指令包括所述第一物理機組內(nèi)的目的物理機的標(biāo)識,用以使所述第而物理機內(nèi)的所有目的物理機根據(jù)所述遷移指令,將所述第二物理機組內(nèi)所有目的物理機上的所有虛擬機遷移至所述第一物理機組內(nèi)的與所述目的物理機的標(biāo)識對應(yīng)的目的物理機中,使得接收虛擬機后的目的物理機的負(fù)載信息小于所述第一閾值。
17.根據(jù)權(quán)利要求11至16任一所述的服務(wù)器,其特征在于,所述負(fù)載信息包括物理機的處理器使用率、內(nèi)存占用率、存儲I/O速率或網(wǎng)絡(luò)收發(fā)速率。
18.一種服務(wù)器,其特征在于,包括 獲取單元,用于獲取共用同一個匯聚交換機的所有物理機組內(nèi)各物理機的負(fù)載信息; 確定單元,用于根據(jù)第一動態(tài)資源調(diào)度策略和所述物理機的負(fù)載信息,確定所有物理機組內(nèi)的目的物理機,所述目的物理機為所述負(fù)載信息小于第二閾值的物理機; 部署指令發(fā)送單元,用于根據(jù)部署策略,向所述目的物理機下發(fā)部署一個或多個虛擬機的部署指令,用以使所述目的物理機按照所述部署指令部署虛擬機,以及使部署有虛擬機的所述目的物理機的負(fù)載信息小于第一閾值,所述第一閾值大于所述第二閾值。
19.根據(jù)權(quán)利要求18所述的服務(wù)器,其特征在于,所述部署指令發(fā)送單元,還用于在確定所述目的物理機的數(shù)量為兩個或兩個以上時,向負(fù)載信息最小的物理機下發(fā)所述部署指令。
20.根據(jù)權(quán)利要求18或19所述的服務(wù)器,其特征在于,所述負(fù)載信息包括物理機的處理器使用率、內(nèi)存占用率、存儲I/o速率或網(wǎng)絡(luò)收發(fā)速率。
21.一種集群系統(tǒng),包括多個物理機組,其特征在于,還包括如上所述的權(quán)利要求11至17任一所述的服務(wù)器,所述服務(wù)器與所述多個物理機組中的每一物理機具有通信連接。
22.一種集群系統(tǒng),包括多個物理機組,其特征在于,還包括如上所述的權(quán)利要求18至20任一所述的服務(wù)器,所述服務(wù)器與所述多個物理機組中的每一物理機具有通信連接。
全文摘要
本發(fā)明提供一種虛擬機熱遷移和部署的方法、服務(wù)器及集群系統(tǒng),其中虛擬機熱遷移的方法包括獲取第一物理機組內(nèi)的各個物理機的負(fù)載信息,各個物理機共用同一個接入交換機;根據(jù)第一動態(tài)資源調(diào)度策略和各個物理機的負(fù)載信息確定源物理機和目的物理機;根據(jù)第二動態(tài)資源調(diào)度策略,向源物理機下發(fā)遷移指令,用以使源物理機根據(jù)遷移指令,將源物理機上與該遷移指令中待遷移虛擬機標(biāo)識對應(yīng)的虛擬機遷移到目的物理機中。上述方法優(yōu)先在物理機組內(nèi)進(jìn)行虛擬機熱遷移,使遷移網(wǎng)絡(luò)流量只經(jīng)過一個接入交換機,縮短了數(shù)據(jù)傳輸?shù)逆溌烽L度,提高了遷移速率,同時減小了遷移流量對集群網(wǎng)絡(luò)負(fù)載的影響程度。
文檔編號G06F9/455GK102724277SQ20121013724
公開日2012年10月10日 申請日期2012年5月4日 優(yōu)先權(quán)日2012年5月4日
發(fā)明者趙雁斌 申請人:華為技術(shù)有限公司