專利名稱:管理虛擬機(jī)的裝置、系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,更具體地說,涉及用于管理虛擬機(jī)的裝置、系統(tǒng)和方法。
背景技術(shù):
在虛擬化環(huán)境下,在每個(gè)物理機(jī)上通過虛擬層提供多個(gè)虛擬機(jī)。典型的虛擬化架 構(gòu)如圖1所示。虛擬層直接運(yùn)行于物理層上。通過虛擬層提供了4個(gè)虛擬機(jī),在每個(gè)虛擬 機(jī)上分別運(yùn)行不同的應(yīng)用。虛擬機(jī)對于應(yīng)用來說是不可見的。也就是說,從應(yīng)用的角度來 看,運(yùn)行在虛擬機(jī)上和直接運(yùn)行在物理機(jī)上完全一樣。虛擬層對物理資源進(jìn)行管理,向應(yīng)用 提供"模擬"的物理資源接口。由于應(yīng)用所面對的"物理資源接口"都是虛擬層模擬出來的, 因此在部署應(yīng)用時(shí)不用考慮實(shí)際的物理資源細(xì)節(jié),從而大大增加了部署應(yīng)用的靈活性。
如果需要對承載虛擬機(jī)的物理機(jī)進(jìn)行硬件維護(hù),比如更換硬盤,增加內(nèi)存等,就必 須停止物理機(jī)的運(yùn)轉(zhuǎn);如果要求應(yīng)用不能停止運(yùn)行,就需要將待停止的源物理機(jī)上的虛擬 機(jī)遷移到另一臺物理機(jī)即目的物理機(jī)。遷移虛擬機(jī)屬于系統(tǒng)級操作,而硬件維護(hù)屬于硬件 級操作。在大型的信息管理系統(tǒng)中,系統(tǒng)級操作由系統(tǒng)管理員在系統(tǒng)控制臺完成,硬件級操 作由硬件工程師在機(jī)房完成。系統(tǒng)控制臺和機(jī)房可能處于有較大時(shí)差的距離相當(dāng)遠(yuǎn)的物理 位置?;蛘邽榱税踩紤]系統(tǒng)管理員只能進(jìn)入系統(tǒng)控制臺而不能進(jìn)入機(jī)房,硬件工程師只 能進(jìn)入機(jī)房而不能進(jìn)入系統(tǒng)控制臺。在這些情況下,硬件維護(hù)流程可能包括系統(tǒng)管理員進(jìn) 行系統(tǒng)級操作,將虛擬機(jī)從源物理機(jī)遷移到目的物理機(jī);系統(tǒng)管理員通知硬件工程師可以 開始對源物理機(jī)進(jìn)行維護(hù);硬件工程師斷開源物理機(jī)的電源,進(jìn)行硬件維護(hù);硬件工程師 通知系統(tǒng)工程師維護(hù)完畢;系統(tǒng)工程師將虛擬機(jī)從目的物理機(jī)遷移回源物理機(jī)。由此可見, 必須要系統(tǒng)管理員和硬件工程師協(xié)作才能完成一次完整的硬件維護(hù)流程。這使得硬件維護(hù) 的人力成本變大。此外,特別地,如果控制臺和機(jī)房所處的物理位置之間有較大的時(shí)差,這 一硬件維護(hù)流程可能需要以天記的時(shí)間,這削弱了系統(tǒng)應(yīng)對突發(fā)事件的能力。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供了管理虛擬機(jī)的裝置、系統(tǒng)和方法,從而簡化虛擬化環(huán)境下 進(jìn)行硬件維護(hù)的流程。 根據(jù)本發(fā)明實(shí)施例的用于管理虛擬機(jī)的系統(tǒng)包括一現(xiàn)場管理裝置,該現(xiàn)場管理裝 置通過專用物理電氣連接連接到至少兩臺物理機(jī),其中至少一臺物理機(jī)上的虛擬機(jī)需要遷 移到至少一臺目的物理機(jī),該裝置包括輸入模塊,用于接收外部輸入;操作模塊,被配置 為根據(jù)通過所述輸入模塊的現(xiàn)場外部輸入確定源物理機(jī),并進(jìn)一步目的物理機(jī),以便控制 遷移模塊的工作;和遷移模塊,被配置為將虛擬機(jī)從源物理機(jī)遷移到目的物理機(jī)。
根據(jù)本發(fā)明實(shí)施例的另一種管理虛擬機(jī)的系統(tǒng)特別地是刀片服務(wù)器系統(tǒng)和機(jī)架 式服務(wù)器系統(tǒng)中的任意一種,該系統(tǒng)包括至少兩臺物理機(jī),其中至少一臺物理機(jī)上的虛擬 機(jī)需要遷移到至少一臺目的物理機(jī);和連接到至少兩臺物理機(jī)的用于管理虛擬機(jī)的裝置。 該裝置包括輸入模塊,用于接收外部輸入;操作模塊,被配置為根據(jù)通過所述輸入模塊的
4現(xiàn)場外部輸入確定源物理機(jī),并進(jìn)一步確定目的物理機(jī),以便控制遷移模塊的工作;和遷移 模塊,被配置為將虛擬機(jī)從源物理機(jī)遷移到目的物理機(jī)。 根據(jù)本發(fā)明實(shí)施例的在刀片服務(wù)器系統(tǒng)中管理虛擬機(jī)的方法,所述刀片服務(wù)器系 統(tǒng)包括至少兩臺物理機(jī),該方法包括確定源物理機(jī)和目的物理機(jī);和通過專用物理電氣 連接控制所述源物理機(jī)上和所述目的物理機(jī),從而將所述源物理機(jī)上的虛擬機(jī)遷移到所述 目的物理機(jī)上。 按照本發(fā)明實(shí)施例的技術(shù)方案,在復(fù)雜的信息管理系統(tǒng)中,硬件工程師可以在機(jī) 房內(nèi)自行將需要進(jìn)行硬件維護(hù)的源物理機(jī)上的虛擬機(jī)遷移到目的物理機(jī),然后對已經(jīng)不對 外提供服務(wù)的源物理機(jī)斷電以便進(jìn)行硬件維護(hù)。整個(gè)過程無需系統(tǒng)管理員參與。這樣,可 以減少維護(hù)系統(tǒng)硬件的人力成本,還可以更快地對系統(tǒng)的硬件問題作出響應(yīng)。同時(shí),由于硬 件工程師只能對物理機(jī)進(jìn)行虛擬機(jī)遷移,而并不能訪問物理機(jī)中的任何數(shù)據(jù),更不能訪問 由物理機(jī)中的虛擬機(jī)所封裝的數(shù)據(jù),從而不會降低信息管理系統(tǒng)的安全性。
圖1是典型的虛擬化架構(gòu)的示意圖。 圖2(A)是根據(jù)本發(fā)明實(shí)施例的用于管理虛擬機(jī)的裝置用于刀片服務(wù)器系統(tǒng)時(shí)的 示意圖。 圖2(B)示出了包含根據(jù)本發(fā)明實(shí)施例的現(xiàn)場管理裝置的刀片服務(wù)器系統(tǒng)的外觀 圖。 圖2(C)是根據(jù)本發(fā)明實(shí)施例的用于管理虛擬機(jī)的裝置的框圖。 圖3是根據(jù)本發(fā)明實(shí)施例的用于管理虛擬機(jī)的方法的流程圖。
具體實(shí)施例方式
以下參照
本發(fā)明提供的管理虛擬機(jī)的裝置、系統(tǒng)和方法的具體實(shí)施方 式。在以下描述中,一臺物理機(jī)表示一個(gè)獨(dú)立的計(jì)算機(jī)系統(tǒng),比如刀片服務(wù)器系統(tǒng)中的每 個(gè)刀片主機(jī)或機(jī)架式服務(wù)器系統(tǒng)中的每個(gè)主機(jī)。 一定數(shù)目的物理機(jī)安裝于一個(gè)刀片機(jī)箱
(chassis)或機(jī)架(rack)中。需要強(qiáng)調(diào)的是,當(dāng)?shù)谝辉幻枋鰹榕c第二元件相連時(shí),第一 元件不僅可以直接與第二元件相連,而且還可以借助第三元件間接地與第二元件相連。進(jìn) 一步地,為了清楚,省略了對完全理解本發(fā)明不必要的一些元件。 根據(jù)本發(fā)明實(shí)施例的用于管理虛擬機(jī)的現(xiàn)場管理裝置可以位于刀片服務(wù)器系統(tǒng)
的機(jī)箱或機(jī)架式服務(wù)器的機(jī)架上,管理安裝于該機(jī)箱中或該機(jī)架上的各物理機(jī)中的虛擬
機(jī)。如果若干機(jī)架組成一個(gè)集群,那么所述現(xiàn)場管理裝置也可以作為機(jī)房內(nèi)的一個(gè)獨(dú)立的
裝置,其連接到集群中的各物理機(jī),管理該集群中各物理機(jī)中的虛擬機(jī)。 所述連接可以是專用的物理電氣連接。所述物理電氣連接可以獨(dú)立于背板而單獨(dú)
存在。例如,可以用串行通信線路、通用串行總線或并行通信線路等作為物理電氣連接將各
物理機(jī)連接到所述現(xiàn)場管理裝置。相應(yīng)地,所述接口可以是串行線路接口 ,通用串行總線接
口或者并行線路接口。特別地,如果該現(xiàn)場管理裝置位于刀片服務(wù)器系統(tǒng)的機(jī)箱上,也可以
在刀片服務(wù)器系統(tǒng)的背板上設(shè)置物理電氣連接,并且在背板和刀片主機(jī)上設(shè)置彼此匹配的
專用接口。這樣,當(dāng)各物理機(jī)安裝到機(jī)箱中時(shí),就能夠通過該接口連接到背板上的該物理電氣連接?,F(xiàn)場管理裝置也通過類似的接口連接到該物理電氣連接,這樣各物理機(jī)和現(xiàn)場管 理裝置就通過該物理電氣連接連接起來。背板上的所述物理電氣連接可以采用串行通信線 路、通用串行總線和并行通信線路中的任意一種的電氣標(biāo)準(zhǔn)來設(shè)置,也可以采用任何其他 的電氣標(biāo)準(zhǔn)來設(shè)置。在這種情況下,所述現(xiàn)場管理裝置可以被集成在刀片服務(wù)器系統(tǒng)的背 板上,例如由集成電路芯片和外圍模塊實(shí)現(xiàn)??梢圆捎眠m合于短距離通信的電氣標(biāo)準(zhǔn)來設(shè) 置所述專用物理電氣連接,這是因?yàn)檫@樣實(shí)現(xiàn)的專用物理電氣連接以及其上所承載的數(shù)據(jù) 連接通常比較簡單,易于實(shí)現(xiàn),而且足以滿足硬件工程師在機(jī)房現(xiàn)場進(jìn)行操作的需要。
作為替換,也可以通過通用的網(wǎng)絡(luò)線路將各物理機(jī)連接到現(xiàn)場管理裝置。此時(shí)物 理機(jī)和現(xiàn)場管理裝置只需要包括通用的網(wǎng)卡即可。再一次,對于刀片服務(wù)器系統(tǒng),所述通用 網(wǎng)絡(luò)線路優(yōu)選地位于刀片服務(wù)器系統(tǒng)的機(jī)箱內(nèi)部,例如位于該刀片服務(wù)器系統(tǒng)的背板上。 對于機(jī)架式服務(wù)器系統(tǒng),所述通用網(wǎng)絡(luò)線路也優(yōu)選地位于該機(jī)架式服務(wù)器器系統(tǒng)的機(jī)架內(nèi) 部。 顯然,所述現(xiàn)場管理裝置必然連接到至少兩臺物理機(jī)。本領(lǐng)域技術(shù)人員可以理解, 所述連接到至少兩臺物理機(jī)并不表示同時(shí)連接到至少兩臺物理機(jī)。 圖2(A)示出了根據(jù)本發(fā)明實(shí)施例的現(xiàn)場管理裝置用于刀片服務(wù)器系統(tǒng)時(shí)的示意 圖。 圖2(B)示出了包含根據(jù)本發(fā)明實(shí)施例的現(xiàn)場管理裝置的刀片服務(wù)器系統(tǒng)的外觀 圖。 圖2 (C)示出了根據(jù)本發(fā)明實(shí)施例的現(xiàn)場管理裝置200的方框圖,該裝置包括獲取
模塊201、操作模塊202、指示模塊203、遷移模塊204和輸入模塊205。 獲取模塊201,用于獲取所連接的物理機(jī)上與虛擬機(jī)有關(guān)的狀態(tài)參數(shù)。所述狀態(tài)參
數(shù)例如該物理機(jī)上有多少個(gè)虛擬機(jī),該物理機(jī)當(dāng)前的負(fù)載率是多少,每個(gè)虛擬機(jī)分配了多
少物理資源等等。 如上所述,所述現(xiàn)場管理裝置200連接到各物理機(jī),而連接的方式有多種,因此獲 取模塊201可以通過多種手段從物理機(jī)獲取與該物理機(jī)上與虛擬機(jī)有關(guān)的狀態(tài)參數(shù)。本領(lǐng) 域技術(shù)人員在確定將以上任意一種連接方式作為所述現(xiàn)場管理裝置到所述各物理機(jī)之間 的物理電氣連接后,可以很容易地設(shè)計(jì)出滿足不同需要的通信協(xié)議,來實(shí)現(xiàn)現(xiàn)場管理裝置 和物理機(jī)之間的數(shù)據(jù)連接。 —般來說,物理機(jī)上的虛擬層提供應(yīng)用服務(wù)供外部裝置調(diào)用以便與物理機(jī)建立數(shù) 據(jù)連接。在建立了數(shù)據(jù)連接之后,現(xiàn)場管理裝置相當(dāng)于終端,而物理機(jī)上相當(dāng)于服務(wù)器。一 種最常用的應(yīng)用服務(wù)就是通過由網(wǎng)卡和網(wǎng)線等組成的通用網(wǎng)絡(luò)線路提供與外部裝置之間 的數(shù)據(jù)連接。在該裝置通過網(wǎng)線與物理機(jī)相連的情況下,可以將所連接的各物理機(jī)的IP地 址預(yù)先存放在該裝置中。對應(yīng)于每個(gè)IP地址,即對應(yīng)于每臺物理機(jī),可以進(jìn)一步存放相應(yīng) 的用戶名、密碼以及端口號等。這樣,該現(xiàn)場管理裝置通過IP地址、用戶名、密碼以及端口 號就可以調(diào)用該應(yīng)用服務(wù)從而建立數(shù)據(jù)連接?,F(xiàn)場管理裝置利用該數(shù)據(jù)連接經(jīng)由網(wǎng)線向物 理機(jī)發(fā)送查詢所述狀態(tài)參數(shù)的命令,物理機(jī)上的虛擬層通過網(wǎng)卡接收到該命令,則再次經(jīng) 由網(wǎng)線將所述狀態(tài)參數(shù)發(fā)送給現(xiàn)場管理裝置200。 又例如,該裝置通過專用的線路連接到物理機(jī)上的專用接口 ,經(jīng)由專用物理電氣 連接向物理機(jī)發(fā)送查詢所述狀態(tài)參數(shù)的命令,物理機(jī)上的虛擬層通過該專用接口接收到該命令,則再次經(jīng)由該專用物理電氣連接將所述狀態(tài)參數(shù)發(fā)送給現(xiàn)場管理裝置200。特別地,
在采用串行通信線路作為物理電氣連接的情況下,所述現(xiàn)場管理裝置和物理機(jī)之間可以通
過遠(yuǎn)程登錄協(xié)議(telnet)建立數(shù)據(jù)連接。這是因?yàn)椋?一般的物理機(jī)均配置有管理卡,該管
理卡包括串口。相應(yīng)地,物理機(jī)上的虛擬層通過該管理卡上的串口提供遠(yuǎn)程登錄的應(yīng)用服
務(wù)?,F(xiàn)場管理裝置通過遠(yuǎn)程登錄協(xié)議登錄到該物理機(jī)上之后,相當(dāng)于在該物理機(jī)的本地操
作物理機(jī),自然可以獲得該物理機(jī)上的所述狀態(tài)參數(shù)。由于串行通信線路的通信距離受到
限制,因此在采用串行通信線路作為物理電氣連接的情況下,所述現(xiàn)場管理裝置優(yōu)選地只
連接到刀片服務(wù)器系統(tǒng)內(nèi)部的各物理機(jī)或機(jī)架式服務(wù)器系統(tǒng)內(nèi)部的各物理機(jī)。 對于以其他物理電氣連接,例如通用串行總線、并行通信線路或者刀片服務(wù)器系
統(tǒng)背板上專門設(shè)置的物理電氣連接,將物理機(jī)和所述現(xiàn)場管理裝置連接起來的情況,需要
在物理機(jī)的虛擬層中加入相應(yīng)的驅(qū)動(dòng)程序,以便虛擬層可以響應(yīng)和處理通過對應(yīng)的接口收
到的命令或數(shù)據(jù)。本領(lǐng)域技術(shù)人員可以很容易地設(shè)計(jì)出所述驅(qū)動(dòng)程序,因此在此不再贅述。 獲取模塊201可以定期地獲取物理機(jī)的狀態(tài)參數(shù),也可以根據(jù)從操作模塊202接
收到的獲取指令來獲取物理機(jī)的所述狀態(tài)參數(shù)。 一般來說,可以獲取現(xiàn)場管理裝置200所
連接的所有物理機(jī)的狀態(tài)參數(shù);在所述獲取指令的指令格式支持指定物理機(jī)的情況下,也
可以根據(jù)所述獲取指令獲取一部分物理機(jī)的狀態(tài)參數(shù)。 所述獲取模塊201所獲取的狀態(tài)參數(shù)發(fā)送給操作模塊202。 操作模塊202,用于根據(jù)所述狀態(tài)參數(shù)控制指示模塊的工作,并且確定源物理機(jī)和 目的物理機(jī)以控制遷移模塊的工作。 操作模塊202基于現(xiàn)場輸入確定源物理機(jī),所述現(xiàn)場外部輸入即硬件工程師在機(jī) 房內(nèi)通過位于該現(xiàn)場管理裝置外殼上的輸入模塊205的輸入。可以提供任意類型的輸入接 口作為所述輸入模塊205,例如鼠標(biāo)、鍵盤、觸摸屏等,以便接收硬件工程師的輸入。作為替 換地,如果所述現(xiàn)場管理裝置被實(shí)現(xiàn)為刀片服務(wù)器系統(tǒng)背板上的芯片和外圍模塊,則所述 外殼指的是刀片服務(wù)器系統(tǒng)的機(jī)箱,輸入模塊作為外圍模塊之一位于刀片服務(wù)器系統(tǒng)的機(jī) 箱上。 在一個(gè)實(shí)施例中,由操作模塊202接收硬件工程師對源物理機(jī)和目的物理機(jī)的指 定,則操作模塊202控制指示模塊203顯示所述狀態(tài)參數(shù)以便硬件工程師可以根據(jù)所述狀 態(tài)參數(shù)決定目的物理機(jī);操作模塊202進(jìn)一步接收對目的物理機(jī)的指定。在確定了源物理 機(jī)和目的物理機(jī)之后,操作模塊202向遷移模塊204發(fā)送遷移指令,所述遷移指令包括源物 理機(jī)標(biāo)識、虛擬機(jī)標(biāo)識及與該虛擬機(jī)對應(yīng)的目的物理機(jī)標(biāo)識。需要說明的是,對目的物理機(jī) 的指定可以是針對源物理機(jī)上的所有虛擬機(jī)的,這種特殊情況下所述遷移指令可以僅包括 源物理機(jī)標(biāo)識和目的物理機(jī)標(biāo)識。 在另一個(gè)實(shí)施例中,硬件工程師僅指定源物理機(jī),現(xiàn)場管理裝置200自行決定目 的物理機(jī)。操作模塊202根據(jù)所述狀態(tài)參數(shù)決定目的物理機(jī),并且向遷移模塊204發(fā)送包 括源物理機(jī)標(biāo)識、虛擬機(jī)標(biāo)識及與該虛擬機(jī)對應(yīng)的目的物理機(jī)標(biāo)識的遷移指令。同樣,操作 模塊202所決定的目的物理機(jī)可能對源物理機(jī)上的所有虛擬機(jī)均相同,這種特殊情況下所 述遷移指令可以僅包括源物理機(jī)標(biāo)識和目的物理機(jī)標(biāo)識。 需要說明的是,無論所述現(xiàn)場管理裝置通過何種方式與物理機(jī)建立數(shù)據(jù)連接,硬 件工程師僅僅能通過操作模塊進(jìn)行指定源物理機(jī)和/或目的物理機(jī),而不能進(jìn)行其他操作。這是因?yàn)?,從?shù)據(jù)安全的角度考慮,硬件工程師不應(yīng)該能夠通過所述現(xiàn)場管理裝置訪問 物理機(jī)上的數(shù)據(jù)。這可以通過采用命令過濾技術(shù)讓操作模塊204僅接受對源物理機(jī)和/或 目的物理機(jī)的指定,而不接受其他任何命令來實(shí)現(xiàn)。 指示模塊203,用于在操作模塊202的控制下指示源物理機(jī)上的虛擬機(jī)是否已經(jīng) 全部遷移。 在由硬件工程師指定目的物理機(jī)的實(shí)施例中,所述指示模塊203顯示獲取模塊 201所獲取的狀態(tài)參數(shù)。如上所述,狀態(tài)參數(shù)包括源物理機(jī)上有多少個(gè)虛擬機(jī),因此通過顯 示狀態(tài)參數(shù)自然就可以指示源物理機(jī)上的虛擬機(jī)是否已經(jīng)全部遷移到其他物理機(jī)。在本實(shí) 施例中,指示模塊203可以包括小塊的顯示屏,用于顯示所連接的各物理機(jī)中與虛擬機(jī)有 關(guān)的狀態(tài)參數(shù),以便硬件工程師可以根據(jù)這些狀態(tài)參數(shù)決定如何將源物理機(jī)上的虛擬機(jī)遷 移到目的物理機(jī)。該顯示屏由操作模塊202根據(jù)所述狀態(tài)參數(shù)控制。 在現(xiàn)場管理裝置200自行決定目的物理機(jī)的實(shí)施例中。所述指示模塊203可以只 包括簡單的指示器例如發(fā)光二極管或者發(fā)聲元件,用于告知硬件工程師源物理機(jī)上的虛擬 機(jī)已經(jīng)全部遷移,可以對源物理機(jī)進(jìn)行硬件維護(hù)。該指示器也由操作模塊202根據(jù)所述狀 態(tài)參數(shù)控制。 當(dāng)然,為了進(jìn)一步簡單起見,可以不提供指示模塊。硬件工程師根據(jù)經(jīng)驗(yàn),在等待 足夠長時(shí)間后將該物理機(jī)斷電以便進(jìn)行硬件維護(hù)。此時(shí),如果由硬件工程師指定源物理機(jī) 和目的物理機(jī),那么可以進(jìn)一步省略獲取模塊。作為對所述指示模塊的替代,可以增加自動(dòng) 斷電模塊,操作模塊202控制該自動(dòng)斷電模塊的方式與控制上述指示器的方式類似。
指示模塊位于所述現(xiàn)場管理裝置的外殼上。作為替換地,如果所述現(xiàn)場管理裝置 被實(shí)現(xiàn)為刀片服務(wù)器系統(tǒng)背板上的芯片和外圍模塊,則所述外殼指的是刀片服務(wù)器系統(tǒng)的 機(jī)箱,指示模塊作為外圍模塊之一位于刀片服務(wù)器系統(tǒng)的機(jī)箱上。 遷移模塊204,用于在操作模塊202的控制下將虛擬機(jī)從源物理機(jī)遷移到目的物 理機(jī)。 如上所述,現(xiàn)場管理裝置200通過通用網(wǎng)絡(luò)線路或?qū)S梦锢黼姎膺B接連接到各物 理機(jī),遷移模塊204通過該通用網(wǎng)絡(luò)線路或?qū)S梦锢黼姎膺B接,分別與源物理機(jī)和目的物 理機(jī)上的虛擬層通信,從而完成虛擬機(jī)的遷移。這種實(shí)現(xiàn)方法的優(yōu)點(diǎn)是現(xiàn)場管理裝置可以 完全掌握遷移過程從而掌握遷移何時(shí)完成;缺點(diǎn)是需要現(xiàn)場管理裝置有比較強(qiáng)的處理能 力。 在一個(gè)實(shí)施例中,物理機(jī)上的虛擬層之間可以彼此通信自行完成虛擬機(jī)遷移。在 這種情況下,遷移模塊204根據(jù)所述遷移指令,將目標(biāo)物理機(jī)的標(biāo)識發(fā)送給源物理機(jī),由源 物理機(jī)的虛擬層直接與目的物理機(jī)通信開始虛擬機(jī)遷移。這種實(shí)現(xiàn)方法的優(yōu)點(diǎn)是現(xiàn)場管理 裝置只負(fù)責(zé)啟動(dòng)遷移,對處理能力的要求較低;缺點(diǎn)是現(xiàn)場管理裝置需要通過對所述狀態(tài) 參數(shù)的獲取來確定遷移是否完成。 無論是以上哪種情況,由于該遷移只涉及到虛擬層,因此各虛擬機(jī)上的應(yīng)用不會 發(fā)現(xiàn)進(jìn)行了虛擬機(jī)遷移,從而保持連續(xù)的運(yùn)行。源物理機(jī)和目的物理機(jī)之間的數(shù)據(jù)交換可 以通過上述專用物理電氣連接或通用網(wǎng)絡(luò)線路進(jìn)行。 除了以上模塊以外,所述現(xiàn)場管理裝置200還可以具備驗(yàn)證模塊,該模塊被配置 為驗(yàn)證當(dāng)前操作者是否有權(quán)執(zhí)行虛擬機(jī)遷移。如上所述,由于現(xiàn)場管理裝置200位于機(jī)房內(nèi),而機(jī)房本身往往已經(jīng)有相應(yīng)的驗(yàn)證裝置,因此現(xiàn)場管理裝置200可以不用再次進(jìn)行驗(yàn) 證,從而省略所述驗(yàn)證模塊。 圖3是根據(jù)本發(fā)明實(shí)施例的用于管理虛擬機(jī)的方法的流程圖。
步驟301,現(xiàn)場管理裝置通過從外部接收對源物理機(jī)的指定來確定源物理機(jī)。
在步驟301之前,可以進(jìn)一步包括驗(yàn)證當(dāng)前操作者是否有權(quán)執(zhí)行虛擬機(jī)遷移的步 驟,只有在驗(yàn)證結(jié)果為是時(shí),才進(jìn)行步驟301 。 步驟302,現(xiàn)場管理裝置獲取各物理機(jī)上與虛擬機(jī)有關(guān)的狀態(tài)參數(shù)。 步驟303,現(xiàn)場管理裝置確定目的物理機(jī),并且將源物理機(jī)上的虛擬機(jī)遷移到目的
物理機(jī)。 可以通過接收對目的物理機(jī)的指定來確定目的物理機(jī)標(biāo)識,也可以是根據(jù)所述狀 態(tài)參數(shù)確定目的物理機(jī)。以下詳細(xì)描述根據(jù)所述狀態(tài)參數(shù)確定目的物理機(jī)的過程。
首先從現(xiàn)場管理裝置所管理的所有物理機(jī)中除了源物理機(jī)以外的其他物理機(jī)中 選擇一部分物理機(jī)作為候選目的物理機(jī)。例如,在現(xiàn)場管理裝置位于機(jī)架上的情況下,從機(jī) 架中除了源物理機(jī)以外的其他物理機(jī)中選擇一部分作為候選目的物理機(jī)。之所以要先進(jìn)行 候選目的物理機(jī)的選擇,是因?yàn)槟康奈锢頇C(jī)在接收虛擬機(jī)時(shí)需要消耗比較大的計(jì)算和存儲 資源,如果一臺物理機(jī)的當(dāng)前負(fù)載率過高,則原則上來講不適于作為目的物理機(jī)??梢愿鶕?jù) 步驟302中所獲取的狀態(tài)參數(shù),判斷某臺物理機(jī)的當(dāng)前負(fù)載率是否低于第一閾值。如果某 臺物理機(jī)的當(dāng)前負(fù)載率低于第一閾值,則將該物理機(jī)作為候選目的物理機(jī)。但是由于物理 機(jī)負(fù)載率是隨著時(shí)間變化的,因此當(dāng)前負(fù)載率并非選擇目的物理機(jī)的決定因素。在現(xiàn)場管 理裝置所管理的物理機(jī)較少的情況下,可以不用考慮當(dāng)前的物理機(jī)負(fù)載率,或者說除源物 理機(jī)以外的其他物理機(jī)均為候選目的物理機(jī),即本步驟是可以省略的。 在確定了候選目的物理機(jī)之后,根據(jù)步驟302中所獲取的狀態(tài)參數(shù),判斷任意一 臺候選目的物理機(jī)是否能夠向源物理機(jī)上的任意一個(gè)虛擬機(jī)提供足夠多的資源。如上所 述,狀態(tài)參數(shù)包括向虛擬機(jī)分配了多少硬件資源。現(xiàn)場管理裝置通過來自源物理機(jī)的狀態(tài) 參數(shù),可以確定源物理機(jī)上為各待遷移虛擬機(jī)分配了多少硬件資源;現(xiàn)場管理裝置還可以 通過某候選目的物理機(jī)的狀態(tài)參數(shù)確定當(dāng)前候選目的物理機(jī)上已經(jīng)存在的虛擬機(jī)已經(jīng)占 用了多少硬件資源,從而確定該候選目的物理機(jī)上是否有足夠多的剩余硬件資源分配給當(dāng) 前待遷移虛擬機(jī)。如果該候選目的物理機(jī)能夠向該虛擬機(jī)提供足夠的硬件資源,則將該候 選目的物理機(jī)作為實(shí)際的目的物理機(jī),將該虛擬機(jī)遷移到該目的物理機(jī)上。
在候選物理機(jī)數(shù)量較大的情況下,現(xiàn)場管理裝置可以采取不同的策略來優(yōu)化虛擬 機(jī)的遷移。比如說,綜合考慮各待遷移虛擬機(jī)所要求占用的資源和各候選目的物理機(jī)上已 經(jīng)被占用的資源,讓遷移完成后各目的物理機(jī)上的資源占用比例比較均衡。又比如說,首先 選擇已經(jīng)被占用的資源比例最小的候選目的物理機(jī)作為實(shí)際的目的物理機(jī),并且向該目的 物理機(jī)上遷移盡可能多的虛擬機(jī),直到所剩余的硬件資源不足夠分配給源物理機(jī)上任意一 個(gè)剩余的虛擬機(jī)為止。 步驟304,現(xiàn)場管理裝置指示源物理機(jī)上的虛擬機(jī)已經(jīng)遷移完畢,可以對源物理機(jī) 進(jìn)行硬件維護(hù)。 雖然已經(jīng)圖示和描述了本發(fā)明的若干示例性實(shí)施例,不過本領(lǐng)域技術(shù)人員可以理 解的是,在不偏離本發(fā)明原則和精神的前提下,可以對這些實(shí)施例進(jìn)行改變,本發(fā)明的范圍
9由權(quán)利要求書及其等價(jià)變換所限定'
權(quán)利要求
一種用于管理虛擬機(jī)的裝置,通過專用物理電氣連接連接到至少兩臺物理機(jī),其中至少一臺物理機(jī)上的虛擬機(jī)需要遷移到至少一臺目的物理機(jī),該裝置包括輸入模塊,用于接收外部輸入;操作模塊,被配置為根據(jù)通過所述輸入模塊的現(xiàn)場外部輸入確定源物理機(jī),并進(jìn)一步確定目的物理機(jī),以便控制遷移模塊的工作;和遷移模塊,被配置為將虛擬機(jī)從源物理機(jī)遷移到目的物理機(jī)。
2. 根據(jù)權(quán)利要求1所述的裝置,其中所述操作模塊被配置為根據(jù)通過所述輸入模塊的 現(xiàn)場外部輸入確定目的物理機(jī)。
3. 根據(jù)權(quán)利要求1所述的裝置,進(jìn)一步包括獲取模塊,被配置為獲取所連接的物理機(jī)上與虛擬機(jī)有關(guān)的狀態(tài)參數(shù); 其中所述操作模塊被配置為根據(jù)所述狀態(tài)參數(shù)確定目的物理機(jī)。
4. 根據(jù)權(quán)利要求3所述的裝置,進(jìn)一步包括位于所述裝置外殼上的指示模塊,被配置為指示源物理機(jī)上的虛擬機(jī)是否已經(jīng)全部遷移。
5. 根據(jù)權(quán)利要求4所述的裝置,其中 所述指示模塊進(jìn)一步被配置為顯示所述狀態(tài)參數(shù)。
6. 根據(jù)權(quán)利要求3所述的裝置,進(jìn)一步包括自動(dòng)斷電模塊,被配置為在虛擬機(jī)已經(jīng)全部遷移的情況下對源物理機(jī)斷電。
7. 根據(jù)權(quán)利要求1所述的裝置,其中所述專用物理電氣連接為采用適合于短距離通信 的電氣標(biāo)準(zhǔn)設(shè)置的連接。
8. 根據(jù)權(quán)利要求1或7所述的裝置,其中所述專用物理電氣連接為串行通信線路。
9. 一種管理虛擬機(jī)的系統(tǒng),包括 至少兩臺物理機(jī);如權(quán)利要求1到8中任意一項(xiàng)所述的用于管理虛擬機(jī)的裝置。
10. 根據(jù)權(quán)利要求9所述的系統(tǒng),其中該系統(tǒng)是刀片服務(wù)器系統(tǒng),所述用于管理虛擬機(jī) 的裝置為位于所述刀片服務(wù)器系統(tǒng)的背板上的芯片和外圍模塊。
11. 根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述專用物理電氣連接設(shè)置于所述背板上。
12. —種管理虛擬機(jī)的系統(tǒng),該系統(tǒng)是刀片服務(wù)器系統(tǒng)和機(jī)架式服務(wù)器系統(tǒng)中的任意 一種,該系統(tǒng)包括至少兩臺物理機(jī),其中至少一臺物理機(jī)上的虛擬機(jī)需要遷移到至少一臺目的物理機(jī);和連接到至少兩臺物理機(jī)的用于管理虛擬機(jī)的裝置,該裝置包括 輸入模塊,用于接收外部輸入;操作模塊,被配置為根據(jù)通過所述輸入模塊的現(xiàn)場外部輸入確定源物理機(jī),并進(jìn)一步 確定目的物理機(jī),以便控制遷移模塊的工作;禾口遷移模塊,被配置為將虛擬機(jī)從源物理機(jī)遷移到目的物理機(jī)。
13. —種在包括至少兩臺物理機(jī)的系統(tǒng)中管理虛擬機(jī)的方法,該方法包括 確定源物理機(jī)和目的物理機(jī);通過專用物理電氣連接控制所述源物理機(jī)和所述目的物理機(jī),從而將所述源物理機(jī)上的虛擬機(jī)遷移到所述目的物理機(jī)上。
14. 根據(jù)權(quán)利要求13所述的方法,其中確定源物理機(jī)和目的物理機(jī)的步驟包括通過接收對目的物理機(jī)的指定來確定源物理機(jī)和目的物理機(jī)。
15. 根據(jù)權(quán)利要求13所述的方法,其中確定源物理機(jī)和目的物理機(jī)的步驟包括通過接收對源物理機(jī)的指定來確定源物理機(jī);禾口通過所述專用物理電氣連接獲取各物理機(jī)上與虛擬機(jī)有關(guān)的狀態(tài)參數(shù),并根據(jù)所述狀態(tài)參數(shù)確定目的物理機(jī)。
16. 根據(jù)權(quán)利要求15所述的方法,其中根據(jù)所述狀態(tài)參數(shù)確定目的物理機(jī)的步驟包括根據(jù)所述狀態(tài)參數(shù),判斷任意一臺候選目的物理機(jī)是否能夠向源物理機(jī)上的任意一個(gè)虛擬機(jī)提供足夠多的資源;禾口響應(yīng)于所述判斷結(jié)果為是,將該候選目的物理機(jī)作為目的物理機(jī)。
17. 根據(jù)權(quán)利要求16所述的方法,其中在所述判斷步驟之前,進(jìn)一步包括選擇當(dāng)前負(fù)載率低于第一閾值的物理機(jī)作為候選目的物理機(jī)。
18. 根據(jù)權(quán)利要求13所述的方法,其中所述系統(tǒng)是刀片服務(wù)器系統(tǒng),所述通過所述專用物理電氣連接控制所述源物理機(jī)和所述目的物理機(jī)的步驟包括通過刀片服務(wù)器背板上的專用物理電氣連接控制所述源物理機(jī)和所述目的物理機(jī)。
19. 根據(jù)權(quán)利要求13或18所述的方法,其中通過所述專用物理電氣連接控制所述源物理機(jī)和所述目的物理機(jī)的步驟包括通過采用適合于短距離通信的電氣標(biāo)準(zhǔn)設(shè)置的專用物理電氣連接控制所述源物理機(jī)和所述目的物理機(jī)。
20. 根據(jù)權(quán)利要求13或18所述的方法,其中通過所述專用物理電氣連接控制所述源物理機(jī)和所述目的物理機(jī)的步驟包括通過串行通信線路控制所述源物理機(jī)和所述目的物理機(jī)。
全文摘要
本發(fā)明公開了用于管理虛擬機(jī)的裝置、系統(tǒng)和方法。所述裝置通過專用物理電氣連接連接到至少兩臺物理機(jī),其中至少一臺物理機(jī)上的虛擬機(jī)需要遷移到至少一臺目的物理機(jī),該裝置包括輸入模塊,用于接收外部輸入;操作模塊,被配置為根據(jù)通過所述輸入模塊的現(xiàn)場外部輸入確定源物理機(jī),并進(jìn)一步確定目的物理機(jī),以便控制遷移模塊的工作;和遷移模塊,被配置為將虛擬機(jī)從源物理機(jī)遷移到目的物理機(jī)。按照本發(fā)明實(shí)施例的技術(shù)方案,復(fù)雜信息管理系統(tǒng)中的硬件工程師可以在無系統(tǒng)管理員參與的情況下自行將源物理機(jī)上的虛擬機(jī)遷移到目的物理機(jī),進(jìn)而對源物理機(jī)進(jìn)行硬件維護(hù)。這樣,可以減少維護(hù)系統(tǒng)硬件的人力成本,還可以更快地對系統(tǒng)的硬件問題作出響應(yīng)。
文檔編號G06F9/455GK101739287SQ200810181449
公開日2010年6月16日 申請日期2008年11月13日 優(yōu)先權(quán)日2008年11月13日
發(fā)明者劉亮, 王慶波, 王浩, 陳瀅 申請人:國際商業(yè)機(jī)器公司