亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

虛擬機遷移方法和裝置制造方法

文檔序號:6493476閱讀:188來源:國知局
虛擬機遷移方法和裝置制造方法
【專利摘要】本發(fā)明實施例提供一種虛擬機遷移方法和裝置。所述方法包括:通過獲取本機中各虛擬機的內存信息,當本機的負載過重時產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息,然后比較虛擬機的內存信息和候選服務器的內存信息,以確定本機中需要遷移的虛擬機和在所述候選服務器中選擇目標服務器,并將本機中選擇的需要遷移的虛擬機遷移至選擇的目標服務器。本發(fā)明實施例保證了虛擬機遷移后系統(tǒng)具有非常高的內存利用率,不會出現(xiàn)對物理內存需求的急劇增加,而且保證了在服務器內存負載過重時,遷移虛擬機后服務器能夠獲得所期望的空閑內存。
【專利說明】虛擬機遷移方法和裝置
【技術領域】
[0001 ] 本發(fā)明實施例涉及數(shù)據(jù)處理技術,尤其涉及一種虛擬機遷移方法和裝置。
【背景技術】
[0002]隨著虛擬化技術的蓬勃發(fā)展,數(shù)據(jù)中心越來越多的采用虛擬機提供服務,并且在數(shù)據(jù)中心中,內存往往成為虛擬機整合的瓶頸,虛擬化環(huán)境下的內存共享技術近幾年得到了迅速發(fā)展并被廣泛應用。為了使數(shù)據(jù)中心的負載平衡或者有效利用服務器資源,常常需要遷移虛擬機。虛擬機的遷移是指在由多個服務器構成的集群中,將源服務器上的虛擬機(包括操作系統(tǒng)和應用程序)移動到目標服務器,并且能夠在目標服務器上繼續(xù)正常運行。虛擬化環(huán)境下的內存共享技術是指,在物理內存中以頁框為操作單位,通過將物理內存中內容一樣的頁框僅保留一份,從而消除冗余,增大物理內存的利用率,運行更多的虛擬機。
[0003]為了使數(shù)據(jù)中心的負載平衡或者有效利用服務器資源,都需要做出遷移決策。當前的遷移決策方案基本為:監(jiān)控每臺服務器的資源利用情況,例如監(jiān)控CPU、內存和網(wǎng)絡帶寬等負載情況,將負載過重的服務器上的虛擬機遷往負載較輕的服務器,以達到負載平衡。
[0004]然而,上述方案對于采用內存共享技術的虛擬化環(huán)境是不適合的,決策得出的方案有時不能達到最優(yōu)效果,有時甚至不能達到預期的效果。首先是,無法保證遷移后各服務器構成的集群中具有較高的內存利用率,反而可能出現(xiàn)集群的物理內存需求量的大幅上升。其次,當由于內存資源緊張而遷移虛擬機時,無法保證遷移之后,獲得期望的空閑內存。

【發(fā)明內容】

[0005]本發(fā)明實施例提供一種虛擬機遷移方法和裝置,以提高虛擬機遷移后集群具有較高的內存利用率。
[0006]本發(fā)明實施例第一方面,提供一種虛擬機遷移方法,包括:
[0007]獲取本機中各虛擬機的內存信息;
[0008]根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息;
[0009]根據(jù)所述各虛擬機的內存信息和候選服務器的內存信息,在所述候選服務器中選擇目標服務器;
[0010]將本機中的虛擬機遷移至選擇的目標服務器。
[0011]本發(fā)明實施例第一方面的第一種可能的實現(xiàn)方式,所述候選服務器的內存信息包括服務器內存哈希表;
[0012]虛擬機內存信息包括虛擬機內存哈希表、虛擬機內存占用量和虛擬機獨占物理內存量。
[0013]結合本發(fā)明實施例第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,根據(jù)所述各虛擬機的內存信息和候選服務器的內存信息,在所述候選服務器中選擇目標服務器包括:
[0014]根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機;[0015]根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器。
[0016]結合本發(fā)明實施例第一方面的第二種可能的實現(xiàn)方式,在第一方面的第三種可能的實現(xiàn)方式中,根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機包括:
[0017]選擇虛擬機內存占用量小于或等于各候選服務器的空閑內存量的虛擬機;
[0018]將所選擇的各虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表進行比較,獲取各內存共享量;
[0019]選擇能和候選服務器產(chǎn)生內存共享量最大的虛擬機作為待遷移虛擬機。
[0020]結合本發(fā)明實施例第一方面的第二種可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式中,根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器包括:
[0021]將待遷移虛擬機的虛擬機內存哈希表和候選服務器的服務器哈希表進行比較,獲取內存共享量;
[0022]選擇能和待遷移虛擬機能產(chǎn)生內存共享量最大的候選服務器作為目標服務器。
[0023]結合本發(fā)明實施例第一方面,在第一方面的第五種可能的實現(xiàn)方式中,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息包括:
[0024]根據(jù)本機中各虛擬機的獨占物理內存使用情況產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息。
[0025]結合本發(fā)明實施例第一方面,在第一方面的第六種可能的實現(xiàn)方式中,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息包括:
[0026]根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;
[0027]通過本機中的發(fā)送線程將所述虛擬機遷移請求廣播至所在服務器集群中的所有服務器;
[0028]通過本機中的接收線程接收候選服務器返回的遷移響應及候選服務器的內存信
肩、O
[0029]結合本發(fā)明實施例第一方面的第六種可能的實現(xiàn)方式,在第一方面的第七種可能的實現(xiàn)方式中,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求包括:
[0030]識別本機的CPU利用率、網(wǎng)絡利用率和內存利用率;
[0031]當識別到本機的CPU利用率或網(wǎng)絡利用率達到第一設定門限值時,將本機各虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中;
[0032]當識別到本機的內存利用率達到第二設定門限值時,將本機中獨占物理內存量最多的虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中。
[0033]結合本發(fā)明實施例第一方面,在第一方面的第八種可能的實現(xiàn)方式中,還包括:
[0034]通過本機的接收線程監(jiān)聽其它服務器發(fā)送的虛擬機遷移請求;
[0035]當判斷本機能夠滿足所述虛擬機遷移請求時,產(chǎn)生并返回遷移響應和本機的內存信息,作為候選服務器及其內存信息。
[0036]結合本發(fā)明實施例第一方面,在第一方面的第九種可能的實現(xiàn)方式中,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息包括:[0037]根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;
[0038]將所述虛擬機遷移請求上報至遷移授權方;
[0039]接收所述遷移授權方返回的候選服務器及其內存信息。
[0040]本發(fā)明實施例的第二方面提供一種虛擬機遷移裝置,包括:
[0041]虛擬機內存獲取模塊,用于獲取本機中各虛擬機的內存信息;
[0042]候選服務器獲取模塊,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息;
[0043]目標服務器選擇模塊,用于根據(jù)所述各虛擬機的內存信息和候選服務器的內存信息,在所述候選服務器中選擇目標服務器;
[0044]虛擬機遷移模塊,用于將本機中的待遷移虛擬機遷移至選擇的目標服務器。
[0045]本發(fā)明實施例第二方面的第一種實現(xiàn)方式,所述候選服務器的內存信息包括服務器內存哈希表;
[0046]虛擬機內存信息包括虛擬機內存哈希表、虛擬機內存占用量和虛擬機獨占物理內存量。
[0047]結合本發(fā)明實施例第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,目標服務器選擇模塊包括:
[0048]虛擬機選擇單元,用于根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機;
[0049]服務器選擇單元,用于根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器。
[0050]結合本發(fā)明實施例第二方面的第二種可能的實現(xiàn)方式,在第二方面的第三種可能的實現(xiàn)方式中,虛擬機選擇單元包括:
[0051]第一選擇子單元,用于選擇虛擬機內存占用量小于或等于各候選服務器的空閑內存量的虛擬機;
[0052]共享內存比較子單元,用于將所選擇的各虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表進行比較,獲取各內存共享量;
[0053]第二選擇子單元,用于選擇能和候選服務器產(chǎn)生內存共享量最大的虛擬機作為待遷移虛擬機。
[0054]結合本發(fā)明實施例第二方面的第二種可能的實現(xiàn)方式,在第二方面的第四種可能的實現(xiàn)方式中,服務器選擇單元包括:
[0055]內存共享量比較子單元,用于將待遷移虛擬機的虛擬機內存哈希表和候選服務器的服務器哈希表進行比較,獲取內存共享量;
[0056]目標服務器選擇子單元,用于選擇能和待遷移虛擬機能產(chǎn)生內存共享量最大的候選服務器作為目標服務器。
[0057]結合本發(fā)明實施例第二方面,在第二方面的第五種可能的實現(xiàn)方式中,候選服務器獲取模塊具體用于根據(jù)本機中各虛擬機的獨占物理內存使用情況產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息。。
[0058]結合本發(fā)明實施例第二方面,在第二方面的第六種可能的實現(xiàn)方式中,候選服務器獲取模塊包括:[0059]請求產(chǎn)生單元,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;
[0060]請求廣播單元,用于通過本機中的發(fā)送線程將所述虛擬機遷移請求廣播至所在服務器集群中的所有服務器;
[0061]響應接收單元,用于通過本機中的接收線程接收候選服務器返回的遷移響應及候選服務器的內存信息。。
[0062]結合本發(fā)明實施例第二方面,在第二方面的第七種可能的實現(xiàn)方式中,請求產(chǎn)生單元包括:
[0063]負載類型識別子單元,用于識別本機的CPU利用率、網(wǎng)絡利用率和內存利用率;
[0064]比較第一門限值子單元,用于當識別到本機的CPU利用率或網(wǎng)絡利用率達到第一設定門限值時,將本機各虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中;
[0065]比較第二門限值子單元,用于當識別到本機的內存利用率達到第二設定門限值時,將本機中獨占物理內存量最多的虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中。
[0066]結合本發(fā)明實施例第二方面,在第二方面的第八種可能的實現(xiàn)方式中,還包括:
[0067]請求接收模塊,用于通過本機的接收線程監(jiān)聽其它服務器發(fā)送的虛擬機遷移請求;
[0068]響應發(fā)送模塊,用于當判斷本機能夠滿足所述虛擬機遷移請求時,產(chǎn)生并返回遷移響應和本機的內存信息,作為候選服務器及其內存信息。
[0069]結合本發(fā)明實施例第二方面,在第二方面的第九種可能的實現(xiàn)方式中,候選服務器獲取模塊包括:
[0070]請求產(chǎn)生單元,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;
[0071]請求上報單元,用于將所述虛擬機遷移請求上報至遷移授權方;
[0072]服務器接收單元,用于接收所述遷移授權方返回的候選服務器及其內存信息。
[0073]本發(fā)明各實施例提供的虛擬機遷移方法和裝置,通過獲取本機中各虛擬機的內存信息,當本機的負載過重時產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息,然后比較虛擬機的內存信息和候選服務器的內存信息,以確定本機中需要遷移的虛擬機和在所述候選服務器中選擇目標服務器,并將本機中選擇的需要遷移的虛擬機遷移至選擇的目標服務器,從而解決了現(xiàn)有技術中虛擬機遷移后可能導致系統(tǒng)內存利用率降低,系統(tǒng)物理內存的大量消耗以及遷移的虛擬機所在的服務器無法獲得所期望的空閑內存的問題。
【專利附圖】

【附圖說明】
[0074]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0075]圖1為本發(fā)明虛擬機遷移方法實施例一的流程圖;
[0076]圖2為本發(fā)明虛擬機遷移方法實施例二的流程圖;
[0077]圖3為本發(fā)明虛擬機遷移方法實施例三的流程圖;
[0078]圖4為本發(fā)明虛擬機遷移裝置實施例一的結構示意圖;
[0079]圖5為本發(fā)明虛擬機遷移裝置實施例二的結構示意圖;[0080]圖6為本發(fā)明虛擬機遷移裝置實施例三的結構示意圖;
[0081]圖7為本發(fā)明虛擬機遷移裝置實施例四的結構示意圖;
[0082]圖8為本發(fā)明虛擬機遷移裝置實施例五的結構示意圖;
[0083]圖9為本發(fā)明虛擬機遷移裝置實施例六的結構示意圖。
【具體實施方式】
[0084]為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0085]圖1為本發(fā)明虛擬機遷移方法實施例一的流程圖,本實施例適用于多臺服務器構成的集群中,將虛擬機在服務器之間進行遷移的情況。本實施例的虛擬機遷移方法可以由配置在各服務器中的虛擬機遷移裝置來執(zhí)行,該裝置可以采用硬件和/或軟件來實現(xiàn)。參照圖1,本實施例的虛擬機遷移方法包括如下步驟:
[0086]步驟101、獲取本機中各虛擬機的內存信息;
[0087]虛擬機的內存信息用于表征該虛擬機的內存使用情況,優(yōu)選是包括虛擬機內存哈希表、虛擬機內存占用量和虛擬機獨占物理內存量等信息。所謂虛擬機內存哈希表,是指該虛擬機所占用的內存數(shù)據(jù)基于哈希算法轉換為哈希結果后形成的哈希表。虛擬機內存占用量是指該虛擬機所占用的內存總量,獨占物理內存量是指該虛擬機的內存占用量除去與其它虛擬機共享內存之外剩余的、由該虛擬機獨占的內存量。
[0088]步驟102、根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存
信息;
[0089]在步驟102中,負載狀態(tài)可以是CPU、網(wǎng)絡帶寬和內存等服務器所能利用的資源情況。服務器在負載較重時產(chǎn)生虛擬機遷移請求。在獲知所有可遷移的候選服務器的同時還獲取各候選服務器的內存信息,即能表達其內存使用情況的信息,例如空閑內存量、該候選服務器的內存哈希表等。
[0090]步驟103、根據(jù)各虛擬機的內存信息和候選服務器的內存信息,在候選服務器中選擇目標服務器;
[0091]步驟104、將本機中的待遷移虛擬機遷移至選擇的目標服務器。
[0092]具體而言,通過為每臺虛擬機建立虛擬機內存哈希表,并獲取虛擬機內存占用量和虛擬機獨占物理內存量,以在產(chǎn)生虛擬機遷移請求時,將虛擬機內存信息和候選服務器的內存信息進行比較,從而選擇需要遷移的虛擬機及其要遷往的目標服務器。待遷移虛擬機可以是用戶指定的,也可以優(yōu)選是根據(jù)負載情況自動選擇的能減輕負載的虛擬機。比較的方式可以根據(jù)需求進行設定,使得執(zhí)行虛擬機遷移后的服務器甚至服務器集群的內存利用率提高,或者達到預期的遷移目標。
[0093]本發(fā)明實施例通過在虛擬機遷移過程中,考慮待遷移虛擬機和候選服務器的內存信息,從而選擇合適的目標服務器,提高了虛擬機遷移后服務器的內存利用率,保證了遷移的虛擬機所在的服務器能夠獲得所期望的空閑內存量。
[0094]圖2為本發(fā)明虛擬機遷移方法實施例二的流程圖,本發(fā)明實施例以上述實施例為基礎,進一步進行了優(yōu)化,參照圖2,本實施例中,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息的操作具體包括如下步驟:
[0095]步驟1021、根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求。
[0096]典型的情況是,當本機的負載過重時,產(chǎn)生虛擬機遷移請求。負載除了可以考慮CPU、網(wǎng)絡資源利用率之外,優(yōu)選是根據(jù)本機中各虛擬機的獨占物理內存使用情況產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息。例如,各虛擬機的獨占物理內存量達到設定門限值時就可以觸發(fā)產(chǎn)生虛擬機遷移情況。
[0097]具體執(zhí)行的操作可以為:
[0098]步驟1021a、識別本機的CPU利用率、網(wǎng)絡利用率和內存利用率;
[0099]步驟1021b、當識別到本機的CPU利用率或網(wǎng)絡利用率達到第一設定門限值時,將本機各虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中;
[0100]步驟1021c、當識別到本機的內存利用率達到第二設定門限值時,將本機中獨占物理內存量最多的虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中;
[0101]上述步驟中,可以綜合考慮各種資源使用情況,也可以獨立考慮CPU、網(wǎng)絡和內存利用率的情況。將本機的負載情況攜帶在虛擬機遷移請求中,可以令其他服務器考慮是否可滿足此遷移需求。例如,獨占物理內存量最多的虛擬機內存信息攜帶在遷移請求中,可令其他服務器考慮自身的空閑內存是否足以承擔遷移后的虛擬機。
[0102]步驟1022、通過本機中的發(fā)送線程將所述虛擬機遷移請求廣播至所在服務器集群中的所有服務器;
[0103]步驟1023、通過本機中的接收線程接收候選服務器返回的遷移響應及候選服務器的內存信息。
[0104]上述步驟中,其它服務器的接收線程監(jiān)聽其它服務器發(fā)送的虛擬機遷移請求,該服務器可以根據(jù)自身負載狀態(tài)判斷自身是否滿足虛擬機遷移請求。
[0105]當服務器識別到自身負載狀態(tài)低于某一設定門限值時,則該服務器產(chǎn)生并通過發(fā)送線程返回遷移響應及其內存信息,作為候選服務器。
[0106]當服務器負載狀態(tài)未低于某一設定門限值時,該服務器忽略收到的數(shù)據(jù)并返回無效值。
[0107]即每個服務器既作為遷移者,又作為被遷移者,既能夠產(chǎn)生并發(fā)送遷移請求,也能返回遷移響應。所以,該方法還可以包括:通過本機的接收線程監(jiān)聽其它服務器發(fā)送的虛擬機遷移請求;當判斷本機能夠滿足所述虛擬機遷移請求時,產(chǎn)生并返回遷移響應和本機的內存信息,作為候選服務器及其內存信息。所謂能滿足遷移請求,通常是指該服務器的負載情況能夠滿足遷移請求的需求。
[0108]本發(fā)明實施例的技術方案,通過以發(fā)送線程和接收線程來收發(fā)遷移請求和遷移響應,使得各個服務器能夠從多個服務器中選擇目標服務器。
[0109]當然,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息的操作也可以是:根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;將所述虛擬機遷移請求上報至遷移授權方;接收所述遷移授權方返回的候選服務器及其內存信息。即遷移授權方可作為集中管理者,統(tǒng)一為各服務器收發(fā)遷移請求和遷移響應。
[0110]圖3為本發(fā)明虛擬機遷移方法實施例三的流程圖,本發(fā)明實施例以上述實施例一為基礎,進一步進行了優(yōu)化,參照圖3,本實施例中,虛擬機內存信息優(yōu)選是包括虛擬機內存哈希表、虛擬機內存占用量和虛擬機獨占物理內存量,候選服務器的內存信息包括服務器內存哈希表,則根據(jù)所述各虛擬機的內存信息和候選服務器的內存信息,在所述候選服務器中選擇目標服務器具體操作包括如下步驟:
[0111]步驟310、根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機;
[0112]上述技術方案,首先可以在多個虛擬機中選擇最適合遷移的待遷移虛擬機,此選擇的依據(jù)可以是候選服務器具備遷移的能力,以及能夠與候選服務器具有最多共享量的虛擬機,共享量最大表明該虛擬機的遷移將能夠使用更多的共享內存,而占用更少的獨占物理內存。
[0113]則步驟310可以具體為:
[0114]步驟311、選擇虛擬機內存占用量小于或等于各候選服務器的空閑內存量的虛擬機;
[0115]步驟312、將所選擇的各虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表進行比較,獲取各內存共享量;
[0116]步驟313、選擇能和候選服務器產(chǎn)生內存共享量最大的虛擬機作為待遷移虛擬機。
[0117]步驟320、根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器。
[0118]上述步驟320是在確定待遷移虛擬機之后進一步選擇目標服務器,其依據(jù)也可以是內存共享量的最大化,則步驟320可包括:
[0119]步驟321、將待遷移虛擬機的虛擬機內存哈希表和候選服務器的服務器哈希表進行比較,獲取內存共享量;
[0120]步驟322、選擇能和待遷移虛擬機能產(chǎn)生內存共享量最大的候選服務器作為目標服務器。
[0121]本發(fā)明實施例通過在虛擬機遷移過程中,首先比較待遷移虛擬機的內存占用量和候選服務器的空閑內存量,然后將選擇的待遷移虛擬機的虛擬機哈希表和候選服務器的服務器哈希表進行比較,獲取內存共享量,并根據(jù)內存共享量確定需要遷移的虛擬機和需要遷移的虛擬機要遷往的目標服務器。從而提高了虛擬機遷移后服務器的內存利用率,避免了遷移后可能出現(xiàn)的對物理內存需求量的急劇上升。
[0122]圖4為本發(fā)明虛擬機遷移裝置實施例一的結構示意圖,本實施例適用于多臺服務器構成的集群中,將虛擬機在服務器之間進行遷移的情況。該裝置可以采用硬件和/或軟件來實現(xiàn),配置在服務器中。參照圖4,該實施例虛擬機遷移裝置包括如下模塊:虛擬機內存獲取模塊401、候選服務器獲取模塊402、目標服務器選擇模塊403和虛擬機遷移模塊404。
[0123]其中,虛擬機內存獲取模塊401用于獲取本機中各虛擬機的內存信息,虛擬機的內存信息優(yōu)選是包括虛擬機內存哈希表、虛擬機內存占用量和虛擬機獨占物理內存量;候選服務器獲取模塊402用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息,所述候選服務器的內存信息可以包括服務器內存哈希表;目標服務器選擇模塊403用于根據(jù)各虛擬機的內存信息和候選服務器的內存信息,在候選服務器中選擇目標服務器;虛擬機遷移模塊404用于將本機中的待遷移虛擬機遷移至選擇的目標服務器。
[0124]該候選服務器獲取模塊402優(yōu)選用于根據(jù)本機中各虛擬機的獨占物理內存使用情況產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息。
[0125]上述的虛擬機遷移裝置,優(yōu)選是候選服務器獲取模塊402包括:請求產(chǎn)生單元4021、請求廣播單元4022和響應接收單元4023。其中,請求產(chǎn)生單元4021,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;請求廣播單元4022,用于通過本機中的發(fā)送線程將所述虛擬機遷移請求廣播至所在服務器集群中的所有服務器;響應接收單元4023,用于通過本機中的接收線程接收候選服務器返回的遷移響應及候選服務器的內存信息。
[0126]上述方案中,該裝置還可以包括:請求接收模塊405和響應發(fā)送模塊406。其中,請求接收模塊405用于通過本機的接收線程監(jiān)聽其它服務器發(fā)送的虛擬機遷移請求;響應發(fā)送模塊406用于當判斷本機能夠滿足所述虛擬機遷移請求時,產(chǎn)生并返回遷移響應和本機的內存信息,作為候選服務器及其內存信息。
[0127]在圖4所示實施例的基礎上,圖5為本發(fā)明虛擬機遷移裝置實施例二的結構示意圖,參照圖5,目標服務器選擇模塊403包括如下單元:虛擬機選擇單元4031和服務器選擇單元4032。
[0128]其中,虛擬機選擇單元4031用于根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機;服務器選擇單元4032用于根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器。
[0129]本發(fā)明實施例提供的虛擬機遷移裝置,通過各待遷移虛擬機的內存信息和候選服務器的內存信息,在候選服務器中選擇目標服務器,提高了遷移虛擬機后服務器的內存利用率。
[0130]圖6為本發(fā)明虛擬機遷移裝置實施例三的結構示意圖,參照圖6,更詳細的,虛擬機選擇單元4031可包括如下子單元:第一選擇子單元4031a、共享內存比較子單元4031b和第二選擇子單元4031c。
[0131]其中,第一選擇子單元4031a用于選擇虛擬機內存占用量小于或等于各候選服務器的空閑內存量的虛擬機;共享內存比較子單元4031b用于將所選擇的各虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表進行比較,獲取各內存共享量;第二選擇子單元4031c用于選擇能和候選服務器產(chǎn)生內存共享量最大的虛擬機作為待遷移虛擬機。
[0132]本發(fā)明實施例提供的虛擬機遷移裝置,把虛擬機內存占用量和各候選服務器的空閑內存量進行比較選擇符合條件的虛擬機,把選擇的符合條件的虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表進行比較,獲取內存共享量,再根據(jù)獲取的內存共享量選擇選中的需要遷移的虛擬機,提高了遷移虛擬機后服務器的內存利用率。
[0133]圖7為本發(fā)明虛擬機遷移裝置實施例四的結構示意圖,參照圖7,更詳細地,服務器選擇單元4032包括如下子單元:內存共享量比較子單元4032a和目標服務器選擇子單元4032b ο
[0134]其中,內存共享量比較子單元4032a用于將待遷移虛擬機的虛擬機內存哈希表和候選服務器的服務器哈希表進行比較,獲取內存共享量;目標服務器選擇子單元4032b用于選擇能和待遷移虛擬機能產(chǎn)生內存共享量最大的候選服務器作為目標服務器。
[0135]本發(fā)明實施例提供的虛擬機遷移裝置,通過比較待遷移虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表,根據(jù)獲取的最大的內存共享量選擇目標服務器,避免了服務器內存負載過重導致遷移虛擬機后無法獲得足夠的空閑內存,提高了遷移虛擬機后服務器的內存利用率。
[0136]圖8為本發(fā)明虛擬機遷移裝置實施例五的結構示意圖,參照圖8,候選服務器獲取模塊402可包括如下單元:請求產(chǎn)生單元4021、請求廣播單元4022和響應接收單元4023。
[0137]其中,請求產(chǎn)生單元4021用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;請求廣播單元4022用于通過本機中的發(fā)送線程將所述虛擬機遷移請求廣播至所在服務器集群中的所有服務器;響應接收單元4023用于通過本機中的接收線程接收候選服務器返回的遷移響應。
[0138]或者,候選服務器獲取模塊402也可包括:請求產(chǎn)生單元,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求;請求上報單元,用于將所述虛擬機遷移請求上報至遷移授權方;服務器接收單元,用于接收所述遷移授權方返回的候選服務器及其內存信息。
[0139]兩種方式可并列執(zhí)行,或結合實現(xiàn)。
[0140]本發(fā)明實施例提供的虛擬機遷移裝置,通過根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并廣播虛擬機遷移請求至候選服務器,候選服務器返回響應,避免了服務器內存負載過重導致遷移虛擬機后無法獲得足夠的空閑內存。
[0141]圖9為本發(fā)明虛擬機遷移裝置實施例六的結構示意圖,參照圖9,請求產(chǎn)生單元4021可包括如下子單元:負載類型識別子單元402la、比較第一門限值子單元402Ib和比較第二門限值子單元4021c。
[0142]其中,負載類型識別子單元4021a用于識別本機的CPU利用率、網(wǎng)絡利用率和內存利用率;比較第一門限值子單元4021b用于當識別到本機的CPU利用率或網(wǎng)絡利用率達到第一設定門限值時,將本機各虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中;比較第二門限值子單元4021c用于當識別到本機的內存利用率達到第二設定門限值時,將本機中獨占物理內存量最多的虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中。
[0143]本發(fā)明實施例提供的虛擬機遷移裝置,通過識別本機的CPU利用率、網(wǎng)絡利用率和內存利用率,判斷負載類型,根據(jù)負載類型產(chǎn)生虛擬機遷移請求,從而保證了虛擬機遷移后服務器可以獲得足夠的空閑內存。
[0144]本發(fā)明各實施例的虛擬機遷移裝置可用于執(zhí)行本發(fā)明任意實施例所提供的虛擬機遷移方法,具備相應的功能模塊和有益效果。
[0145]本領域普通技術人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質包括:R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。
[0146]最后應說明的是:以上各實施例僅用以說明本發(fā)明實施例的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明實施例進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明實施例各實施例技術方案的范圍。
【權利要求】
1.一種虛擬機遷移方法,其特征在于,包括: 獲取本機中各虛擬機的內存信息; 根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息; 根據(jù)所述各虛擬機的內存信息和候選服務器的內存信息,在所述候選服務器中選擇目標服務器; 將本機中的待遷移虛擬機遷移至選擇的目標服務器。
2.根據(jù)權利要求1所述的虛擬機遷移方法,其特征在于: 所述候選服務器的內存信息包括服務器內存哈希表; 虛擬機內存信息包括虛擬機內存哈希表、虛擬機內存占用量和虛擬機獨占物理內存量。
3.根據(jù)權利要求2所述的虛擬機遷移方法,其特征在于,根據(jù)所述各虛擬機的內存信息和候選服務器的內存信息,在所述候選服務器中選擇目標服務器包括: 根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機; 根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器。
4.根據(jù)權利要求3所述的虛擬機遷移方法,其特征在于,根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機包括: 選擇虛擬機內存占用量小于或等于各候選服務器的空閑內存量的虛擬機; 將所選擇的各虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表進行比較,獲取各內存共享量; 選擇能和候選服務器產(chǎn)生內存共享量最大的虛擬機作為待遷移虛擬機。
5.根據(jù)權利要求3所述的虛擬機遷移方法,其特征在于,根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器包括: 將待遷移虛擬機的虛擬機內存哈希表和候選服務器的服務器哈希表進行比較,獲取內存共享量; 選擇能和待遷移虛擬機能產(chǎn)生內存共享量最大的候選服務器作為目標服務器。
6.根據(jù)權利要求1所述的虛擬機遷移方法,其特征在于,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息包括: 根據(jù)本機中各虛擬機的獨占物理內存使用情況產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息。
7.根據(jù)權利要求1所述的虛擬機遷移方法,其特征在于,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息包括: 根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求; 通過本機中的發(fā)送線程將所述虛擬機遷移請求廣播至所在服務器集群中的所有服務器; 通過本機中的接收線程接收候選服務器返回的遷移響應及候選服務器的內存信息。
8.根據(jù)權利要求7所述的虛擬機遷移方法,其特征在于,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求包括: 識別本機的CPU利用率、網(wǎng)絡利用率和內存利用率;當識別到本機的CPU利用率或網(wǎng)絡利用率達到第一設定門限值時,將本機各虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中; 當識別到本機的內存利用率達到第二設定門限值時,將本機中獨占物理內存量最多的虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中。
9.根據(jù)權利要求7所述的虛擬機遷移方法,其特征在于,還包括: 通過本機的接收線程監(jiān)聽其它服務器發(fā)送的虛擬機遷移請求; 當判斷本機能夠滿足所述虛擬機遷移請求時,產(chǎn)生并返回遷移響應和本機的內存信息,作為候選服務器及其內存信息。
10.根據(jù)權利要求1所述的虛擬機遷移方法,其特征在于,根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息包括: 根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求; 將所述虛擬機遷移請求上報至遷移授權方; 接收所述遷移授權方返回的候選服務器及其內存信息。
11.一種虛擬機遷移裝置,其特征在于,包括: 虛擬機內存獲取模塊,用于獲取本機中各虛擬機的內存信息; 候選服務器獲取模塊,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息; 目標服務器選擇模塊,用于根據(jù)所 述各虛擬機的內存信息和候選服務器的內存信息,在所述候選服務器中選擇目標服務器; 虛擬機遷移模塊,用于將本機中的待遷移虛擬機遷移至選擇的目標服務器。
12.根據(jù)權利要求11所述的虛擬機遷移裝置,其特征在于: 所述候選服務器的內存信息包括服務器內存哈希表; 虛擬機內存信息包括虛擬機內存哈希表、虛擬機內存占用量和虛擬機獨占物理內存量。
13.根據(jù)權利要求12所述的虛擬機遷移裝置,其特征在于,目標服務器選擇模塊包括: 虛擬機選擇單元,用于根據(jù)各虛擬機的內存信息和所述候選服務器的內存信息,選擇待遷移虛擬機; 服務器選擇單元,用于根據(jù)選擇的待遷移虛擬機的內存信息和所述候選服務器的內存信息,在所述候選服務器中選擇目標服務器。
14.根據(jù)權利要求13所述的虛擬機遷移裝置,其特征在于,虛擬機選擇單元包括: 第一選擇子單元,用于選擇虛擬機內存占用量小于或等于各候選服務器的空閑內存量的虛擬機; 共享內存比較子單元,用于將所選擇的各虛擬機的虛擬機內存哈希表和候選服務器的服務器內存哈希表進行比較,獲取各內存共享量; 第二選擇子單元,用于選擇能和候選服務器產(chǎn)生內存共享量最大的虛擬機作為待遷移虛擬機。
15.根據(jù)權利要求13所述的虛擬機遷移裝置,其特征在于,服務器選擇單元包括: 內存共享量比較子單元,用于將待遷移虛擬機的虛擬機內存哈希表和候選服務器的服務器哈希表進行比較,獲取內存共享量;目標服務器選擇子單元,用于選擇能和待遷移虛擬機能產(chǎn)生內存共享量最大的候選服務器作為目標服務器。
16.根據(jù)權利要求11所述的虛擬機遷移裝置,其特征在于,候選服務器獲取模塊具體用于根據(jù)本機中各虛擬機的獨占物理內存使用情況產(chǎn)生虛擬機遷移請求,并獲取候選服務器及其內存信息。
17.根據(jù)權利要求11所述的虛擬機遷移裝置,其特征在于,候選服務器獲取模塊包括: 請求產(chǎn)生單元,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求; 請求廣播單元,用于通過本機中的發(fā)送線程將所述虛擬機遷移請求廣播至所在服務器集群中的所有服務器; 響應接收單元,用于通過本機中的接收線程接收候選服務器返回的遷移響應及候選服務器的內存信息。
18.根據(jù)權利要求17所述的虛擬機遷移裝置,其特征在于, 負載類型識別子單元,用于識別本機的CPU利用率、網(wǎng)絡利用率和內存利用率; 比較第一門限值子單元,用于當識別到本機的CPU利用率或網(wǎng)絡利用率達到第一設定門限值時,將本機各虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中; 比較第二門限值子單元,用于當識別到本機的內存利用率達到第二設定門限值時,將本機中獨占物理內存量最多的虛擬機的內存信息攜帶在產(chǎn)生的虛擬機遷移請求中。
19.根據(jù)權利要求17所述的虛擬機遷移裝置,其特征在于,還包括: 請求接收模塊,用于通過本機的接收線程監(jiān)聽其它服務器發(fā)送的虛擬機遷移請求;響應發(fā)送模塊,用于當判斷本機能夠滿足所述虛擬機遷移請求時,產(chǎn)生并返回遷移響應和本機的內存信息,作為候選服務器及其內存信息。
20.根據(jù)權利要求11所述的虛擬機遷移裝置,其特征在于,候選服務器獲取模塊包括: 請求產(chǎn)生單元,用于根據(jù)本機的負載狀態(tài)產(chǎn)生虛擬機遷移請求; 請求上報單元,用于將所述虛擬機遷移請求上報至遷移授權方; 服務器接收單元,用于接收所述遷移授權方返回的候選服務器及其內存信息。
【文檔編號】G06F9/48GK103888501SQ201210566520
【公開日】2014年6月25日 申請日期:2012年12月24日 優(yōu)先權日:2012年12月24日
【發(fā)明者】張義, 江濤, 侯銳, 張樂樂, 張立新 申請人:華為技術有限公司, 中國科學院計算技術研究所
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1