国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      虛擬機(jī)遷移方法及裝置制造方法

      文檔序號(hào):6632857閱讀:163來(lái)源:國(guó)知局
      虛擬機(jī)遷移方法及裝置制造方法
      【專(zhuān)利摘要】本申請(qǐng)?zhí)岢鎏摂M機(jī)遷移方法及裝置。方法包括:SDN控制器集群中的SDN控制器維護(hù)本集群下掛的所有OVS的vPort列表,每個(gè)vPort表項(xiàng)包含:VM的地址、遷移狀態(tài)和端口狀態(tài);接收本集群的Leader發(fā)來(lái)的vPort同步消息,確定該消息中的vPort表項(xiàng)對(duì)應(yīng)的VM要發(fā)生遷移,根據(jù)該消息中的vPort表項(xiàng)將自身的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)更新為“up”。本申請(qǐng)保證了SDN控制器能夠準(zhǔn)確得知VM發(fā)生遷移。
      【專(zhuān)利說(shuō)明】虛擬機(jī)遷移方法及裝置

      【技術(shù)領(lǐng)域】
      [0001]本申請(qǐng)涉及虛擬化【技術(shù)領(lǐng)域】,尤其涉及VM(Virtual Machine,虛擬機(jī))遷移方法及裝置。

      【背景技術(shù)】
      [0002]SDN(Software Defined Network,軟件定義網(wǎng)絡(luò))是一種新型的網(wǎng)絡(luò)通信架構(gòu)。SDN技術(shù)實(shí)現(xiàn)了對(duì)網(wǎng)絡(luò)設(shè)備的集中控制、分布轉(zhuǎn)發(fā)。在SDN技術(shù)概念中,將網(wǎng)絡(luò)功能分為控制器和數(shù)據(jù)通道兩個(gè)部分,這兩部分之間通過(guò)一個(gè)安全通道進(jìn)行交互。在控制器上,可以對(duì)其控制的網(wǎng)絡(luò)設(shè)備進(jìn)行集中管理,對(duì)網(wǎng)絡(luò)行為進(jìn)行統(tǒng)一編排,然后規(guī)定數(shù)據(jù)通路的轉(zhuǎn)發(fā)行為。SDN技術(shù)大大增加了網(wǎng)絡(luò)管理的可控性、靈活性。目前,SDN的具體實(shí)現(xiàn)有各種不同的技術(shù),其中最主流的是OpenFlow技術(shù)。
      [0003]為了提升SDN的穩(wěn)定性,引入了控制器集群的概念,在該網(wǎng)絡(luò)中多個(gè)控制器組成一個(gè)控制器集群,控制器集群的每個(gè)成員共同控制網(wǎng)絡(luò)中的交換機(jī)。每個(gè)成員連接若干數(shù)量的交換機(jī),并將這些交換機(jī)的屬性信息同步到集群內(nèi)的所有控制器上,交換機(jī)上接入的主機(jī)信息也在集群內(nèi)同步,與轉(zhuǎn)發(fā)相關(guān)的流表信息則根據(jù)需要在某些成員上同步,集群內(nèi)的數(shù)據(jù)同步策略可以根據(jù)需要進(jìn)行調(diào)整以確保效率和數(shù)據(jù)一致性。
      [0004]OVS (Open Vswitch,開(kāi)放虛擬交換機(jī))是一種運(yùn)行在類(lèi)Linux下的軟件,實(shí)現(xiàn)了虛擬交換機(jī)的大部分功能,同時(shí)還支持二三層協(xié)議,還支持標(biāo)準(zhǔn)的管理接口和協(xié)議。
      [0005]VM遷移指的是,出于某些原因如:主機(jī)硬件維護(hù)、虛擬機(jī)系統(tǒng)資源規(guī)劃調(diào)整等,將VM從一臺(tái)物理主機(jī)遷移到另一臺(tái)物理主機(jī)。在遷移過(guò)程中,源主機(jī)上的VM的內(nèi)存、磁盤(pán)以及其它配置都會(huì)被拷貝到目的主機(jī),形成遷移后的VM。遷移成功結(jié)束后,源主機(jī)上的VM將會(huì)被移除。


      【發(fā)明內(nèi)容】

      [0006]本申請(qǐng)?zhí)峁¬M遷移方法及裝置。
      [0007]本申請(qǐng)的技術(shù)方案是這樣實(shí)現(xiàn)的:
      [0008]一種VM遷移方法,該方法包括:
      [0009]SDN控制器集群中的SDN控制器維護(hù)本集群下掛的所有OVS的vPort列表,每個(gè)vPort表項(xiàng)包含的地址、遷移狀態(tài)和端口狀態(tài);
      [0010]接收本集群的Leader發(fā)來(lái)的vPort同步消息,確定該消息中的vPort表項(xiàng)對(duì)應(yīng)的VM要發(fā)生遷移,根據(jù)該消息中的vPort表項(xiàng)將自身的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)更新為“up”。
      [0011]一種VM遷移方法,該方法包括:
      [0012]SDN控制器集群的leader接收VMM發(fā)來(lái)的VM遷移通知消息,該消息攜帶VM的遷出OVS和遷入OVS的地址,leader向遷出OVS連接的遷出SDN控制器、遷入OVS連接的遷入SDN控制器發(fā)送vPort同步消息,同步消息攜帶該VM對(duì)應(yīng)的vPort表項(xiàng),表項(xiàng)中的遷移狀態(tài)為“遷移”,端口狀態(tài)為“up” ;
      [0013]Leader接收遷出SDN控制器、遷入SDN控制器返回的vPort同步完成消息,向VMM返回VM遷移通知完成消息,以使得:VMM開(kāi)始遷移該VM。
      [0014]一種VM遷移方法,該方法包括:
      [0015]當(dāng)VMM要發(fā)起VM遷移時(shí),向SDN控制器集群的Leader發(fā)送VM遷移通知消息,該消息攜帶:遷出OVS的地址、遷入OVS的地址和該要遷移的VM的地址;
      [0016]VMM接收所述Leader返回的攜帶vPort同步完成指示的VM遷移通知響應(yīng)消息,開(kāi)始將該VM從遷出OVS遷移到遷入0VS。
      [0017]一種VM遷移裝置,位于SDN控制器集群中的SDN控制器上,該裝置主要包括:
      [0018]vPort列表維護(hù)模塊:維護(hù)本SDN控制器集群下掛的所有開(kāi)放虛擬交換機(jī)OVS的vPort列表,每個(gè)vPort表項(xiàng)包含:VM的地址、遷移狀態(tài)和端口狀態(tài);
      [0019]vPort同步模塊:接收本集群的Leader發(fā)來(lái)的vPort同步消息,確定該消息中的vPort表項(xiàng)對(duì)應(yīng)的VM要發(fā)生遷移,根據(jù)該消息中的vPort表項(xiàng)將vPort列表維護(hù)模塊中的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)為“up”。
      [0020]一種VM遷移裝置,位于SDN控制器集群的leader上,該裝置主要包括:
      [0021]遷移通知處理模塊:接收VMM發(fā)來(lái)的VM遷移通知消息,該消息攜帶VM的遷出OVS和遷入OVS的地址,向遷出OVS連接的遷出SDN控制器、遷入OVS連接的遷入SDN控制器發(fā)送vPort同步消息,同步消息攜帶該VM對(duì)應(yīng)的vPort表項(xiàng),表項(xiàng)中的遷移狀態(tài)為“遷移”,端口狀態(tài)為“up” ;
      [0022]遷移通知響應(yīng)模塊:接收遷出SDN控制器、遷入SDN控制器返回的vPort同步完成消息,向VMM返回VM遷移通知完成消息,以使得:VMM開(kāi)始遷移該VM。
      [0023]一種VM遷移裝置,位于VMM上,該裝置主要包括:
      [0024]遷移通知模塊:要發(fā)起VM遷移時(shí),向SDN控制器集群的Leader發(fā)送VM遷移通知消息,該消息攜帶:遷出OVS的地址、遷入OVS的地址和該要遷移的VM的地址;
      [0025]遷移觸發(fā)模塊:接收所述Leader返回的攜帶vPort同步完成指示的VM遷移通知響應(yīng)消息,開(kāi)始將該VM從遷出OVS遷移到遷入0VS。
      [0026]可見(jiàn),本申請(qǐng)中,通過(guò)在集群內(nèi)的每個(gè)SDN控制器上維護(hù)全局vPort列表,使得vPort的狀態(tài)在集群內(nèi)同步;當(dāng)要發(fā)起對(duì)VM的遷移時(shí),通過(guò)leader通知遷出控制器和遷入控制器更改vPort的遷移狀態(tài)為“遷移”,從而:保證了遷出、遷入控制器能夠準(zhǔn)確得知VM發(fā)生遷移。

      【專(zhuān)利附圖】

      【附圖說(shuō)明】
      [0027]圖1為SDN控制器集群組網(wǎng)下的VM遷移示例圖;
      [0028]圖2為本申請(qǐng)一實(shí)施例提供的VM遷移方法流程圖;
      [0029]圖3為本申請(qǐng)另一實(shí)施例提供的VM遷移方法流程圖
      [0030]圖4為本申請(qǐng)另一實(shí)施例提供的VM遷移方法流程圖;
      [0031]圖5為本申請(qǐng)另一實(shí)施例提供的VM遷移方法流程圖;
      [0032]圖6為本申請(qǐng)一實(shí)施例提供的VM遷移裝置的組成示意圖;
      [0033]圖7為本申請(qǐng)實(shí)施例提供的SDN控制器的硬件結(jié)構(gòu)示意圖;
      [0034]圖8本申請(qǐng)另一實(shí)施例提供的VM遷移裝置的組成示意圖;
      [0035]圖9為本申請(qǐng)實(shí)施例提供的SDN控制器集群中的Leader的硬件結(jié)構(gòu)示意圖;
      [0036]圖10為本申請(qǐng)另一實(shí)施例提供的VM遷移裝置的組成示意圖;
      [0037]圖11為本申請(qǐng)實(shí)施例提供的VMM的硬件結(jié)構(gòu)示意圖。

      【具體實(shí)施方式】
      [0038] 申請(qǐng)人:對(duì)現(xiàn)有的VM遷移過(guò)程進(jìn)行分析發(fā)現(xiàn):
      [0039]當(dāng)VM連接的OVS下掛在SDN控制器集群下時(shí),VM可能會(huì)從集群內(nèi)的SDN控制器A下掛的OVSl遷移到集群內(nèi)的SDN控制器B下掛的0VS2,如圖1所示,關(guān)于這種情形,現(xiàn)有技術(shù)并未給出具體的遷移方案。
      [0040]圖2為本申請(qǐng)一實(shí)施例提供的VM遷移方法流程圖,其具體步驟如下:
      [0041 ] 步驟201: SDN控制器集群中的SDN控制器維護(hù)本集群下掛的所有OVS的vPort (虛擬端口)列表,每個(gè)vPort表項(xiàng)包含m的地址、遷移狀態(tài)和端口狀態(tài)。
      [0042]vPort表項(xiàng)中的遷移狀態(tài)初始化為“未遷移”。
      [0043]優(yōu)選地,SDN控制器接收自身下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址在自身查找對(duì)應(yīng)的vPort表項(xiàng),若未查找到,則生成新的vPort表項(xiàng),該表項(xiàng)包含:該VM的地址、遷移狀態(tài):未遷移、端口狀態(tài):down,同時(shí),將該端口 add事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器生成相同的vPort表項(xiàng);
      [0044]SDN控制器接收自身下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)表項(xiàng)中的遷移狀態(tài)為“未遷移”,則將表項(xiàng)中的端口狀態(tài)更改為“up”,同時(shí),將該端口 modify事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器將自身的該vPort表項(xiàng)中的端口狀態(tài)更改為“up”。
      [0045]端口 add事件攜帶對(duì)應(yīng)的VM的地址和端口狀態(tài):down ;端口 modify事件攜帶對(duì)應(yīng)的VM的地址和端口狀態(tài):up。
      [0046]步驟202:SDN控制器接收本集群的Leader (領(lǐng)導(dǎo)者)發(fā)來(lái)的vPort同步消息,確定該消息中的vPort表項(xiàng)對(duì)應(yīng)的VM要發(fā)生遷移,根據(jù)該消息中的vPort表項(xiàng)將自身的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)更新為“up”。
      [0047]優(yōu)選地,SDN控制器接收本控制器下掛的OVS發(fā)來(lái)的端口 delete (刪除)事件,根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變,刪除自身保存的該VM的地址對(duì)應(yīng)的流表項(xiàng),將該vPort表項(xiàng)中的遷移狀態(tài)更改為“未遷移”,向集群內(nèi)的其它SDN控制器轉(zhuǎn)發(fā)該端口delete事件,其中該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示,以使得:其它SDN控制器刪除該VM的地址對(duì)應(yīng)的流表項(xiàng),并將該VM的地址對(duì)應(yīng)的vPort表項(xiàng)中的遷移狀態(tài)更改為“未遷移”。
      [0048]端口 delete事件攜帶對(duì)應(yīng)的VM的地址及端口狀態(tài):down。
      [0049]優(yōu)選地,SDN控制器接收其它SDN控制器發(fā)來(lái)的端口 delete事件,發(fā)現(xiàn)該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示,則根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的流表項(xiàng),刪除查找到的流表項(xiàng),且,若該VM的地址對(duì)應(yīng)的vPort表項(xiàng)中的遷移狀態(tài)為“遷移”,則將其更改為“未遷移”。
      [0050]優(yōu)選地,SDN控制器接收本控制器下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則不作進(jìn)一步處理,即保持該表項(xiàng)中的端口狀態(tài)為“up”不變;接收本控制器下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則不作進(jìn)一步處理,即保持該表項(xiàng)中的端口狀態(tài)為“up”不變。
      [0051]圖3為本申請(qǐng)另一實(shí)施例提供的VM遷移方法流程圖,其具體步驟如下:
      [0052]步驟301:SDN 控制器集群的 leader 接收 VMM (Virtual Machine Manager,虛擬機(jī)管理者)發(fā)來(lái)的VM遷移通知消息,該消息攜帶VM的遷出OVS和遷入OVS的地址,leader向遷出OVS連接的遷出SDN控制器、遷入OVS連接的遷入SDN控制器發(fā)送vPort同步消息,同步消息攜帶該VM對(duì)應(yīng)的vPort表項(xiàng),表項(xiàng)中的遷移狀態(tài)為“遷移”,端口狀態(tài)為“up”。
      [0053]優(yōu)選地,vPort同步消息采用REST調(diào)用方式。
      [0054]步驟302:Leader接收遷出SDN控制器、遷入SDN控制器返回的vPort同步完成消息,向VMM返回VM遷移通知完成消息,以使得:VMM開(kāi)始遷移該VM。
      [0055]圖4為本申請(qǐng)另一實(shí)施例提供的VM遷移方法流程圖,其具體步驟如下:
      [0056]步驟401:當(dāng)VMM要發(fā)起VM遷移時(shí),向SDN控制器集群的Leader發(fā)送VM遷移通知消息,該消息攜帶:遷出OVS的地址、遷入OVS的地址和該要遷移的VM的地址。
      [0057]優(yōu)選地,VM遷移通知消息采用REST調(diào)用方式。
      [0058]步驟402:VMM接收所述Leader返回的攜帶vPort同步完成指示的VM遷移通知響應(yīng)消息,開(kāi)始將該VM從遷出OVS遷移到遷入0VS。
      [0059]圖5為本申請(qǐng)另一實(shí)施例提供的VM遷移方法流程圖,本實(shí)施例應(yīng)用的網(wǎng)絡(luò)環(huán)境中具有一個(gè)SDN控制器集群,該SDN控制器集群內(nèi)的每個(gè)SDN控制器支持下掛運(yùn)行SDN協(xié)議的OVS,VM下掛在OVS上,VMM與SDN控制器集群連接,VMM上配置了 SDN控制器集群的集群IP地址,同時(shí)VMM與所有VM連接,其具體步驟如下:
      [0060]步驟501:當(dāng)OVS感知到有VM創(chuàng)建時(shí),向本OVS連接的SDN控制器上報(bào)端口 add事件,該事件攜帶該VM的地址及端口狀態(tài):down。
      [0061]步驟502:SDN控制器接收該端口 add事件,根據(jù)事件攜帶的VM的地址在自身查找對(duì)應(yīng)的vPort表項(xiàng),未查找到,則生成新的vPort表項(xiàng),該表項(xiàng)包含:該VM的地址、遷移狀態(tài):未遷移、端口狀態(tài):down,同時(shí),將該端口 add事件同步到本SDN控制器集群內(nèi)的其它SDN控制器,以便其它SDN控制器生成相同的vPort表項(xiàng)。
      [0062]步驟503:之后,當(dāng)OVS感知到該VM上線時(shí),向本OVS連接的SDN控制器上報(bào)端口modify事件,該事件攜帶該VM的地址及端口狀態(tài):up。
      [0063]步驟504:SDN控制器接收該端口 modify事件,根據(jù)事件攜帶的VM的地址在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)表項(xiàng)中的遷移狀態(tài)為“未遷移“,則將表項(xiàng)中的端口狀態(tài)更改為“up”,同時(shí),將該端口 modify事件同步到本SDN控制器集群內(nèi)的其它SDN控制器,以便其它SDN控制器更新自身的該vPort表項(xiàng)。
      [0064]可見(jiàn),通過(guò)上述步驟501?504,SDN控制器集群內(nèi)的每個(gè)SDN控制器分別維護(hù)本集群內(nèi)所有SDN控制器下掛的OVS上的vPort列表,vPort列表中的每條vPort表項(xiàng)包含:vPort連接的VM的地址、該VM的遷移狀態(tài)、該vPort的端口狀態(tài)。其中,遷移狀態(tài)分為:遷移和未遷移兩種;端口狀態(tài)分為:up和down兩種。
      [0065]SDN控制器集群中的一個(gè)控制器為L(zhǎng)eader, Leader可以預(yù)先指定,也可以根據(jù)預(yù)設(shè)規(guī)則選舉,只有Leader上使能了 SDN控制器集群的集群IP地址。
      [0066]SDN控制器集群具有集群IP地址,集群IP地址只在集群中擔(dān)任Leader角色的控制器上生效,同時(shí)每個(gè)控制器具有自己的生效的獨(dú)立IP地址,即非Leader上只有自己的獨(dú)立IP地址生效,而Leader上生效的IP地址則有兩個(gè):集群IP地址和自己的獨(dú)立IP地址。
      [0067]步驟505:當(dāng)VMM要發(fā)起VM遷移時(shí),向SDN控制器集群發(fā)送VM遷移通知消息,該消息的目的IP地址為該SDN控制器集群的集群IP地址,該消息包括:遷出OVS的地址、遷入OVS的地址和該要遷移的VM的地址。
      [0068]遷出OVS即VM當(dāng)前所連接的0VS,遷入OVS即VM要遷移到的0VS。
      [0069]VM遷移通知消息采用REST調(diào)用方式,即要求對(duì)方收到該消息后必須返回響應(yīng)。
      [0070]步驟506:SDN控制器集群的Leader接收該VM遷移通知消息,根據(jù)該消息中的遷出OVS的地址,查找到遷出OVS連接的遷出SDN控制器的獨(dú)立IP地址,根據(jù)該消息中的遷入OVS的地址,查找到遷入OVS連接的遷入SDN控制器的獨(dú)立IP地址,根據(jù)該消息中的VM的地址查找到對(duì)應(yīng)的vPort表項(xiàng),將表項(xiàng)中的遷移狀態(tài)更改為“遷移”,向遷出SDN控制器和遷入SDN控制器分別發(fā)送vPort同步消息,該消息攜帶該vPort表項(xiàng)。
      [0071]可見(jiàn),vPort同步消息中的vPort表項(xiàng)中的遷移狀態(tài)為“遷移”、端口狀態(tài)為“up”。
      [0072]SDN控制器集群內(nèi)的每個(gè)SDN控制器會(huì)將自身連接的OVS信息(包括:地址等)同步到Leader上,這樣Leader上就保存了集群內(nèi)每個(gè)控制器的獨(dú)立IP地址與該控制器連接的OVS的地址對(duì)應(yīng)關(guān)系。
      [0073]vPort同步消息采用Rest調(diào)用方式。
      [0074]步驟507:遷出SDN控制器和遷入SDN控制器接收該vPort同步消息,根據(jù)該消息中的vPort表項(xiàng),同步自身維護(hù)的對(duì)應(yīng)vPort表項(xiàng),同步完畢,向Leader返回vPort同步完成消息。
      [0075]具體地,遷出SDN控制器和遷入SDN控制器會(huì)根據(jù)vPort同步消息攜帶的vPort表項(xiàng)中的VM的地址,在自身維護(hù)的vPort列表中查找到并同步對(duì)應(yīng)的vPort表項(xiàng)。
      [0076]步驟508:Leader收到遷出SDN控制器和遷入SDN控制器返回的vPort同步完成消息,向VMM返回VM遷移通知響應(yīng)消息,該消息攜帶遷移通知完成指示。
      [0077]步驟509 =VMM接收到Leader返回的該VM遷移通知響應(yīng)消息,開(kāi)始將該VM從遷出OVS遷移到遷入OVS。
      [0078]步驟510:遷入OVS感知到該VM在自身創(chuàng)建時(shí),向本OVS連接的遷入SDN控制器發(fā)送端口 add事件,該事件攜帶該VM的地址和端口狀態(tài):down ;接著遷入OVS向遷入SDN控制器發(fā)送端口 modify事件,該事件攜帶該VM的地址和端口狀態(tài):up。
      [0079]步驟511:遷入SDN控制器接收該端口 add事件,根據(jù)該事件攜帶的該VM的地址,在自身維護(hù)的vPort列表中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則不作進(jìn)一步處理,即保持該表項(xiàng)中的端口狀態(tài)為“up”不變;
      [0080]遷入SDN控制器接收該端口 modify事件,根據(jù)該事件攜帶的該VM的地址,在自身維護(hù)的vPort列表中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則不作進(jìn)一步處理,即保持該表項(xiàng)中的端口狀態(tài)為“up”不變。
      [0081]端口 add事件的產(chǎn)生有兩種情況:一、有新的VM創(chuàng)建;二、已有的VM遷入而導(dǎo)致在遷入OVS上創(chuàng)建該VM。本步驟中,當(dāng)遷入SDN控制器接收到端口 add事件,根據(jù)該事件攜帶的該VM的地址,在自身維護(hù)的vPort列表中未查找到對(duì)應(yīng)的vPort表項(xiàng),則認(rèn)為該VM是新的VM,而不是遷移的VM,此時(shí),遷入SDN控制器生成新的vPort表項(xiàng),表項(xiàng)中的遷移狀態(tài)為“未遷移”、端口狀態(tài)與端口 add事件一致為“down”,同時(shí),要將該端口 add事件同步到集群內(nèi)的其它SDN控制器,以便其它SDN控制器根據(jù)該端口 add事件生成新的vPort表項(xiàng)。
      [0082]本步驟中,當(dāng)遷入SDN控制器接收到端口 modify事件,根據(jù)該事件攜帶的該VM的地址查找到對(duì)應(yīng)的vPort表項(xiàng)后,若發(fā)現(xiàn)表項(xiàng)中的遷移狀態(tài)為“未遷移”,則認(rèn)為該VM為新的VM而不是遷移的VM,則將該表項(xiàng)中的端口狀態(tài)更改為與端口 modify事件一致為“up”,同時(shí),要將該端口 modify事件同步到集群內(nèi)的其它SDN控制器,以便其它SDN控制器將對(duì)應(yīng)vPort表項(xiàng)中的端口狀態(tài)也更改為“up”。
      [0083]步驟512:遷出OVS感知到該VM遷出時(shí),向本OVS連接的遷出SDN控制器發(fā)出端口 delete事件,該事件攜帶該VM的地址和端口狀態(tài):down。
      [0084]步驟513:遷出SDN控制器接收該端口 delete事件,根據(jù)該事件攜帶的該VM的地址,在自身維護(hù)的vPort列表中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變,刪除自身保存的該VM的地址對(duì)應(yīng)的流表項(xiàng),并將該vPort表項(xiàng)中的遷移狀態(tài)更改為“未遷移”,同時(shí),將該端口 delete事件同步到集群內(nèi)的其它SDN控制器,其中,delete事件的原因選項(xiàng)中攜帶VM發(fā)生遷移的指示,以便其它SDN控制器刪除該VM的地址對(duì)應(yīng)的流表項(xiàng),且若該VM的地址對(duì)應(yīng)的vPort表項(xiàng)中的遷移狀態(tài)為“遷移”,則更改為“未遷移”。
      [0085]實(shí)際應(yīng)用中,若SDN控制器收到端口 delete事件后,根據(jù)事件攜帶的VM的地址查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該vPort表項(xiàng)中的遷移狀態(tài)為“未遷移”,則認(rèn)為該VM為正常下線,刪除該VM的地址對(duì)應(yīng)的流表項(xiàng),并刪除該vPort表項(xiàng),同時(shí),將該端口 delete事件同步到集群內(nèi)的其它SDN控制器,以便其它SDN控制器刪除該VM的地址對(duì)應(yīng)的流表項(xiàng)及對(duì)應(yīng)的vPort表項(xiàng)。
      [0086]本申請(qǐng)實(shí)施例具有以下有益技術(shù)效果:
      [0087]通過(guò)在集群內(nèi)的每個(gè)SDN控制器上維護(hù)全局vPort列表,使得vPort的狀態(tài)在集群內(nèi)同步;當(dāng)要發(fā)起對(duì)VM的遷移時(shí),通過(guò)leader通知遷出控制器和遷入控制器更改vPort的遷移狀態(tài)為“遷移”,從而:遷出、遷入控制器都能夠準(zhǔn)確得知VM發(fā)生了遷移。
      [0088]另外,當(dāng)遷入控制器收到端口 add事件后以及當(dāng)遷出控制器收到端口 delete事件后,都不更改vPort表項(xiàng)的端口狀態(tài)“up”,這樣,不僅保證了 vPort表項(xiàng)的內(nèi)容全局同步,同時(shí),也使得遷入、遷出控制器上的流量都不中斷;另外,當(dāng)遷出控制器收到端口 delete事件后,才將vPort表項(xiàng)的遷移狀態(tài)更改為“未遷移”,并將端口 delete事件同步到其它控制器,不僅保證了 vPort表項(xiàng)內(nèi)容的全局同步,同時(shí)也保證了整個(gè)集群上的流量不中斷。
      [0089]圖6為本申請(qǐng)一實(shí)施例提供的VM遷移裝置的組成示意圖,該裝置位于SDN控制器集群中的SDN控制器上,該裝置主要包括:vPort列表維護(hù)模塊和vPort同步模塊,其中:
      [0090]vPort列表維護(hù)模塊:維護(hù)本SDN控制器集群下掛的所有OVS的vPort列表,每個(gè)vPort表項(xiàng)包含的地址、遷移狀態(tài)和端口狀態(tài)。
      [0091]vPort同步模塊:接收本集群的Leader發(fā)來(lái)的vPort同步消息,確定該消息中的vPort表項(xiàng)對(duì)應(yīng)的VM要發(fā)生遷移,則根據(jù)該消息中的vPort表項(xiàng)將vPort列表維護(hù)模塊中的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)更新為“up”。
      [0092]優(yōu)選地,本實(shí)施例提供的VM遷移裝置進(jìn)一步包括端口事件處理模塊:接收本控制器下掛的OVS發(fā)來(lái)的端口 delete事件,根據(jù)該事件攜帶的VM的地址,在vPort列表維護(hù)模塊中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變,刪除自身保存的該VM的地址對(duì)應(yīng)的流表項(xiàng),將vPort列表維護(hù)模塊中的該vPort表項(xiàng)中的遷移狀態(tài)更改為“未遷移”,向集群內(nèi)的其它SDN控制器轉(zhuǎn)發(fā)該端口delete事件,其中該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示。
      [0093]優(yōu)選地,端口事件處理模塊進(jìn)一步用于,接收其它SDN控制器發(fā)來(lái)的端口 delete事件,發(fā)現(xiàn)該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示,則根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的流表項(xiàng),刪除查找到的流表項(xiàng),且,若vPort列表維護(hù)模塊中該VM的地址對(duì)應(yīng)的vPort表項(xiàng)中的遷移狀態(tài)為“遷移”,則將其更改為“未遷移”。
      [0094]優(yōu)選地,端口事件處理模塊進(jìn)一步用于,接收本控制器下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址,在vPort列表維護(hù)模塊中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變;接收本控制器下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址,在vPort列表維護(hù)模塊中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變。
      [0095]優(yōu)選地,端口事件處理模塊進(jìn)一步用于,接收本控制器下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址在vPort列表維護(hù)模塊中查找對(duì)應(yīng)的vPort表項(xiàng),若未查找到,則在vPort列表維護(hù)模塊中生成新的vPort表項(xiàng),該表項(xiàng)包含:該VM的地址、遷移狀態(tài):未遷移、端口狀態(tài):down,同時(shí),將該端口 add事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器生成相同的vPort表項(xiàng);
      [0096]接收本控制器下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址在vPort列表維護(hù)模塊查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)表項(xiàng)中的遷移狀態(tài)為“未遷移“,則將表項(xiàng)中的端口狀態(tài)更改為“up”,同時(shí),將該端口 modify事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器將自身的該vPort表項(xiàng)中的端口狀態(tài)更改為“up”。
      [0097]本申請(qǐng)實(shí)施例提供的SDN控制器集群中的SDN控制器可以是軟硬件結(jié)合的可編程設(shè)備,從硬件層面而言,SDN控制器的硬件架構(gòu)示意圖具體可以參見(jiàn)圖7。圖7為本申請(qǐng)實(shí)施例提供的包含VM遷移裝置的SDN控制器的硬件結(jié)構(gòu)示意圖。該SDN控制器中包括:機(jī)器可讀存儲(chǔ)介質(zhì)、CPU和其它硬件,其中:
      [0098]機(jī)器可讀存儲(chǔ)介質(zhì):存儲(chǔ)指令代碼;所述指令代碼被CPU執(zhí)行時(shí)完成的操作主要為VM遷移裝置完成的功能。
      [0099]CPU:與機(jī)器可讀存儲(chǔ)介質(zhì)通信,讀取和執(zhí)行機(jī)器可讀存儲(chǔ)介質(zhì)中存儲(chǔ)的所述指令代碼,完成上述VM遷移裝置完成的功能。
      [0100]當(dāng)上述VM遷移裝置作為一個(gè)邏輯意義上的裝置時(shí),其是通過(guò)CPU運(yùn)行機(jī)器可讀存儲(chǔ)介質(zhì)中對(duì)應(yīng)的計(jì)算機(jī)程序指令形成的。當(dāng)對(duì)應(yīng)的計(jì)算機(jī)程序指令被執(zhí)行時(shí),形成的VM遷移裝置用于按照上述實(shí)施例中的VM遷移方法執(zhí)行相應(yīng)操作。
      [0101]圖8為本申請(qǐng)另一實(shí)施例提供的VM遷移裝置的組成示意圖,該裝置位于SDN控制器集群的leader上,該裝置主要包括:遷移通知處理模塊和遷移通知響應(yīng)模塊,其中:
      [0102]遷移通知處理模塊:接收VMM發(fā)來(lái)的VM遷移通知消息,該消息攜帶VM的遷出OVS和遷入OVS的地址,向遷出OVS連接的遷出SDN控制器、遷入OVS連接的遷入SDN控制器發(fā)送vPort同步消息,同步消息攜帶該VM對(duì)應(yīng)的vPort表項(xiàng),表項(xiàng)中的遷移狀態(tài)為“遷移”,端口狀態(tài)為“up”。
      [0103]遷移通知響應(yīng)模塊:接收遷出SDN控制器、遷入SDN控制器返回的vPort同步完成消息,向VMM返回VM遷移通知完成消息,以使得:VMM開(kāi)始遷移該VM。
      [0104]優(yōu)選地,遷移通知處理模塊發(fā)送vPort同步消息時(shí)采用REST調(diào)用方式。
      [0105]本申請(qǐng)實(shí)施例提供的SDN控制器集群中的Leader可以是軟硬件結(jié)合的可編程設(shè)備,從硬件層面而言,Leader的硬件架構(gòu)示意圖具體可以參見(jiàn)圖9。圖9為本申請(qǐng)實(shí)施例提供的包含VM遷移裝置的Leader的硬件結(jié)構(gòu)示意圖。該Leader中包括:機(jī)器可讀存儲(chǔ)介質(zhì)、CPU和其它硬件,其中:
      [0106]機(jī)器可讀存儲(chǔ)介質(zhì):存儲(chǔ)指令代碼;所述指令代碼被CPU執(zhí)行時(shí)完成的操作主要為VM遷移裝置完成的功能。
      [0107]CPU:與機(jī)器可讀存儲(chǔ)介質(zhì)通信,讀取和執(zhí)行機(jī)器可讀存儲(chǔ)介質(zhì)中存儲(chǔ)的所述指令代碼,完成上述VM遷移裝置完成的功能。
      [0108]當(dāng)上述VM遷移裝置作為一個(gè)邏輯意義上的裝置時(shí),其是通過(guò)CPU運(yùn)行機(jī)器可讀存儲(chǔ)介質(zhì)中對(duì)應(yīng)的計(jì)算機(jī)程序指令形成的。當(dāng)對(duì)應(yīng)的計(jì)算機(jī)程序指令被執(zhí)行時(shí),形成的VM遷移裝置用于按照上述實(shí)施例中的VM遷移方法執(zhí)行相應(yīng)操作。
      [0109]圖10為本申請(qǐng)另一實(shí)施例提供的VM遷移裝置的組成示意圖,該裝置位于VMM上,該裝置主要包括:遷移通知模塊和遷移觸發(fā)模塊,其中:
      [0110]遷移通知模塊:要發(fā)起VM遷移時(shí),向SDN控制器集群的Leader發(fā)送VM遷移通知消息,該消息攜帶:遷出OVS的地址、遷入OVS的地址和該要遷移的VM的地址。
      [0111]遷移觸發(fā)模塊:接收所述Leader返回的攜帶vPort同步完成指示的VM遷移通知響應(yīng)消息,開(kāi)始將該VM從遷出OVS遷移到遷入0VS。
      [0112]優(yōu)選地,遷移通知模塊發(fā)送VM遷移通知消息時(shí)采用REST調(diào)用方式。
      [0113]本申請(qǐng)實(shí)施例提供的VMM可以是軟硬件結(jié)合的可編程設(shè)備,從硬件層面而言,VMM的硬件架構(gòu)示意圖具體可以參見(jiàn)圖11。圖11為本申請(qǐng)實(shí)施例提供的包含VM遷移裝置的VMM的硬件結(jié)構(gòu)示意圖。該VMM中包括:機(jī)器可讀存儲(chǔ)介質(zhì)、CPU和其它硬件,其中:
      [0114]機(jī)器可讀存儲(chǔ)介質(zhì):存儲(chǔ)指令代碼;所述指令代碼被CPU執(zhí)行時(shí)完成的操作主要為VM遷移裝置完成的功能。
      [0115]CPU:與機(jī)器可讀存儲(chǔ)介質(zhì)通信,讀取和執(zhí)行機(jī)器可讀存儲(chǔ)介質(zhì)中存儲(chǔ)的所述指令代碼,完成上述VM遷移裝置完成的功能。
      [0116]當(dāng)上述VM遷移裝置作為一個(gè)邏輯意義上的裝置時(shí),其是通過(guò)CPU運(yùn)行機(jī)器可讀存儲(chǔ)介質(zhì)中對(duì)應(yīng)的計(jì)算機(jī)程序指令形成的。當(dāng)對(duì)應(yīng)的計(jì)算機(jī)程序指令被執(zhí)行時(shí),形成的VM遷移裝置用于按照上述實(shí)施例中的VM遷移方法執(zhí)行相應(yīng)操作。
      [0117]機(jī)器可讀存儲(chǔ)介質(zhì)可以是任何電子、磁性、光學(xué)或其它物理存儲(chǔ)裝置,可以包含或存儲(chǔ)信息,如可執(zhí)行指令、數(shù)據(jù),等等。例如,機(jī)器可讀存儲(chǔ)介質(zhì)可以是:RAM(Radom AccessMemory,隨機(jī)存取存儲(chǔ)器)、易失存儲(chǔ)器、非易失性存儲(chǔ)器、閃存、存儲(chǔ)驅(qū)動(dòng)器(如硬盤(pán)驅(qū)動(dòng)器)、固態(tài)硬盤(pán)、任何類(lèi)型的存儲(chǔ)盤(pán)(如光盤(pán)、dvd等),或者類(lèi)似的存儲(chǔ)介質(zhì),或者它們的組人口 O
      [0118]本申請(qǐng)所描述的任一機(jī)器可讀存儲(chǔ)介質(zhì)都可以被認(rèn)為是非暫時(shí)性的。
      [0119]以上所述僅為本申請(qǐng)的較佳實(shí)施例而已,并不用以限制本申請(qǐng),凡在本申請(qǐng)的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)保護(hù)的范圍之內(nèi)。
      【權(quán)利要求】
      1.一種虛擬機(jī)VM遷移方法,其特征在于,該方法包括: 軟件定義網(wǎng)絡(luò)SDN控制器集群中的SDN控制器維護(hù)本集群下掛的所有開(kāi)放虛擬交換機(jī)OVS的虛擬端口 vPort列表,每個(gè)vPort表項(xiàng)包含:VM的地址、遷移狀態(tài)和端口狀態(tài); 接收本集群的領(lǐng)導(dǎo)者Leader發(fā)來(lái)的vPort同步消息,確定該消息中的vPort表項(xiàng)對(duì)應(yīng)的VM要發(fā)生遷移,根據(jù)該消息中的vPort表項(xiàng)將自身的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)更新為“up”。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)該消息中的vPort表項(xiàng)將自身的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)更新為“up”之后進(jìn)一步包括: SDN控制器接收本控制器下掛的OVS發(fā)來(lái)的端口 delete事件,根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變,刪除自身保存的該VM的地址對(duì)應(yīng)的流表項(xiàng),將該vPort表項(xiàng)中的遷移狀態(tài)更改為“未遷移”,向集群內(nèi)的其它SDN控制器轉(zhuǎn)發(fā)該端口 delete事件,其中該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示。
      3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法進(jìn)一步包括: SDN控制器接收其它SDN控制器發(fā)來(lái)的端口 delete事件,發(fā)現(xiàn)該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示,則根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的流表項(xiàng),刪除查找到的流表項(xiàng),且,若該VM的地址對(duì)應(yīng)的vPort表項(xiàng)中的遷移狀態(tài)為“遷移”,則將其更改為“未遷移”。
      4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)該消息中的vPort表項(xiàng)將自身的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)更新為“up”之后進(jìn)一步包括: SDN控制器接收本控制器下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變; 接收本控制器下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變。
      5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述SDN控制器維護(hù)本集群下掛的所有OVS的vPort列表包括: SDN控制器接收自身下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址在自身查找對(duì)應(yīng)的vPort表項(xiàng),若未查找到,則生成新的vPort表項(xiàng),該表項(xiàng)包含:該VM的地址、遷移狀態(tài):未遷移、端口狀態(tài):down,同時(shí),將該端口 add事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器生成相同的vPort表項(xiàng); SDN控制器接收自身下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址在自身查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)表項(xiàng)中的遷移狀態(tài)為“未遷移”,則將表項(xiàng)中的端口狀態(tài)更改為“up”,同時(shí),將該端口 modify事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器將自身的該vPort表項(xiàng)中的端口狀態(tài)更改為“up”。
      6.—種虛擬機(jī)VM遷移方法,其特征在于,該方法包括: SDN控制器集群的領(lǐng)導(dǎo)者leader接收虛擬機(jī)管理者VMM發(fā)來(lái)的VM遷移通知消息,該消息攜帶VM的遷出OVS和遷入OVS的地址,leader向遷出OVS連接的遷出SDN控制器、遷入OVS連接的遷入SDN控制器發(fā)送vPort同步消息,同步消息攜帶該VM對(duì)應(yīng)的vPort表項(xiàng),表項(xiàng)中的遷移狀態(tài)為“遷移”,端口狀態(tài)為“up” ; Leader接收遷出SDN控制器、遷入SDN控制器返回的vPort同步完成消息,向VMM返回VM遷移通知完成消息,以使得:VMM開(kāi)始遷移該VM。
      7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述vPort同步消息采用REST調(diào)用方式。
      8.—種虛擬機(jī)VM遷移方法,其特征在于,該方法包括: 當(dāng)虛擬機(jī)管理者VMM要發(fā)起VM遷移時(shí),向SDN控制器集群的領(lǐng)導(dǎo)者Leader發(fā)送VM遷移通知消息,該消息攜帶:遷出OVS的地址、遷入OVS的地址和該要遷移的VM的地址; VMM接收所述Leader返回的攜帶vPort同步完成指示的VM遷移通知響應(yīng)消息,開(kāi)始將該VM從遷出OVS遷移到遷入OVS。
      9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述VM遷移通知消息采用REST調(diào)用方式。
      10.一種虛擬機(jī)VM遷移裝置,位于軟件定義網(wǎng)絡(luò)SDN控制器集群中的SDN控制器上,其特征在于,該裝置主要包括: 虛擬端口 vPort列表維護(hù)模塊:維護(hù)本SDN控制器集群下掛的所有開(kāi)放虛擬交換機(jī)OVS的vPort列表,每個(gè)vPort表項(xiàng)包含:VM的地址、遷移狀態(tài)和端口狀態(tài); vPort同步模塊:接收本集群的Leader發(fā)來(lái)的vPort同步消息,確定該消息中的vPort表項(xiàng)對(duì)應(yīng)的VM要發(fā)生遷移,根據(jù)該消息中的vPort表項(xiàng)將vPort列表維護(hù)模塊中的對(duì)應(yīng)vPort表項(xiàng)中的遷移狀態(tài)更新為“遷移”、端口狀態(tài)為“up”。
      11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述裝置進(jìn)一步包括: 端口事件處理模塊:接收本控制器下掛的OVS發(fā)來(lái)的端口 delete事件,根據(jù)該事件攜帶的VM的地址,在vPort列表維護(hù)模塊中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變,刪除自身保存的該VM的地址對(duì)應(yīng)的流表項(xiàng),將該vPort表項(xiàng)中的遷移狀態(tài)更改為“未遷移”,向集群內(nèi)的其它SDN控制器轉(zhuǎn)發(fā)該端口 delete事件,其中該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示。
      12.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述端口事件處理模塊進(jìn)一步用于, 接收其它SDN控制器發(fā)來(lái)的端口 delete事件,發(fā)現(xiàn)該事件的原因選項(xiàng)中攜帶VM發(fā)生遷移指示,則根據(jù)該事件攜帶的VM的地址,在自身查找到對(duì)應(yīng)的流表項(xiàng),刪除查找到的流表項(xiàng),且,若vPort列表維護(hù)模塊中該VM的地址對(duì)應(yīng)的vPort表項(xiàng)中的遷移狀態(tài)為“遷移”,則將其更改為“未遷移”。
      13.根據(jù)權(quán)利要求10所述的裝置,其特征在于, 所述端口事件處理模塊進(jìn)一步用于,接收本控制器下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址,在vPort列表維護(hù)模塊中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變;接收本控制器下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址,在vPort列表維護(hù)模塊中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)該表項(xiàng)中的遷移狀態(tài)為“遷移”,則保持該表項(xiàng)中的端口狀態(tài)為“up”不變。
      14.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述端口事件處理模塊進(jìn)一步用于, 接收本控制器下掛的OVS發(fā)來(lái)的端口 add事件,根據(jù)該事件攜帶的VM的地址在vPort列表維護(hù)模塊中查找對(duì)應(yīng)的vPort表項(xiàng),若未查找到,則生成新的vPort表項(xiàng),該表項(xiàng)包含:該VM的地址、遷移狀態(tài):未遷移、端口狀態(tài):down,同時(shí),將該端口 add事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器生成相同的vPort表項(xiàng); 接收本控制器下掛的OVS發(fā)來(lái)的端口 modify事件,根據(jù)該事件攜帶的VM的地址在vPort列表維護(hù)模塊中查找到對(duì)應(yīng)的vPort表項(xiàng),發(fā)現(xiàn)表項(xiàng)中的遷移狀態(tài)為“未遷移”,則將表項(xiàng)中的端口狀態(tài)更改為“up”,同時(shí),將該端口 modify事件同步到本集群內(nèi)的其它SDN控制器,以使得其它SDN控制器將自身的該vPort表項(xiàng)中的端口狀態(tài)更改為“up”。
      15.一種虛擬機(jī)VM遷移裝置,位于SDN控制器集群的領(lǐng)導(dǎo)者leader上,其特征在于,該裝置主要包括: 遷移通知處理模塊:接收虛擬機(jī)管理者VMM發(fā)來(lái)的VM遷移通知消息,該消息攜帶VM的遷出OVS和遷入OVS的地址,向遷出OVS連接的遷出SDN控制器、遷入OVS連接的遷入SDN控制器發(fā)送vPort同步消息,同步消息攜帶該VM對(duì)應(yīng)的vPort表項(xiàng),表項(xiàng)中的遷移狀態(tài)為“遷移”,端口狀態(tài)為“up”; 遷移通知響應(yīng)模塊:接收遷出SDN控制器、遷入SDN控制器返回的vPort同步完成消息,向VMM返回VM遷移通知完成消息,以使得:VMM開(kāi)始遷移該VM。
      16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述遷移通知處理模塊發(fā)送vPort同步消息時(shí)采用REST調(diào)用方式。
      17.一種虛擬機(jī)VM遷移裝置,位于虛擬機(jī)管理者VMM上,其特征在于,該裝置主要包括: 遷移通知模塊:要發(fā)起VM遷移時(shí),向SDN控制器集群的領(lǐng)導(dǎo)者Leader發(fā)送VM遷移通知消息,該消息攜帶:遷出OVS的地址、遷入OVS的地址和該要遷移的VM的地址; 遷移觸發(fā)模塊:接收所述Leader返回的攜帶vPort同步完成指示的VM遷移通知響應(yīng)消息,開(kāi)始將該VM從遷出OVS遷移到遷入0VS。
      18.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述遷移通知模塊發(fā)送VM遷移通知消息時(shí)采用REST調(diào)用方式。
      【文檔編號(hào)】G06F9/455GK104407911SQ201410605909
      【公開(kāi)日】2015年3月11日 申請(qǐng)日期:2014年10月31日 優(yōu)先權(quán)日:2014年10月31日
      【發(fā)明者】張祥輝, 張連雷, 溫濤, 林濤, 張寅飛, 任維春 申請(qǐng)人:杭州華三通信技術(shù)有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1