虛擬機(jī)遷移方法及裝置制造方法
【專利摘要】本發(fā)明涉及一種虛擬機(jī)遷移方法及裝置,所述方法包括:將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池,所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合;根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍;在所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。本發(fā)明提供了虛擬機(jī)遷移范圍統(tǒng)一模型,可以靈活地針對(duì)不同虛擬機(jī)設(shè)定不同的遷移范圍,簡(jiǎn)化并統(tǒng)一了虛擬機(jī)遷移的管控。
【專利說明】虛擬機(jī)遷移方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,尤其涉及一種虛擬機(jī)遷移方法及裝置。
【背景技術(shù)】
[0002]虛擬機(jī)動(dòng)態(tài)遷移(Live Migration)是服務(wù)器軟硬件解稱帶來的關(guān)鍵特性之一,分布式資源調(diào)度器(Distributed Resources Scheduler, DRS)基于該特性,實(shí)現(xiàn)了諸如負(fù)載均衡、硬件維護(hù)、節(jié)能分布式電源管理(Distributed Power Management, DPM)和高可用性(High Availability, HA)等終極(Killer級(jí))能力。但是,對(duì)于虛擬機(jī)可遷移范圍,一直沒有一個(gè)明確的定義,實(shí)現(xiàn)諸如虛擬機(jī)主機(jī)綁定,虛擬機(jī)可信遷移等,并沒有一個(gè)統(tǒng)一的模型,而是通過各自的技術(shù)手段實(shí)現(xiàn),這不利于對(duì)虛擬機(jī)遷移的管控,可能帶來各種安全隱患和法律風(fēng)險(xiǎn)。
[0003]現(xiàn)有的VMware在進(jìn)行虛擬機(jī)遷移時(shí),DRS以集群(Cluster)內(nèi)的主機(jī)作為vMotion的遷移范圍。在VMware中,所有的虛擬機(jī)的遷移范圍都是相同的,就是整個(gè)Cluster,用戶或管理員無法針對(duì)某個(gè)虛擬機(jī)進(jìn)行個(gè)性化遷移范圍設(shè)置。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種虛擬機(jī)遷移方法及裝置,提供了虛擬機(jī)遷移范圍統(tǒng)一模型,可以靈活地針對(duì)不同虛擬機(jī)設(shè)定不同的遷移范圍,簡(jiǎn)化并統(tǒng)一了虛擬機(jī)遷移的管控。
[0005]本發(fā)明第一方面提供了一種虛擬機(jī)遷移方法,所述方法包括:
[0006]將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池,所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合;
[0007]根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍;
[0008]在所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。
[0009]結(jié)合第一方面,在第一方面的第一種可能的實(shí)施方式中,所述將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,具體包括以下所列中的一種或任意結(jié)合:
[0010]將共享存儲(chǔ)的主機(jī)定義為共享存儲(chǔ)主機(jī)集合;
[0011]將支持可信平臺(tái)模塊的主機(jī)定義為可信主機(jī)集合;
[0012]將滿足某一法律規(guī)定的主機(jī)定義為法律限定主機(jī)集合;
[0013]將管理員依據(jù)業(yè)務(wù)需求定制的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合;
[0014]將管理員依據(jù)業(yè)務(wù)需求綁定虛擬機(jī)的主機(jī)定義為虛擬機(jī)綁定主機(jī)集合;
[0015]將主機(jī)CPU的體系架構(gòu)和所能提供的能力相當(dāng)?shù)闹鳈C(jī)定義為同構(gòu)主機(jī)集合;
[0016]將屬于同一個(gè)集群中的主機(jī)定義為集群主機(jī)集合;
[0017]將屬于同一個(gè)數(shù)據(jù)中心的主機(jī)定義為數(shù)據(jù)中心主機(jī)集合;
[0018]將處于同一個(gè)大二層域中的主機(jī)定義為大二層域主機(jī)集合。[0019]結(jié)合第一方面,在第一方面的第二種可能的實(shí)施方式中,所述根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,具體包括:
[0020]根據(jù)所述虛擬機(jī)遷移范圍屬性,確定所述主機(jī)集合池中相關(guān)的主機(jī)集合;
[0021]對(duì)所述相關(guān)的主機(jī)集合進(jìn)行運(yùn)算,并將運(yùn)算得到的結(jié)果確定為所述虛擬機(jī)的遷移范圍。
[0022]結(jié)合第一方面,在第一方面的第三種可能的實(shí)施方式中,所述在所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī),具體包括:
[0023]判斷分布式資源調(diào)度器DRS選定的候選目標(biāo)主機(jī)是否在所述虛擬機(jī)的遷移范圍內(nèi),如果是,則將所述候選目標(biāo)主機(jī)確定為所述虛擬機(jī)遷移的目標(biāo)主機(jī);否則,所述DRS重新選定所述候選目標(biāo)主機(jī)進(jìn)行判斷。
[0024]結(jié)合第一方面,在第一方面的第四種可能的實(shí)施方式中,在所述形成主機(jī)集合池之后,所述方法還包括:
[0025]對(duì)所述主機(jī)集合池中的所述主機(jī)集合進(jìn)行添加、修改和/或刪除的處理。
[0026]第二方面,本發(fā)明還提供了一種虛擬機(jī)遷移裝置,所述裝置包括:
[0027]主機(jī)管理模塊,用于將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池,所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合;
[0028]范圍確定模塊,用于根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)管理模塊形成的所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍;
[0029]主機(jī)確定模塊,用于在所述范圍確定模塊確定的所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。
[0030]結(jié)合第二方面,在第二方面的第一種可能的實(shí)施方式中,所述主機(jī)管理模塊具體用于以下所列中的一種或任意結(jié)合:
[0031]用于將共享存儲(chǔ)的主機(jī)定義為共享存儲(chǔ)主機(jī)集合;
[0032]用于將支持可信平臺(tái)模塊的主機(jī)定義為可信主機(jī)集合;
[0033]用于將滿足某一法律規(guī)定的主機(jī)定義為法律限定主機(jī)集合;
[0034]用于將管理員依據(jù)業(yè)務(wù)需求定制的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合;
[0035]用于將管理員依據(jù)業(yè)務(wù)需求綁定虛擬機(jī)的主機(jī)定義為虛擬機(jī)綁定主機(jī)集合;
[0036]用于將主機(jī)CPU的體系架構(gòu)和所能提供的能力相當(dāng)?shù)闹鳈C(jī)定義為同構(gòu)主機(jī)集合;
[0037]用于將屬于同一個(gè)集群中的主機(jī)定義為集群主機(jī)集合;
[0038]用于將屬于同一個(gè)數(shù)據(jù)中心的主機(jī)定義為數(shù)據(jù)中心主機(jī)集合;
[0039]用于將處于同一個(gè)大二層域中的主機(jī)定義為大二層域主機(jī)集合。
[0040]結(jié)合第二方面,在第二方面的第二種可能的實(shí)施方式中,所述范圍確定模塊具體用于根據(jù)所述虛擬機(jī)遷移范圍屬性,確定所述主機(jī)集合池中相關(guān)的主機(jī)集合;并對(duì)所述相關(guān)的主機(jī)集合進(jìn)行運(yùn)算,將運(yùn)算得到的結(jié)果確定為所述虛擬機(jī)的遷移范圍。
[0041]結(jié)合第二方面,在第二方面的第三種可能的實(shí)施方式中,所述主機(jī)確定模塊具體用于判斷分布式資源調(diào)度器DRS選定的候選目標(biāo)主機(jī)是否在所述虛擬機(jī)的遷移范圍內(nèi),如果是,則將所述候選目標(biāo)主機(jī)確定為所述虛擬機(jī)遷移的目標(biāo)主機(jī);否則,所述DRS重新選定所述候選目標(biāo)主機(jī)進(jìn)行判斷。
[0042]結(jié)合第二方面,在第二方面的第四種可能的實(shí)施方式中,所述主機(jī)管理模塊還用于對(duì)所述主機(jī)集合池中的所述主機(jī)集合進(jìn)行添加、修改和/或刪除的處理。
[0043]本發(fā)明提供的虛擬機(jī)遷移方法及裝置,提供了虛擬機(jī)遷移范圍的統(tǒng)一集合模型,從不同的維度定義不同的主機(jī)集合,并通過集合運(yùn)算得到虛擬機(jī)的遷移范圍,將其作為虛擬機(jī)的屬性,可以靈活地針對(duì)不同虛擬機(jī)設(shè)定不同的遷移范圍,簡(jiǎn)化并統(tǒng)一了虛擬機(jī)遷移的管控,可以對(duì)虛擬機(jī)遷移范圍進(jìn)行模板化的定制,配置簡(jiǎn)單靈活,在保證虛擬機(jī)安全、避免法律風(fēng)險(xiǎn)、實(shí)現(xiàn)虛擬機(jī)主機(jī)綁定、滿足客戶個(gè)性化需求等方面有著廣泛的應(yīng)用空間。
【專利附圖】
【附圖說明】
[0044]圖1為本發(fā)明實(shí)施例一提供的虛擬機(jī)遷移方法流程圖;
[0045]圖2為本發(fā)明實(shí)施例一提供的創(chuàng)建虛擬機(jī)時(shí)指定遷移范圍屬性窗口的示意圖;
[0046]圖3為本發(fā)明實(shí)施例二提供的虛擬機(jī)遷移裝置示意圖;
[0047]圖4為本發(fā)明實(shí)施例三提供的虛擬機(jī)遷移裝置組成結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0048]下面通過附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
[0049]本發(fā)明實(shí)施例提供的虛擬機(jī)遷移方法及裝置,適用于利用分布式資源調(diào)度器DRS等調(diào)度器管理虛擬機(jī)動(dòng)態(tài)遷移的場(chǎng)景,在設(shè)定的虛擬機(jī)遷移范圍內(nèi)實(shí)現(xiàn)虛擬機(jī)的遷移。
[0050]實(shí)施例一
[0051]圖1是本實(shí)施例提供的虛擬機(jī)遷移方法流程圖,如圖1所示,本發(fā)明的虛擬機(jī)遷移方法包括:
[0052]SlOl、DRS將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池。
[0053]所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合。通過不同的選擇標(biāo)準(zhǔn)定義出不同的主機(jī)集合。每一個(gè)選擇標(biāo)準(zhǔn)都從一個(gè)維度定義出一個(gè)主機(jī)集合。
[0054]具體地,可以包括以下所列中的一種或任意結(jié)合:
[0055](a)將共享存儲(chǔ)的主機(jī)定義為共享存儲(chǔ)主機(jī)集合,可以有多個(gè)共享存儲(chǔ)主機(jī)集合。
[0056](b)將支持可信平臺(tái)模塊(Trusted Platform Module,TPM)的主機(jī)定義為可信主機(jī)集合。
[0057](c)依據(jù)法律規(guī)定,將滿足某一法律規(guī)定的主機(jī)定義為法律限定主機(jī)集合,可以定義多個(gè)法律限定主機(jī)集合。
[0058]Cd)將管理員依據(jù)業(yè)務(wù)需求定制的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合。管理員依據(jù)業(yè)務(wù)需求,將某些部門(比如財(cái)務(wù)部,或機(jī)要部門等)的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合,可以定義多個(gè)管理員定制主機(jī)集合。
[0059](e)將管理員依據(jù)業(yè)務(wù)需求綁定虛擬機(jī)的主機(jī)定義為虛擬機(jī)綁定主機(jī)集合。管理員依據(jù)業(yè)務(wù)需求,可能需要將某臺(tái)虛擬機(jī)綁定到某臺(tái)主機(jī)上,可以將該虛擬機(jī)遷移范圍定義為只包含該主機(jī)的主機(jī)集合。[0060](f)將主機(jī)CPU的體系架構(gòu)和所能提供的能力相當(dāng)?shù)闹鳈C(jī)定義為同構(gòu)主機(jī)集合。
[0061](g)將屬于同一個(gè)集群中的主機(jī)定義為集群主機(jī)集合。
[0062](h)將屬于同一個(gè)數(shù)據(jù)中心的主機(jī)定義為數(shù)據(jù)中心主機(jī)集合。
[0063](i)將處于同一個(gè)大二層域中的主機(jī)定義為大二層域主機(jī)集合。
[0064]上述各個(gè)主機(jī)集合可以依據(jù)DRS收集的主機(jī)信息自動(dòng)生成,并可以自動(dòng)調(diào)整主機(jī)集合成員。例如,可信主機(jī)集合、同構(gòu)主機(jī)集合和集群主機(jī)集合等。也可以由用戶手動(dòng)進(jìn)行定制。例如,法律限定主機(jī)集合,管理員定制主機(jī)集合和虛擬機(jī)綁定主機(jī)集合等。
[0065]本步驟主要是依據(jù)一定的選擇標(biāo)準(zhǔn)對(duì)主機(jī)集合池進(jìn)行維護(hù)和管理,包括:向主機(jī)集合池中添加新的主機(jī)集合,從主機(jī)集合池中刪除某個(gè)主機(jī)集合,修改某個(gè)主機(jī)集合的名字、添加或刪除成員主機(jī)等。即,在所述形成主機(jī)集合池之后,所述方法還包括:對(duì)所述主機(jī)集合池中的所述主機(jī)集合進(jìn)行添加、修改和/或刪除的處理。
[0066]S102、DRS根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍。
[0067]具體包括:根據(jù)所述虛擬機(jī)遷移范圍屬性,確定所述主機(jī)集合池中相關(guān)的主機(jī)集合;對(duì)所述相關(guān)的主機(jī)集合進(jìn)行運(yùn)算,并將運(yùn)算得到的結(jié)果確定為所述虛擬機(jī)的遷移范圍。
[0068]所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍,其中包括用于確定所述虛擬機(jī)的遷移范圍的選項(xiàng)參數(shù)。通常該選項(xiàng)參數(shù)在創(chuàng)建該虛擬機(jī)時(shí)進(jìn)行限定。在創(chuàng)建虛擬機(jī)時(shí),從主機(jī)集合池中選擇主機(jī)集合,并運(yùn)用集合運(yùn)算,確定虛擬機(jī)遷移范圍,生成虛擬機(jī)遷移范圍屬性(即作為虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械囊环N)。例如,在創(chuàng)建虛擬機(jī)時(shí),該虛擬機(jī)是可信虛擬機(jī),則用于確定所述虛擬機(jī)的遷移范圍的選項(xiàng)參數(shù)中包含有可信虛擬機(jī)的選項(xiàng)參數(shù),相應(yīng)地,該虛擬機(jī)一般只能遷移到可信主機(jī)上,因而,確定的該虛擬機(jī)的遷移范圍則是在可信主機(jī)集合的范圍內(nèi)。
[0069]對(duì)于一個(gè)虛擬機(jī),可以指定多個(gè)主機(jī)集合,這些主機(jī)集合間,甚至是不同虛擬機(jī)遷移范圍主機(jī)集合間,可以進(jìn)行主機(jī)集合的運(yùn)算,包括“合集”、“并集”、“差集”、“補(bǔ)集”等運(yùn)算,最終確定虛擬機(jī)的遷移范圍。圖2是本實(shí)施例提供的創(chuàng)建虛擬機(jī)時(shí)指定遷移范圍屬性窗口的示意圖,在創(chuàng)建虛擬機(jī)時(shí)可以提供指定遷移范圍屬性的窗口,該窗口中包括“主機(jī)集合列表下拉菜單”、運(yùn)算按鈕、“主機(jī)集合運(yùn)算顯示框”和“虛擬機(jī)遷移范圍顯示窗”,點(diǎn)擊“主機(jī)集合列表下拉菜單”后可以下拉顯示主機(jī)集合池中所有的主機(jī)集合,用戶通過選擇其中的主機(jī)集合和運(yùn)算按鈕,可以靈活地指定虛擬機(jī)的遷移范圍,運(yùn)算表達(dá)式在“主機(jī)集合運(yùn)算顯示框”中顯示,運(yùn)算結(jié)果在“虛擬機(jī)遷移范圍顯示窗”中顯示。
[0070]例如,對(duì)于虛擬機(jī)V來說,如果在創(chuàng)建時(shí)或遷移時(shí),其用于確定所述虛擬機(jī)的遷移范圍的選項(xiàng)參數(shù)中包含有可信虛擬機(jī)和共享存儲(chǔ)的選項(xiàng)參數(shù),則從所述主機(jī)集合池中選擇共享存儲(chǔ)主機(jī)集合和可信主機(jī)集合,并作“交集”運(yùn)算,最終得到了虛擬機(jī)V的遷移范圍主機(jī)集合Hv,即虛擬機(jī)V的遷移范圍。
[0071]S103、在所述虛擬機(jī)的遷移范圍內(nèi),DRS確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。
[0072]在確定了虛擬機(jī)遷移范圍后,DRS在進(jìn)行虛擬機(jī)遷移決策時(shí),在確定了要進(jìn)行遷移的虛擬機(jī)后,要在虛擬機(jī)遷移范圍的主機(jī)集合中選擇將要遷往的目的主機(jī)。
[0073]具體包括:判斷DRS選定的候選目標(biāo)主機(jī)是否在所述虛擬機(jī)的遷移范圍內(nèi),如果是,則將所述候選目標(biāo)主機(jī)確定為所述虛擬機(jī)遷移的目標(biāo)主機(jī);否則,所述DRS重新選定所述候選目標(biāo)主機(jī)進(jìn)行判斷。其中DRS選定的候選目標(biāo)主機(jī)的過程可以按照現(xiàn)有的虛擬機(jī)遷移的方法進(jìn)行處理。
[0074]這樣,可以在確定虛擬機(jī)動(dòng)態(tài)遷移目標(biāo)主機(jī)時(shí),只在虛擬機(jī)遷移范圍內(nèi)的主機(jī)集合內(nèi)選擇,簡(jiǎn)化并統(tǒng)一了虛擬機(jī)遷移的管控。
[0075]另外,還可以通過定義特殊虛擬機(jī)遷移范圍來實(shí)現(xiàn)虛擬機(jī)主機(jī)綁定類同(affinity)功能和虛擬機(jī)反類同(ant1-affinity)功能。具體地,虛擬機(jī)主機(jī)綁定affinity功能通過只包含綁定主機(jī)的遷移范圍實(shí)現(xiàn)。虛擬機(jī)vl與v2的ant1-affinity功能,通過Vl虛擬機(jī)遷移范圍補(bǔ)集,加其他主機(jī)集合交集的方式確定虛擬機(jī)v2的遷移范圍。
[0076]本發(fā)明實(shí)施例提供的虛擬機(jī)遷移方法,提供了虛擬機(jī)遷移范圍的統(tǒng)一集合模型,從不同的維度定義不同的主機(jī)集合,并通過集合運(yùn)算得到虛擬機(jī)的遷移范圍,將其作為虛擬機(jī)的屬性,可以靈活地針對(duì)不同虛擬機(jī)設(shè)定不同的遷移范圍,簡(jiǎn)化并統(tǒng)一了虛擬機(jī)遷移的管控,可以對(duì)虛擬機(jī)遷移范圍進(jìn)行模板化的定制,配置簡(jiǎn)單靈活,在保證虛擬機(jī)安全、避免法律風(fēng)險(xiǎn)、實(shí)現(xiàn)虛擬機(jī)主機(jī)綁定、滿足客戶個(gè)性化需求等方面有著廣泛的應(yīng)用空間。
[0077]以上是對(duì)本發(fā)明所提供的虛擬機(jī)遷移方法進(jìn)行的詳細(xì)描述,下面對(duì)本發(fā)明提供的虛擬機(jī)遷移裝置進(jìn)行詳細(xì)描述。
[0078]實(shí)施例二
[0079]圖3是本實(shí)施例提供的虛擬機(jī)遷移裝置示意圖,如圖3所示,本發(fā)明的虛擬機(jī)遷移裝置包括:主機(jī)管理模塊301、范圍確定模塊302和主機(jī)確定模塊303。
[0080]主機(jī)管理模塊301用于將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池。
[0081]所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合。通過不同的選擇標(biāo)準(zhǔn)定義出不同的主機(jī)集合。每一個(gè)選擇標(biāo)準(zhǔn)都從一個(gè)維度定義出一個(gè)主機(jī)集合。
[0082]具體的,主機(jī)管理模塊301具體用于以下所列中的一種或任意結(jié)合:
[0083]主機(jī)管理模塊301用于將共享存儲(chǔ)的主機(jī)定義為共享存儲(chǔ)主機(jī)集合,可以有多個(gè)共享存儲(chǔ)主機(jī)集合。
[0084]主機(jī)管理模塊301用于將支持可信平臺(tái)模塊的主機(jī)定義為可信主機(jī)集合。
[0085]主機(jī)管理模塊301用于將滿足某一法律規(guī)定的主機(jī)定義為法律限定主機(jī)集合,可以定義多個(gè)法律限定主機(jī)集合
[0086]主機(jī)管理模塊301用于將管理員依據(jù)業(yè)務(wù)需求定制的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合。管理員依據(jù)業(yè)務(wù)需求,將某些部門(比如財(cái)務(wù)部,或機(jī)要部門等)的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合,可以定義多個(gè)管理員定制主機(jī)集合。
[0087]主機(jī)管理模塊301用于將管理員依據(jù)業(yè)務(wù)需求綁定虛擬機(jī)的主機(jī)定義為虛擬機(jī)綁定主機(jī)集合。管理員依據(jù)業(yè)務(wù)需求,可能需要將某臺(tái)虛擬機(jī)綁定到某臺(tái)主機(jī)上,可以將該虛擬機(jī)遷移范圍定義為只包含該主機(jī)的主機(jī)集合。
[0088]主機(jī)管理模塊301用于將主機(jī)CPU的體系架構(gòu)和所能提供的能力相當(dāng)?shù)闹鳈C(jī)定義為同構(gòu)主機(jī)集合。
[0089]主機(jī)管理模塊301用于將屬于同一個(gè)集群中的主機(jī)定義為集群主機(jī)集合。
[0090]主機(jī)管理模塊301用于將屬于同一個(gè)數(shù)據(jù)中心的主機(jī)定義為數(shù)據(jù)中心主機(jī)集合。
[0091]主機(jī)管理模塊301用于將處于同一個(gè)大二層域中的主機(jī)定義為大二層域主機(jī)集人
口 O
[0092]上述各個(gè)主機(jī)集合可以依據(jù)DRS收集的主機(jī)信息自動(dòng)生成,并可以自動(dòng)調(diào)整主機(jī)集合成員。例如,可信主機(jī)集合、同構(gòu)主機(jī)集合和集群主機(jī)集合等。也可以由用戶手動(dòng)進(jìn)行定制。例如,法律限定主機(jī)集合,管理員定制主機(jī)集合和虛擬機(jī)綁定主機(jī)集合等。
[0093]主機(jī)管理模塊301主要是依據(jù)一定的選擇標(biāo)準(zhǔn)對(duì)主機(jī)集合池進(jìn)行維護(hù)和管理,包括:向主機(jī)集合池中添加新的主機(jī)集合,從主機(jī)集合池中刪除某個(gè)主機(jī)集合,修改某個(gè)主機(jī)集合的名字、添加或刪除成員主機(jī)等。即,主機(jī)管理模塊301在所述形成主機(jī)集合池之后,還用于對(duì)所述主機(jī)集合池中的所述主機(jī)集合進(jìn)行添加、修改和/或刪除的處理。
[0094]范圍確定模塊302用于根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從主機(jī)管理模塊301形成的所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍。
[0095]范圍確定模塊302具體用于根據(jù)所述虛擬機(jī)遷移范圍屬性,確定所述主機(jī)集合池中相關(guān)的主機(jī)集合;并對(duì)所述相關(guān)的主機(jī)集合進(jìn)行運(yùn)算,將運(yùn)算得到的結(jié)果確定為所述虛擬機(jī)的遷移范圍。
[0096]所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍。,其中包括用于確定所述虛擬機(jī)的遷移范圍的選項(xiàng)參數(shù)。通常該選項(xiàng)參數(shù)在創(chuàng)建該虛擬機(jī)時(shí)進(jìn)行限定。在創(chuàng)建虛擬機(jī)時(shí),從主機(jī)集合池中選擇主機(jī)集合,并運(yùn)用集合運(yùn)算,確定虛擬機(jī)遷移范圍,生成虛擬機(jī)遷移范圍屬性(即作為虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械囊环N)。例如,在創(chuàng)建虛擬機(jī)時(shí),該虛擬機(jī)是可信虛擬機(jī),則用于確定所述虛擬機(jī)的遷移范圍的選項(xiàng)參數(shù)中包含有可信虛擬機(jī)的選項(xiàng)參數(shù),相應(yīng)地,該虛擬機(jī)一般只能遷移到可信主機(jī)上,因而,確定的該虛擬機(jī)的遷移范圍則是在可信主機(jī)集合的范圍內(nèi)。
[0097]對(duì)于一個(gè)虛擬機(jī),可以指定多個(gè)主機(jī)集合,這些主機(jī)集合間,甚至是不同虛擬機(jī)遷移范圍主機(jī)集合間,可以進(jìn)行主機(jī)集合的運(yùn)算,包括“合集”、“并集”、“差集”、“補(bǔ)集”等運(yùn)算,最終確定虛擬機(jī)的遷移范圍。圖2是本實(shí)施例提供的創(chuàng)建虛擬機(jī)時(shí)指定遷移范圍屬性窗口的示意圖,在創(chuàng)建虛擬機(jī)時(shí)可以提供指定遷移范圍屬性的窗口,該窗口中包括“主機(jī)集合列表下拉菜單”、運(yùn)算按鈕、“主機(jī)集合運(yùn)算顯示框”和“虛擬機(jī)遷移范圍顯示窗”,點(diǎn)擊“主機(jī)集合列表下拉菜單”后可以下拉顯示主機(jī)集合池中所有的主機(jī)集合,用戶通過選擇其中的主機(jī)集合和運(yùn)算按鈕,可以靈活地指定虛擬機(jī)的遷移范圍,運(yùn)算表達(dá)式在“主機(jī)集合運(yùn)算顯示框”中顯示,運(yùn)算結(jié)果在“虛擬機(jī)遷移范圍顯示窗”中顯示。
[0098]例如,對(duì)于虛擬機(jī)V來說,如果在創(chuàng)建時(shí)或遷移時(shí),其用于確定所述虛擬機(jī)的遷移范圍的選項(xiàng)參數(shù)中包含有可信虛擬機(jī)和共享存儲(chǔ)的選項(xiàng)參數(shù),則從所述主機(jī)集合池中選擇共享存儲(chǔ)主機(jī)集合和可信主機(jī)集合,并作“交集”運(yùn)算,最終得到了虛擬機(jī)V的遷移范圍主機(jī)集合Hv,即虛擬機(jī)V的遷移范圍。
[0099]主機(jī)確定模塊303用于在范圍確定模塊302確定的所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。
[0100]在范圍確定模塊302確定了虛擬機(jī)遷移范圍后,DRS在進(jìn)行虛擬機(jī)遷移決策時(shí),在確定了要進(jìn)行遷移的虛擬機(jī)后,主機(jī)確定模塊303要在虛擬機(jī)遷移范圍的主機(jī)集合中選擇將要遷往的目的主機(jī)。
[0101]主機(jī)確定模塊303具體用于判斷DRS選定的候選目標(biāo)主機(jī)是否在所述虛擬機(jī)的遷移范圍內(nèi),如果是,則將所述候選目標(biāo)主機(jī)確定為所述虛擬機(jī)遷移的目標(biāo)主機(jī);否則,所述DRS重新選定所述候選目標(biāo)主機(jī)進(jìn)行判斷。其中DRS選定的候選目標(biāo)主機(jī)的過程可以按照現(xiàn)有的虛擬機(jī)遷移的方法進(jìn)行處理。
[0102]這樣,可以在確定虛擬機(jī)動(dòng)態(tài)遷移目標(biāo)主機(jī)時(shí),只在虛擬機(jī)遷移范圍內(nèi)的主機(jī)集合內(nèi)選擇,簡(jiǎn)化并統(tǒng)一了虛擬機(jī)遷移的管控。
[0103]實(shí)施例三
[0104]圖4是本實(shí)施例提供的虛擬機(jī)遷移裝置的組成結(jié)構(gòu)示意圖,如圖4所示,虛擬機(jī)遷移裝置400包括:處理器401、通信接口 402和存儲(chǔ)器403。
[0105]通信接口 402用于與其他裝置進(jìn)行交互。
[0106]存儲(chǔ)器403可以是永久存儲(chǔ)器,例如硬盤驅(qū)動(dòng)器和閃存,存儲(chǔ)器403中具有軟件模塊和設(shè)備驅(qū)動(dòng)程序。軟件模塊能夠執(zhí)行本發(fā)明實(shí)施例上述方法的各種功能模塊;設(shè)備驅(qū)動(dòng)程序可以是網(wǎng)絡(luò)和接口驅(qū)動(dòng)程序。
[0107]在啟動(dòng)時(shí),這些軟件組件被加載到存儲(chǔ)器403中,然后被處理器401訪問并執(zhí)行如下指令:
[0108]將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池,所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合;
[0109]根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍;
[0110]在所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。
[0111]具體地,虛擬機(jī)遷移裝置400還根據(jù)所述指令執(zhí)行上述實(shí)施例一所述的虛擬機(jī)遷移方法,具體在此不再贅述。
[0112]本發(fā)明提供的虛擬機(jī)遷移方法及裝置,提供了虛擬機(jī)遷移范圍的統(tǒng)一集合模型,從不同的維度定義不同的主機(jī)集合,并通過集合運(yùn)算得到虛擬機(jī)的遷移范圍,將其作為虛擬機(jī)的屬性,可以靈活地針對(duì)不同虛擬機(jī)設(shè)定不同的遷移范圍,簡(jiǎn)化并統(tǒng)一了虛擬機(jī)遷移的管控,可以對(duì)虛擬機(jī)遷移范圍進(jìn)行模板化的定制,配置簡(jiǎn)單靈活,在保證虛擬機(jī)安全、避免法律風(fēng)險(xiǎn)、實(shí)現(xiàn)虛擬機(jī)主機(jī)綁定、滿足客戶個(gè)性化需求等方面有著廣泛的應(yīng)用空間。
[0113]專業(yè)人員應(yīng)該還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
[0114]結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動(dòng)磁盤、CD-ROM、或【技術(shù)領(lǐng)域】內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。
[0115]以上所述的【具體實(shí)施方式】,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說明,所應(yīng)理解的是,以上所述僅為本發(fā)明的【具體實(shí)施方式】而已,并不用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種虛擬機(jī)遷移方法,其特征在于,所述方法包括: 將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池,所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合; 根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍; 在所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,具體包括以下所列中的一種或任意結(jié)合: 將共享存儲(chǔ)的主機(jī)定義為共享存儲(chǔ)主機(jī)集合; 將支持可信平臺(tái)模塊的主機(jī)定義為可信主機(jī)集合; 將滿足某一法律規(guī)定的主機(jī)定義為法律限定主機(jī)集合; 將管理員依據(jù)業(yè)務(wù)需求定制的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合; 將管理員依據(jù)業(yè)務(wù)需求綁定虛擬機(jī)的主機(jī)定義為虛擬機(jī)綁定主機(jī)集合; 將主機(jī)CPU的體系架構(gòu)和所能提供的能力相當(dāng)?shù)闹鳈C(jī)定義為同構(gòu)主機(jī)集合; 將屬于同一個(gè)集群中的主機(jī)定義為集群主機(jī)集合; 將屬于同一個(gè)數(shù)據(jù)中心的主機(jī)定義為數(shù)據(jù)中心主機(jī)集合; 將處于同一個(gè)大二層域中的主機(jī)定義為大二層域主機(jī)集合。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,具體包括: 根據(jù)所述虛擬機(jī)遷移范圍屬性,確定所述主機(jī)集合池中相關(guān)的主機(jī)集合; 對(duì)所述相關(guān)的主機(jī)集合進(jìn)行運(yùn)算,并將運(yùn)算得到的結(jié)果確定為所述虛擬機(jī)的遷移范圍。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述在所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī),具體包括: 判斷分布式資源調(diào)度器DRS選定的候選目標(biāo)主機(jī)是否在所述虛擬機(jī)的遷移范圍內(nèi),如果是,則將所述候選目標(biāo)主機(jī)確定為所述虛擬機(jī)遷移的目標(biāo)主機(jī);否則,所述DRS重新選定所述候選目標(biāo)主機(jī)進(jìn)行判斷。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述形成主機(jī)集合池之后,所述方法還包括: 對(duì)所述主機(jī)集合池中的所述主機(jī)集合進(jìn)行添加、修改和/或刪除的處理。
6.一種虛擬機(jī)遷移裝置,其特征在于,所述裝置包括: 主機(jī)管理模塊,用于將主機(jī)信息符合同一選擇標(biāo)準(zhǔn)的主機(jī)定義為同一主機(jī)集合,形成主機(jī)集合池,所述主機(jī)集合池中包括至少一個(gè)所述主機(jī)集合; 范圍確定模塊,用于根據(jù)虛擬機(jī)的配置選項(xiàng)或?qū)傩灾械奶摂M機(jī)遷移范圍屬性,從所述主機(jī)管理模塊形成的所述主機(jī)集合池中確定所述虛擬機(jī)的遷移范圍,所述虛擬機(jī)遷移范圍屬性用于確定所述虛擬機(jī)的遷移范圍; 主機(jī)確定模塊,用于在所述范圍確定模塊確定的所述虛擬機(jī)的遷移范圍內(nèi),確定所述虛擬機(jī)遷移的目標(biāo)主機(jī)。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述主機(jī)管理模塊具體用于以下所列中的一種或任意結(jié)合: 用于將共享存儲(chǔ)的主機(jī)定義為共享存儲(chǔ)主機(jī)集合; 用于將支持可信平臺(tái)模塊的主機(jī)定義為可信主機(jī)集合; 用于將滿足某一法律規(guī)定的主機(jī)定義為法律限定主機(jī)集合; 用于將管理員依據(jù)業(yè)務(wù)需求定制的虛擬機(jī)可遷移的主機(jī)定義為管理員定制主機(jī)集合; 用于將管理員依據(jù)業(yè)務(wù)需求綁定虛擬機(jī)的主機(jī)定義為虛擬機(jī)綁定主機(jī)集合; 用于將主機(jī)CPU的體系架構(gòu)和所能提供的能力相當(dāng)?shù)闹鳈C(jī)定義為同構(gòu)主機(jī)集合; 用于將屬于同一個(gè)集群中的主機(jī)定義為集群主機(jī)集合; 用于將屬于同一個(gè)數(shù)據(jù)中心的主機(jī)定義為數(shù)據(jù)中心主機(jī)集合; 用于將處于同一個(gè)大二層域中的主機(jī)定義為大二層域主機(jī)集合。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述范圍確定模塊具體用于根據(jù)所述虛擬機(jī)遷移范圍屬性,確定所述主機(jī)集合池中相關(guān)的主機(jī)集合;并對(duì)所述相關(guān)的主機(jī)集合進(jìn)行運(yùn)算,將運(yùn)算得到的結(jié)果確定為所述虛擬機(jī)的遷移范圍。
9.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述主機(jī)確定模塊具體用于判斷分布式資源調(diào)度器DRS選定的候選目標(biāo)主機(jī)是否在所述虛擬機(jī)的遷移范圍內(nèi),如果是,則將所述候選目標(biāo)主機(jī)確定為所述虛擬機(jī)遷移的目標(biāo)主機(jī);否則,所述DRS重新選定所述候選目標(biāo)主機(jī)進(jìn)行判斷。`
10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述主機(jī)管理模塊還用于對(duì)所述主機(jī)集合池中的所述主機(jī)集合進(jìn)行添加、修改和/或刪除的處理。
【文檔編號(hào)】G06F9/455GK103617070SQ201310616597
【公開日】2014年3月5日 申請(qǐng)日期:2013年11月27日 優(yōu)先權(quán)日:2013年11月27日
【發(fā)明者】王顯雷 申請(qǐng)人:華為技術(shù)有限公司