CN105208048A - 全局迁移管理器、网关、虚拟机迁移系统及其方法 - Google Patents
全局迁移管理器、网关、虚拟机迁移系统及其方法 Download PDFInfo
- Publication number
- CN105208048A CN105208048A CN201410238299.4A CN201410238299A CN105208048A CN 105208048 A CN105208048 A CN 105208048A CN 201410238299 A CN201410238299 A CN 201410238299A CN 105208048 A CN105208048 A CN 105208048A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- migration
- gateway
- overall
- network address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种全局迁移管理器、网关、虚拟机迁移系统及其方法。在不同子网间迁移时能够保障业务连续性和云服务的业务质量。全局迁移管理器,具有存储器,存储保存全局唯一虚拟机识别信息的虚拟机信息管理表;虚拟机迁移控制器,用于接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,进而用于接收虚拟机迁移完成通知,更新虚拟机信息管理表,根据全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;网关控制器,用于将所产生的虚拟机目的地址转换请求发送给各个网关,向源子网的网关发送虚假ARP更新请求消息。通过技术方案能够保障业务连续性和云服务的业务质量。
Description
技术领域
本发明涉及一种全局迁移管理器、网关、虚拟机迁移系统、利用全局迁移管理器进行控制的方法、网关的控制方法以及虚拟机迁移系统的虚拟机迁移方法。
背景技术
随着计算机硬件性能的快速发展,虚拟化技术正广泛应用在基于云计算的数据中心的各个层面,例如网络虚拟化、存储虚拟化和服务器虚拟化。服务器虚拟化通过使用虚拟化管理程序(或者虚拟化软件)将一台物理主机虚拟成多台虚拟机,各个虚拟机之间相互独立,共享主机上的各种硬件资源包括CPU、存储、网络等。服务器虚拟化不仅可以提高整个数据中心IT环境的资源利用效率,还可以通过虚拟机迁移等技术更加高效的管理整个云计算系统的工作负载,增强云计算系统的弹性和灵活性。
虚拟机迁移是指通过虚拟化管理程序将虚拟机从一个物理主机移动到另外一个物理主机,既可以在同一个数据中心子网内的不同物理主机之间进行迁移,也可以在不同数据中心子网间的物理主机之间进行迁移。通过将虚拟机从负载较重的主机移动到空闲主机或者将多个不同主机上的虚拟机整合到一台主机,能够提高云计算业务性能,改善资源利用效率,减少能量消耗。
但是虚拟机迁移为工作负载管理带来灵活性的同时也面临一些问题。首先,数据中心提供云服务的应用程序一般包含三层架构(web前端,处理核心和后端数据库),通常由多个虚拟机集合对外提供服务,不同虚拟机之间存在着复杂的依赖关系,当某一个虚拟机从一个子网迁移到另外一个子网其IP地址和主机名会发生改变,但是与其建立应用连接的其他虚拟机不能感知该虚拟机的迁移行为,则会导致虚拟机之间原有的socket应用连接中断,应用程序无法对外提供服务。另外如果外部客户端与该迁移虚拟机有业务连接,当虚拟机迁移至其他子网,客户端仍然使用虚拟机迁移前的IP地址寻址虚拟机,则会导致业务中断。因此在虚拟机跨子网迁移时,如何保障迁移虚拟机的原有业务连接不中断是一个亟待解决的问题。
专利文献I(US7,966,354,B2)提出一种采用DNS和三角路由实现跨子网的虚拟机迁移的方法。当虚拟机从一个数据中心站点移动到另外一个数据中心站点其IP地址发生变化时,DNS服务器更新相应的DNS记录将该虚拟机的DNS映射成为迁移后的IP地址,之后当客户端查询该虚拟机的DNS记录时,DNS服务器返回虚拟机迁移后IP地址使得客户端能够寻址到迁移后的虚拟机并重新建立连接。
在专利文献I公开的方法中要求应用服务在全局DNS服务器中注册,并要求每个可能发生迁移的虚拟机在该DNS服务器上都有唯一DNS记录以保证迁移后连接持续。但是很多早期开发的应用程序和一些面向企业的小型应用程序直接采用IP地址寻址服务器或者客户端,其架构并非为虚拟化云平台设计。当移植到云平台进行虚拟机迁移时,由于关联虚拟机并不知晓虚拟机迁移前后的IP地址映射关系而仍然使用迁移前IP地址寻址迁移的虚拟机,则会导致应用连接丢失。
发明内容
本发明提供一种全局迁移管理器、网关、虚拟机迁移系统、利用全局迁移管理器进行控制的方法、网关的控制方法以及虚拟机迁移系统的虚拟机迁移方法,保障业务连续性和云服务的业务质量。
实施方式涉及的全局迁移管理器,具有:存储器,存储有虚拟机信息管理表,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;虚拟机迁移控制器,用于接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步用于接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;网关控制器,用于将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息。
实施方式涉及的网关,具有:虚假ARP映射存储器,存储虚假ARP映射表,该虚假ARP映射表存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系;虚假ARP代理器,用于处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
实施方式涉及的虚拟机迁移系统,具有全局迁移管理器和网关,上述全局迁移管理器具有:存储器,存储有虚拟机信息管理表,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;虚拟机迁移控制器,用于接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步用于接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;网关控制器,用于将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息,上述网关具有:虚假ARP映射存储器,存储虚假ARP映射表,该虚假ARP映射表存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系;虚假ARP代理器,用于处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
实施方式涉及的利用全局迁移管理器进行控制的方法,具有:存储步骤,在全局迁移管理器的存储器中存储虚拟机信息管理表,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;虚拟机迁移控制步骤,全局迁移管理器的虚拟机迁移控制器接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;网关控制步骤,全局迁移管理器的网关控制器将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息。
实施方式涉及的网关的控制方法,具有:虚假ARP映射存储步骤,网关的虚假ARP映射存储器存储虚假ARP映射表,该虚假ARP映射表存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系;虚假ARP代理步骤,网关的虚假ARP代理器处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
实施方式涉及的虚拟机迁移系统的虚拟机迁移方法,该虚拟机迁移系统具有全局迁移管理器和网关,上述虚拟机迁移方法具有:存储步骤,将虚拟机信息管理表存储在全局迁移管理器的存储器中,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;虚拟机迁移控制步骤,全局迁移管理器的虚拟机迁移控制器接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;网关控制步骤,全局迁移管理器的网关控制器将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息;虚假ARP代理步骤,网关的虚假ARP代理器处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系的虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
通过本发明的全局迁移管理器、网关、虚拟机迁移系统、利用全局迁移管理器进行控制的方法、网关的控制方法以及虚拟机迁移系统的虚拟机迁移方法中的至少一个,能够保持在虚拟机迁移后IP地址发生变化的情况下应用连接不中断,从而保障业务连续性和云服务的业务质量。
附图说明
图1.根据一个实施例的虚拟机迁移系统的示例性框图。
图2.根据一个实施例的主机功能示例性框图。
图3.根据一个实施例的网关设备功能示例性框图。
图4.根据一个实施例的全局迁移管理器功能示例性框图。
图5.根据一个实施例的虚拟机迁移处理的流程图。
图6.根据一个实施例的网络状态迁移处理的流程图。
图7.根据一个实施例的虚假ARP更新请求和虚拟机目的地址转换请求处理的流程图。
图8.根据一个实施例的网关设备上ARP包处理的流程图。
图9.根据一个实施例的迁移后数据包从客户端到服务器路由的流程图。
图10.根据一个实施例的迁移后数据包从服务器到客户端路由的流程图。
图11.根据一个实施例的虚拟机迁移记录表的例子。
图12.根据一个实施例的虚假ARP映射表的例子。
图13.根据一个实施例的虚拟机目的地址转换表的例子。
图14.根据一个实施例的虚拟机源地址转换表的例子。
图15.根据一个实施例的虚拟化管理程序信息管理表的例子。
图16.根据一个实施例的网关信息管理表的例子。
图17.根据一个实施例的虚拟机信息管理表的例子。
具体实施方式
下面将结合实施例和附图,对本发明的内容进行详细阐述。
图1是根据一个实施例的虚拟机迁移系统的示例性框图,该系统例如可以包括多个位于相同地理位置或者不同地理位置的虚拟化的云数据中心网络100~101,用于连接多个数据中心的IP网络160,全局迁移管理器140,外部网络150以及客户端170~171。
每个虚拟化的云数据中心网络100~101例如包括多个物理主机120~122,运行在物理主机120~122上的若干虚拟机200~205以及网关(边界网关)130~131,执行各种应用程序的虚拟机200~205通过连接数据中心边界网关对外部用户提供云服务。以下虚拟化的云数据中心网络简称为数据中心。每个数据中心分属于独立的物理子网或逻辑子网,数据中心内部的主机及虚拟机经过边界网关连接至外部网络或者其他数据中心。IP网络用于连接多个数据中心网络。
根据动态负载变化和负载管理策略,虚拟机可以从一个主机迁移至另外一个主机。在本发明描述中虚拟机迁移前还被称为源服务器,迁移前所在的物理主机称之为源主机,迁移前所在数据中心称为源数据中心,虚拟机迁移后还被称为目标服务器,迁移后所在的物理主机成为目标主机,迁移后所在数据中心称为目标数据中心。例如在图1所示的实施例中,源服务器180即虚拟机203从源数据中心100的源主机121迁移至目标数据中心101的目标主机122后,成为目标服务器190即虚拟机205。
本发明描述中,虚拟机迁移是指虚拟机从一个子网的主机迁移到另外一个子网的主机,迁移后虚拟机的IP地址及所连接的网关地址会发生改变。例如在图1所示实施例中,当源服务器180迁移至目标服务器190时,IP地址从1.1.1.8变换为2.2.2.9,连接网关从网关130变换为网关131。
全局迁移管理器140负责统一管理各个数据中心的虚拟化管理平台、边界网关及跨数据中心间的虚拟机迁移行为。该全局迁移管理器140既可以位于数据中心100、101外经由IP网络160而实现上述管理,也可以位于数据中心100、101内来实现上述管理,甚至于可以位于数据中心内100、101的网关130、131、主机120~122等内来实现上述管理。关于全局迁移管理器140所处的位置没有特别限制,只要能够实现上述管理即可。
客户端可位于数据中心内部或者数据中心外部,通过与服务器建立应用连接对外提供应用服务或者从数据中心内部服务器获取应用服务。客户端171经由外部网络150连接至数据中心,在某些场景中,客户端也可以位于数据中心内部如客户端170,客户端与所连接的服务器180既可以位于相同的数据中心也可以分属于不同的数据中心。客户端170~171既可以是虚拟机也可以是物理机。
本发明描述中,客户端和服务器分别对应一个应用连接两端的网络节点。服务器是指发生迁移行为的节点。客户端是指与服务器连接的另外一侧网络节点。对于外部客户端171,客户端通过连接数据中心的服务器获取应用服务。对于内部客户端170,客户端也可以与服务器组合对外提供应用服务。在图1所示的实施例中,客户端170与服务器180之间有一个应用连接,其源IP地址和端口是<1.1.1.7:1001>,目的IP地址和端口是<1.1.1.8:8001>。本发明所述客户端与服务器在应用架构中的关系并不仅限于主从关系,也可以是对等关系。
图2是根据一个实施例的主机功能示例性框图。如图2所示,主机120例如包括运行在物理主机上的若干虚拟机200~201、虚拟化管理程序250和底层硬件280。
底层硬件280包括物理主机上的各种硬件设备,例如CPU290、内存291、网卡292以及硬盘293等等。
虚拟化管理程序250可以是介于底层硬件280与虚拟机200~201之间的抽象层,将各种物理硬件资源进行抽象并为虚拟机提供各种虚拟硬件资源。虚拟化管理程序250可以直接运行在物理硬件上例如VMwareESXi,也可以运行在主机操作系统上例如XEN。虚拟化管理程序250统一管理主机上的各种物理资源和虚拟资源,并提供API接口供外部程序调用,例如在本发明中全局迁移管理器可以通过API接口与虚拟化管理程序250进行交互,获取相关资源信息。
虚拟交换机260是虚拟化管理程序250中用于构筑虚拟网络交换平台的功能单元,例如包括虚拟端口270~272、源地址转换器274、交换引擎275以及虚拟机源地址转换表276。
虚拟端口270~272分别与虚拟机的虚拟网卡243、247以及物理主机上的物理网卡292连接,接收来自相连网卡的数据包并将数据包转发至相连网卡。
源地址转换器274处理来自全局负载均衡器的源地址转换请求消息,维护更新虚拟机源地址转换表276,修改数据包的源IP地址信息,具体处理流程在图9、图10中详细阐述。其中源地址转换表276如图14所示,例如可以包括虚拟机ID1401、转换前IP地址1402、转换后IP地址1403。此外该源地址转换表276例如还可以包含起始时间1404和结束时间1405。虚拟机ID1401用于记录迁移虚拟机的全局唯一虚拟机识别信息、即唯一ID标识。转换前IP地址1402和转换后IP地址1403用于记录迁移虚拟机的迁移后IP地址和初始IP地址。起始时间1404和结束时间1405用于记录该转换记录的生效时间和失效时间。
交换引擎275用于根据虚拟交换机的转发表信息将处理后的数据包转发至正确的网络端口。
虚拟机200~201是运行在虚拟化主机上的软件计算机系统,它例如可以包括应用程序210~213、操作系统220~221、以及虚拟硬件230~231。虚拟硬件230~231是经虚拟化管理程序250虚拟化的各种硬件资源,它例如可以包括虚拟CPU241、245,虚拟内存242、246,虚拟网卡243、247,以及虚拟硬盘244、248。相对与物理主机而言,虚拟机是其上的一个应用程序,而相对于虚拟机中的应用程序210~213而言,虚拟机是一个具有完整硬件系统功能的计算机。通过虚拟化管理程序250,一台物理主机可以虚拟化出多台虚拟机,共享物理硬件资源。通过移动虚拟机位置,实现负载灵活配置,从而提高资源利用效率。
图3是根据一个实施例的数据中心中的网关设备功能示例性框图。如图3所示,网关设备130例如可以包括包处理单元300、ARP处理单元310、数据接收单元330和数据转发单元340。
包处理单元300例如可以包括目的地址转换器301、包处理器303、路由引擎304和虚拟机目的地址转换表302。
目的地址转换器301用于处理来自全局迁移管理器140的虚拟机目的地址转换请求。另外目的地址转换器301还用于维护更新虚拟机目的地址转换表302,修改数据包的目的IP地址信息。网关对虚拟机目的地址转换请求处理流程在图7中作详细阐述,修改数据包目的IP地址的处理流程在图9、图10中作详细阐述。
其中虚拟机目的地址转换表302如图13所示,例如可以包括虚拟机ID1301、转换前IP地址1302、转换后IP地址1303。此外虚拟机目的地址转换表302例如还可以包括起始时间1304和结束时间1305。虚拟机ID1301用于记录迁移虚拟机的全局唯一虚拟机识别信息、即唯一ID标识。转换前IP地址1302和转换后IP地址1303用于记录迁移虚拟机的初始IP地址和迁移后的IP地址。起始时间1304和结束时间1305用于记录该转换记录的生效时间和失效时间。
包处理器303处理网关接收到的IP数据报文例如NAT转换、数据统计等,之后交由路由引擎304根据路由转发表将数据报文转发至正确的网络端口。
ARP处理单元310例如可以包括虚假ARP代理器311、虚假ARP映射表312和ARP包处理器313。
虚假ARP代理器311用于处理来自全局迁移管理器140的虚假ARP更新请求消息,维护更新虚假ARP映射表312,具体工作流程在图7中详细阐述。虚假ARP映射表如图12所示,该表将虚拟机的源服务器IP地址映射成为源数据中心关联网关的MAC地址,例如包括虚拟机ID1201、源服务器IP地址1202、虚假MAC地址1203。该虚假ARP映射表例如还可以包含起始时间1204和结束时间1205。
ARP包处理器313用于处理网关收到的ARP请求消息,产生ARP响应消息并发送至网络,具体工作流程在图8中详细阐述。
数据接收单元330负责接收来自数据中心内部及外部的数据报文、以及来自全局迁移管理器140的请求消息。数据转发单元340负责将网关处理后的各种数据报文转发至数据中心内部及外部,另外,将确认消息信令转发至全局迁移管理器140。
图4是根据一个实施例的全局迁移管理器功能示例性框图。如图4所示,全局迁移管理器140例如可以包括用户管理接口400、控制单元410、存储单元450、数据接收单元460和数据转发单元470。
用户管理接口400提供与系统管理员或者外部程序的交互接口,例如当某个数据中心负载过重时,系统管理员通过该接口触发跨数据中心的虚拟机迁移请求,将虚拟机从负载较重的数据中心迁移至负载较轻的数据中心,以均衡系统整体工作负载,改进资源利用效率。
控制单元410是整个全局迁移管理器140的核心单元,例如可以包括虚拟机迁移控制器411、虚拟交换机控制器412、网关控制器413和虚拟化管理程序控制器414。虚拟机迁移控制器411用于接收来自用户管理接口400的迁移命令,通知虚拟化管理程序控制器414启动虚拟机迁移。此外该虚拟机迁移控制器411还维护更新虚拟机迁移记录,在迁移完成后通知虚拟交换机控制器412和网关控制器413更新地址转换表。虚拟交换机控制器412用于管理目标服务器关联的虚拟机交换机,在虚拟机迁移完成后向虚拟交换机发送源地址转换请求消息。网关控制器413用于管理数据中心的网关设备,获取网关设备信息。另外该网关控制器413在虚拟机迁移完成后向网关发送目的地址转换请求消息以及虚假ARP更新请求消息。虚拟化管理程序控制器414用于与数据中心的主机虚拟化管理程序或者云平台管理程序进行交互,获取数据中心的各种物理资源及虚拟资源信息,例如虚拟机列表,虚拟交换机ID,主机与虚拟机映射关系等。
存储单元450可以存储虚拟机信息管理表451、虚拟机迁移记录表452、虚拟化管理程序信息管理表453和网关信息管理表454。
虚拟机信息管理表451如图17所示,用于记录虚拟机的初始位置信息和当前位置信息。该虚拟机信息管理表451例如可以包括虚拟机ID1700、初始IP地址1702。此外该虚拟机信息管理表451例如还可以包含初始MAC地址1703、当前IP地址1705、当前MAC地址170。进一步该虚拟机信息管理表451例如还可以包含虚拟机名称1701、初始主机名称/数据中心名称1704、当前主机名称/数据中心名称1707、当前状态1708。虚拟机ID1700是根据虚拟机初始IP地址生成的用于标识该虚拟机的全局唯一虚拟机识别信息即、唯一ID。虚拟机名称1701是当前虚拟机的主机名。初始IP地址1702,初始MAC地址1703,初始主机名称/数据中心名称1704记录了虚拟机初始位置信息。当前IP地址1705,当前MAC地址1706,当前主机名称/数据中心名称1707记录了虚拟机经过迁移之后当前的位置信息。当前状态1708记录了虚拟机当前的状态,例如迁移中,迁移完成,开机中,已关机等。上述虚拟机ID1700不仅仅可以根据虚拟机初始IP地址来生成,也可以根据虚拟机的其他信息来生成,例如虚拟机的初始MAC地址、虚拟机的位置、名称等,只要能够生成标识该虚拟机的全局唯一虚拟机识别信息的信息即可。上述IP地址是一个例子,可以是任意网络地址。MAC地址也是一个例子,可以是任意物理地址。
虚拟机迁移记录表452如图11所示,用于记录虚拟机迁移时迁移前和迁移之后的位置信息,迁移开始和结束时间以及迁移状态等。所述虚拟机迁移记录表452例如可以包括虚拟机ID1101。所述虚拟机迁移记录表452例如还可以包括迁移前IP地址1102、迁移前MAC地址1103、迁移后IP地址1105、迁移后MAC地址1106。所述所述虚拟机迁移记录表452例如还可以迁移前主机和数据中心名称1104、迁移后主机和数据中心名称1107、迁移起始时间1108、迁移结束时间1109以及当前状态1110。
虚拟化管理程序信息管理表453如图15所示,用于记录每个虚拟化管理程序信息、所在主机以及其所管辖的虚拟交换机和虚拟机信息。所述虚拟化管理程序信息管理表453例如可以包括主机名称1501、虚拟化管理程序ID1502、管辖的虚拟交换机ID1503、管辖的虚拟机列表1504等。
网关信息管理表454如图16所示,用于维护整个管理域中各数据中心的网关设备信息。所述网关信息管理表454例如可以包括网关所在数据中心1601、网关ID1602和网关包含的网络接口信息列表1603等。
数据接收单元460用于接收来自数据中心中各网元包括边界网关、虚拟化管理程序接口、虚拟交换机等响应消息。数据转发单元470用于向数据中心中各网元包括网关、虚拟化管理程序接口、虚拟交换机等发送请求消息。
接着,以图1所示的实施例即虚拟机203从数据中心100迁移至数据中心101为例子详细阐述本发明所述方法的工作流程。
首先参照图5来说明本发明中虚拟机迁移处理的流程。
如图5所示,在步骤501,全局迁移管理器启动后初始化各个功能单元,例如进行与各个虚拟化管理程序和网关设备建立连接、初始化虚拟机信息管理表451、虚拟化管理程序信息管理表453和网关信息管理表454,根据虚拟机初始IP地址生成全局唯一虚拟机ID。
之后,在步骤502全局迁移管理器的140的控制单元410开始接收并处理系统管理员或者本机管理策略发送的虚拟机迁移请求,具体处理过程如下:
首先在步骤503,全局迁移管理器140的虚拟机迁移控制器411通知源服务器180关联的虚拟化管理程序251开始迁移虚拟机203至目标数据中心101。接着在步骤504虚拟机迁移控制器414通知目标服务器190关联的虚拟化管理程序252启动迁移准备,例如配置存储空间等。接着在步骤504虚拟机203开始从源数据中心100的主机121向目标数据中心101的主机122迁移。
在步骤506,全局迁移管理器140的虚拟机迁移控制器414根据虚拟机203的IP地址搜索虚拟机信息管理表中是否存在匹配记录。如果不存在说明该虚拟机203在整个数据中心系统中不存在,在步骤508向系统管理员报告异常并停止虚拟机迁移。
如果虚拟机信息管理表中存在匹配记录,在步骤507虚拟机迁移控制器414获取该虚拟机的唯一ID信息并在步骤509根据该唯一ID搜索虚拟机迁移记录表是否存在匹配记录。如果不存在匹配记录说明该虚拟机是系统初始化后第一次迁移则进入步骤511在虚拟机迁移记录表中插入一条新记录,记录虚拟机迁移前信息。如果存在匹配记录进入步骤510更新该匹配记录中记录的迁移前后的位置信息。
虚拟机迁移控制器414更新虚拟机迁移记录表452,完成后进入步骤512等待虚拟机迁移完成通知。
以下参照图6进一步说明虚拟机迁移完成后网络状态迁移的具体流程。
在步骤601全局迁移管理器140的数据接收单元460接收目标服务器190关联的虚拟化管理程序252发送的虚拟机迁移完成通知,并转发至虚拟机迁移控制器414作进一步处理。在步骤602虚拟机迁移控制器414接收虚拟机迁移完成通知,并从上述虚拟机迁移完成通知消息中提取迁移后的虚拟机205的当前地址信息如IP地址,MAC地址等。
之后在步骤603虚拟机迁移控制器414根据迁移虚拟机ID搜索虚拟机迁移记录表找到匹配记录,在步骤604更新该匹配记录中对应的虚拟机迁移后的信息。之后在步骤605虚拟机迁移控制器414根据迁移虚拟机的ID搜索虚拟机信息管理表找到匹配的记录,在步骤606更新该匹配记录中对应的迁移后的虚拟机的当前信息。
接着,在步骤607虚拟机迁移控制器414根据虚拟机信息管理表对应的匹配记录中的虚拟机ID、虚拟机的初始IP地址信息和迁移后的当前IP地址信息,产生虚拟机目的地址转换请求消息,通过网关控制器413将该虚拟机目的地址转换请求消息发送至各个数据中心的网关设备130~131,其中网关设备信息存储在网关信息管理表454中。
在步骤608中虚拟机迁移控制器414比较虚拟机信息管理表和虚拟机迁移记录表中的匹配记录,检查虚拟机迁移记录表中的本次迁移之前的IP地址是否与虚拟机信息管理表中的初始IP地址相同。如果相同则说明该虚拟机是第一次从初始位置迁移至其他位置即该虚拟机是首次迁移,则进入步骤610,如果不同则说明该虚拟机迁移前位置并非虚拟机的初始位置,是从初始位置历经至少一次迁移后才到达的位置,即、该虚拟机非首次迁移则进入步骤611。
如果是首次迁移,即、虚拟机迁移记录表中的本次迁移之前的IP地址与虚拟机信息管理表中的初始IP地址相同,在步骤610全局迁移管理器140的网关控制器413根据虚拟机信息管理表向源数据中心100关联的网关设备130发送虚假ARP更新请求,请求源网关设备130将源虚拟机初始IP地址映射为该网关设备130关联的MAC地址。
如果非首次迁移,在步骤611全局迁移管理器140的虚拟交换机控制器412根据向源数据中心的源服务器关联的虚拟交换机发送虚拟机源地址转换记录删除请求,请求删除与虚拟机ID匹配的源地址转换记录。对于非首次迁移,由于本次迁移的源服务器是上次迁移的目标服务器,意味着作为上次迁移的网络迁移结果该服务器上关联的虚拟交换机会根据源地址转换表将源IP地址从本机地址转换为初始地址。经过本次迁移之后,新的目标服务器将替代该服务器为客户端提供连接,该服务器上的源地址转换记录将被删除不再使用。
之后在步骤612,全局迁移管理器140的虚拟交换机控制器412根据虚拟机信息管理表451向目标数据中心101中的目标服务器190关联的虚拟交换机262发送虚拟机源地址转换更新请求,要求将源地址为目标服务器IP地址2.2.2.9的数据包的源地址修改为虚拟机的初始IP地址1.1.1.8。
以下参照图7进一步说明数据中心网的关设备对来自全局迁移管理器的虚假ARP更新请求和虚拟机目的地址转换请求的处理流程。
在步骤700,网关130的虚假ARP代理器311接收到来自全局迁移管理器140的请求消息,首先在步骤701判断该请求消息类型,如果是虚假ARP更新请求消息进入步骤702作进一步处理,如果是虚拟机目的地址转换请求消息则进入步骤705作进一步处理。
如果是虚假ARP更新请求消息,在步骤702网关设备的虚假ARP代理器311向虚假ARP映射表插入一条虚假ARP映射记录,将源服务器的初始IP地址1.1.1.8对应的MAC地址映射成网关130与数据中心连接端口的MAC地址EE:21:22:23:24:25,使得发送至源服务器的数据包能被转发至关联网关。
在步骤703,虚假ARP代理器311根据该虚假ARP映射记录主动向源数据中心子网100广播虚假ARP响应消息。在步骤704当源数据中心子网100内的所有虚拟机收到该虚假ARP响应消息,更新本地ARP缓存。
如果是虚拟机目的地址转换请求,在步骤705根据虚拟机ID搜索虚拟机目的地址转换表中是否存在匹配记录。如果找到匹配记录说明该虚拟机非首次迁移则进入步骤706,将该匹配记录中的转换后IP地址设置成目标服务器的IP地址。如果没有找到匹配记录说明该虚拟机是首次迁移则进入步骤707,在虚拟机目的地址转换表中插入一条新记录,将源服务器的初始IP地址映射成目标服务器的IP地址。
以下参考图8说明数据中心的网关接收到ARP包的处理流程。
当源数据中心网络100中的虚拟机发送报文至源服务器时,首先检查本地ARP缓存,如果该ARP缓存已过期,则会向整个网络广播ARP请求查询该源服务器的IP地址。
在步骤801当网关设备的数据接收模块330收到一个数据报文,在步骤802判断是否是ARP报文,如果是ARP报文进入步骤803将报文转发至ARP包处理器313来进行处理,否则进入步骤804将报文转发至包处理器303作进一步处理。
在步骤803,ARP包处理器313获取ARP报文中请求的IP地址,在步骤805检查该IP地址是否是本网关地址,如果是则进入步骤807获取该网关地址对应的MAC地址并在步骤808发送ARP响应消息。否则进入步骤806。
在步骤806,ARP包处理器313搜索虚假ARP映射表是否存在匹配记录。如果不存在进入步骤811丢弃该报文,如果存在则进入步骤809。
在步骤809,ARP包处理器313根据该匹配记录获取对应的MAC地址即本网关MAC地址,并在步骤810发送虚假ARP响应消息。
以下参考图9详细阐述源服务器180迁移至目标服务器190之后IP地址改变的情况下客户端170的数据包路由至目标服务器190的具体过程。
在步骤900客户端170向源服务器180发送请求数据包,由于客户端170未感知源服务器迁移状态,该请求数据包的目的IP地址仍然是源服务器180的IP地址1.1.1.8。
在步骤901客户端170首先查询本地ARP缓存或者通过广播ARP请求获取源服务器180对应的虚假MAC地址即网关MAC作为目的MAC地址,将数据包封装成以太帧发送至网关130。
之后在步骤902,源数据中心100的关联网关130收到客户端170发来的以太帧,获取目的IP地址信息。在步骤903,搜索目的地址转换表检查是否存在匹配记录包含的转换前IP地址与该目的IP地址相同。如果存在匹配记录,进入步骤904将数据包中的目的IP地址修改为匹配记录中对应的转换后地址,然后进入步骤905将将数据包转发至路由引擎决定下一跳转发端口。如果没有找到相关匹配记录,则直接进入步骤905决定下一跳转发端口。
在步骤906,根据下一条转发端口将数据包转发至网络。由于数据包的目的IP地址被修改为目标服务器190的IP地址,数据包被转发至目标数据中心101的关联网关131。
在步骤907,目标数据中心101的关联网关131接收到目的IP地址为目标服务器190的数据报文。在步骤908,网关131根据目标服务器190对应的MAC地址将数据包封装成以太帧,并在步骤909将其转发至目标服务器190关联虚拟交换机262。
在步骤910该虚拟交换机262将以太帧转发至目标服务器190对应的虚拟网络端口。在步骤911,目标服务器190从虚拟网卡收到该数据帧,确认其目的IP地址与本机地址相同后将数据包交由上层应用程序处理。
经过上述步骤处理,客户端170发送至源服务器180的数据请求包被正确转发至目标服务器190处理。
在有些实施例中,客户端171位于外部网络或者其他数据中心,将跳过901步骤,数据包从外部网络被发送到源服务器170所在数据中心100的关联网关130进入步骤902开始处理。
以下参考图10详细阐述源服务器180迁移至目标服务器190之后IP地址改变的情况下目标服务器190的数据包路由至客户端170的具体过程。
在步骤1001,目标服务器190收到客户端170发送的请求数据包处理之后产生响应数据包发至客户端170。
在步骤1002,目标服务器190的关联虚拟交换机262收到该数据包,首先获取原IP地址。之后在步骤1003搜索源地址转换表检查是否存在匹配记录包含的转换前IP地址与该原IP地址相同。如果存在匹配记录,进入步骤1004将数据包中的原IP地址修改为匹配记录中对应的转换后地址,进入步骤1005决定下一条转发端口。如果在步骤1003没有找到相关匹配记录,则直接进入步骤1005决定下一条转发端口。
在步骤1006,根据转发端口将数据包转发至网络。由于数据包的目的IP地址是客户端170的IP地址,数据包经过目标数据中心101关联网关131发送至客户端170所在源数据中心100关联网关130。
在步骤1007,源数据中心100关联网关130收到目的IP地址为客户端170IP地址的数据包。在步骤1008使用客户端170MAC地址将数据包封装成以太帧。之后在步骤1009将以太帧转发至客户端170所在主机120的虚拟交换机250。
在步骤1010,虚拟交换机250将数据包转发至客户端170对应的虚拟网络端口。在步骤1011,客户端170收到数据包,根据原IP地址和目的IP地址识别该响应消息对应的应用连接,并交由应用程序进一步处理。
经过上述步骤后,目标服务器190发送至客户端170的响应数据包仍然被认为是由源服务器180发送的,从而能够被应用程序识别并正确处理。
在有些实施例中,客户端171位于外部网络物理主机,则在步骤1009数据包被转发至与客户端171连接的物理交换机,经由该物理交换机转发至客户端。在另外一些实施例中,客户端170位于与目标服务器190相同的数据中心101,则会跳过步骤1006~1008,从目标服务器190发来的数据包不经过网关130~131经由目标服务器关联虚拟交换机262直接转发至客户端关联的虚拟交换机。
本发明所述的虚拟机迁移方法主要包含以下特征:
(1)全局迁移管理器将每个虚拟机的初始网络地址映射成一个全局唯一虚拟机识别信息,例如将虚拟机的初始IP地址映射成一个全局唯一ID.当虚拟机从一个站点迁移到另一个站点,IP地址和主机地址发生改变时,使用该全局唯一ID可以识别和跟踪虚拟机的位置,该全局唯一ID不限于仅由初始IP地址来生成,也可以由其他任何信息来生成,只要是使得虚拟机被全局唯一识别的信息都可以被使用。
(2)当源虚拟机从源数据中心迁移至目标数据中心的目标虚拟机,全局迁移管理器通知源数据中心的网关设备广播虚假ARP响应消息将源虚拟机的IP地址映射成源数据中心的网关MAC地址,从而更新源数据中心中每个虚拟机的本地ARP缓存。同时全局迁移管理器通知源数据中心网关设备更新目的地址转换表,将目的IP地址为源虚拟机的数据包转换为目的IP地址为目标虚拟机的IP地址。
根据本发明,虚拟机迁移完成后通过广播虚假ARP响应消息更新虚拟机本地ARP缓存,源数据中心中的客户端发送数据报文至源虚拟机时,该数据报文会被封装成目的MAC地址为源服务器关联网关的MAC地址,转发至源数据中心关联网关设备。这里如果不发送虚假ARP响应消息,客户端仍使用本地ARP缓存中源虚拟机的MAC地址封装数据帧,并将其发送至源虚拟机,由于源虚拟机在源数据中心已不存在,该数据帧将会被丢弃从而导致连接中断。
根据本发明,虚拟机迁移完成后通知数据中心网关设备更新目的地址转换表,当源数据中心关联网关设备收到客户端发至源虚拟机的数据报文,根据目的地址转换表进行目的IP地址转换,将源虚拟机IP地址转换成目标虚拟机IP地址。由此发送到源虚拟机的请求报文就会被网关转发至目标虚拟机,从而保证虚拟机迁移前原有应用连接的请求消息在迁移后会被送至目标虚拟机正确处理。能够支持在虚拟机迁移后IP地址发生变化的情况下应用连接不中断,从而保障业务连续性和云服务的业务质量。
除了上述特征(1)、(2)以外,也还可以具有特征(3),全局迁移管理器还可以通知目标虚拟机关联的虚拟交换机更新源地址转换表,将源IP地址为目标虚拟机的数据包转换为源IP地址为源虚拟机的IP地址。
根据本发明,虚拟机迁移完成后通知目标虚拟机关联的虚拟交换机更新源地址转换表,当目标虚拟机关联的虚拟交换机收到目标虚拟机发送至客户端的数据报文,根据源地址转换表进行源IP地址转换,将目标虚拟机IP地址转换成源虚拟机IP地址。由此目标服务器发送至客户端的响应报文仍被客户端认为是从源虚拟机发送的,从而保证虚拟机迁移前原有应用连接的响应消息在迁移后能被客户端识别并正确处理。
实施方式即可以通过软件来实施某功能,也可以通过硬件、固件等来实现某功能。例如可以单独在硬件中(通过例如1个或多个ASIC(面向特定用途的IC))实施,或通过硬件与软件的混合来实施。
在本说明书中对特定的模块进行了说明,但在替代的实施方式中,这样的模块的1个或多个功能可以由单个模块或其他构成要素来提供,由单个模块提供的功能可以由2个以上的模块或其他构成要素组合提供。
针对一些实施方式进行了说明,但这些实施方式只是作为例子来提出的,并不限定本发明的范围。实际上,本说明书中所记载的新的方法及系统可以以其他各种形态具体化,并且,不脱离本发明的意旨就可进行本说明书中所述的方法及系统的形态的各种省略、置换及变更。所附的权利要求书及其等价范围为覆盖本发明的范围内所包含的形态及修改。
Claims (16)
1.一种全局迁移管理器,具有:
存储器,存储有虚拟机信息管理表,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;
虚拟机迁移控制器,用于接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步用于接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;
网关控制器,用于将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息。
2.根据权利要求1所述的全局迁移管理器,其特征在于,还具有:
虚拟交换机控制器,用于对上述虚拟机的虚拟交换机进行管理,在虚拟机迁移完成后向迁移后的虚拟机的虚拟交换机发送源地址转换请求消息,要求将迁移后的虚拟机的虚拟交换机中保存的迁移后的虚拟机的网络地址转换为迁移前的虚拟机的网络地址。
3.根据权利要求1或者2所述的全局迁移管理器,其特征在于:
上述虚拟机迁移控制器使用全局唯一虚拟机识别信息检索上述虚拟机迁移记录表是否存在匹配记录,当不存在匹配记录时,向上述虚拟机迁移记录表中插入将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应起来的记录,当存在匹配记录时,更新该匹配记录中记录的虚拟机迁移前的信息中的位置信息。
4.根据权利要求1或2所述的全局迁移管理器,其特征在于:
上述全局唯一虚拟机识别信息是根据虚拟机的初始网络地址而产生的。
5.根据权利要求3所述的全局迁移管理器,其特征在于:
上述全局唯一虚拟机识别信息是根据虚拟机的初始网络地址而产生的。
6.一种利用全局迁移管理器进行控制的方法,具有:
存储步骤,在全局迁移管理器的存储器中存储虚拟机信息管理表,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;
虚拟机迁移控制步骤,全局迁移管理器的虚拟机迁移控制器接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;
网关控制步骤,全局迁移管理器的网关控制器将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息。
7.根据权利要求6所述的利用全局迁移管理器进行控制的方法,其特征在于
虚拟交换机控制步骤,全局迁移管理器的虚拟交换机控制器对虚拟机的虚拟交换机进行管理,在虚拟机迁移完成后向迁移后的虚拟机的虚拟交换机发送源地址转换请求消息,要求将迁移后的虚拟机的虚拟交换机中保存的迁移后的虚拟机的网络地址转换为迁移前的虚拟机的网络地址。
8.根据权利要求6或者7所述的利用全局迁移管理器进行控制的方法,其特征在于:
上述虚拟机迁移控制器使用全局唯一虚拟机识别信息检索上述虚拟机迁移记录表是否存在匹配记录,当不存在匹配记录时,向虚拟机迁移记录表中插入将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应起来的记录,当存在匹配记录时,更新该匹配记录中记录的虚拟机迁移前的信息中的位置信息。
9.根据权利要求6或7所述的利用全局迁移管理器进行控制的方法,其特征在于:
上述全局唯一虚拟机识别信息是根据虚拟机的初始网络地址而产生的。
10.根据权利要求8所述的利用全局迁移管理器进行控制的方法,其特征在于:
上述全局唯一虚拟机识别信息是根据虚拟机的初始网络地址而产生的。
11.一种网关,具有:
虚假ARP映射存储器,存储虚假ARP映射表,该虚假ARP映射表存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系;
虚假ARP代理器,用于处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
12.根据权利要求11所述的网关,还具有:
ARP包处理器,用于处理网关接收到的ARP请求消息,产生ARP响应消息,在接收到的ARP报文中的网络地址与上述虚假ARP映射表中的网络地址对应时,发送虚假ARP响应信息。
13.一种网关的控制方法,具有:
虚假ARP映射存储步骤,网关的虚假ARP映射存储器存储虚假ARP映射表,该虚假ARP映射表存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系;
虚假ARP代理步骤,网关的虚假ARP代理器处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
14.根据权利要求13的网关的控制方法,其特征在于,还具有:
ARP包处理步骤,网关的ARP包处理器处理网关接收到的ARP请求消息,产生ARP响应消息,在接收到的ARP报文中的网络地址与上述虚假ARP映射表中的网络地址对应时,发送虚假ARP响应信息。
15.一种虚拟机迁移系统,具有全局迁移管理器和网关,
上述全局迁移管理器具有:
存储器,存储有虚拟机信息管理表,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;
虚拟机迁移控制器,用于接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步用于接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;
网关控制器,用于将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息,
上述网关具有:
虚假ARP映射存储器,存储虚假ARP映射表,该虚假ARP映射表存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系;
虚假ARP代理器,用于处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
16.一种虚拟机迁移系统的虚拟机迁移方法,该虚拟机迁移系统具有全局迁移管理器和网关,上述虚拟机迁移方法具有:
存储步骤,将虚拟机信息管理表存储在全局迁移管理器的存储器中,该虚拟机信息管理表保存有全局唯一虚拟机识别信息;
虚拟机迁移控制步骤,全局迁移管理器的虚拟机迁移控制器接收虚拟机迁移请求,通知源子网将处于源子网的虚拟机迁移至目标子网,并且从上述虚拟机管理信息表中提取出与迁移前的虚拟机的网络地址对应的全局唯一虚拟机识别信息,将虚拟机迁移前的信息与该全局唯一虚拟机识别信息对应地登记在虚拟机迁移记录表中,进一步接收虚拟机迁移完成通知,更新上述虚拟机信息管理表与上述虚拟机迁移记录表中的与该全局唯一虚拟机识别信息对应的迁移后的虚拟机的信息,根据上述全局唯一虚拟机识别信息、迁移前的虚拟机的网络地址以及迁移后的虚拟机的网络地址产生虚拟机目的地址转换请求;
网关控制步骤,全局迁移管理器的网关控制器将所产生的上述虚拟机目的地址转换请求发送给各个网关,进而在虚拟机迁移记录表中的与上述全局唯一虚拟机识别信息对应的本次迁移之前的网络地址与虚拟机信息管理表中的初始网络地址相同时,向源子网的网关发送虚假ARP更新请求消息;
虚假ARP代理步骤,网关的虚假ARP代理器处理来自全局迁移管理器的虚假ARP更新请求消息,使迁移前的虚拟机的网络地址与源子网的网关物理地址形成映射关系,更新存储迁移前的虚拟机的网络地址与源子网的网关的物理地址的映射关系的虚假ARP映射表,并且在更新虚假ARP映射表后主动向源子网广播虚假ARP响应消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410238299.4A CN105208048A (zh) | 2014-05-30 | 2014-05-30 | 全局迁移管理器、网关、虚拟机迁移系统及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410238299.4A CN105208048A (zh) | 2014-05-30 | 2014-05-30 | 全局迁移管理器、网关、虚拟机迁移系统及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105208048A true CN105208048A (zh) | 2015-12-30 |
Family
ID=54955481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410238299.4A Pending CN105208048A (zh) | 2014-05-30 | 2014-05-30 | 全局迁移管理器、网关、虚拟机迁移系统及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105208048A (zh) |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718301A (zh) * | 2016-01-15 | 2016-06-29 | 浪潮集团有限公司 | 一种基于vSwitch的虚拟机证书迁移方法 |
CN106656719A (zh) * | 2016-09-26 | 2017-05-10 | 华为技术有限公司 | 云间通信方法及相关设备、云间通信配置方法及相关设备 |
CN107368358A (zh) * | 2016-05-11 | 2017-11-21 | 华为技术有限公司 | 实现客户端所在虚拟机在不同主机间迁移的装置和方法 |
CN107370679A (zh) * | 2017-07-20 | 2017-11-21 | 郑州云海信息技术有限公司 | 一种实现迁移处理的方法及装置 |
CN108322393A (zh) * | 2017-01-18 | 2018-07-24 | 阿里巴巴集团控股有限公司 | 路由链路管理方法和系统、虚拟路由网关和宿主机网关 |
WO2018201461A1 (zh) * | 2017-05-05 | 2018-11-08 | 华为技术有限公司 | 虚拟机迁移的方法、装置和虚拟化系统 |
CN109076357A (zh) * | 2016-05-28 | 2018-12-21 | 华为技术有限公司 | 移动边缘系统中迁移应用方法、相关设备及系统 |
CN109274537A (zh) * | 2018-10-25 | 2019-01-25 | 深圳供电局有限公司 | 一种连续性网络虚拟化平台系统 |
CN109313786A (zh) * | 2016-06-06 | 2019-02-05 | 株式会社日立系统 | 数据迁移系统和数据迁移方法 |
CN109937401A (zh) * | 2016-11-15 | 2019-06-25 | 微软技术许可有限责任公司 | 经由业务旁路进行的负载均衡虚拟机的实时迁移 |
CN110011850A (zh) * | 2019-04-09 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 云计算系统中服务的管理方法和装置 |
CN110287169A (zh) * | 2019-06-28 | 2019-09-27 | 四川长虹电器股份有限公司 | 一种云应用之间的主数据迁移方法 |
CN110401729A (zh) * | 2019-06-28 | 2019-11-01 | 苏州浪潮智能科技有限公司 | 一种云平台服务器网络迁移方法、系统、终端及存储介质 |
US10628198B2 (en) | 2017-08-30 | 2020-04-21 | Red Hat Israel Ltd. | Hypervisor management of migration notification and response messages for virtual machines |
US10693801B2 (en) | 2018-02-20 | 2020-06-23 | Red Hat, Inc. | Packet drop reduction in virtual machine migration |
CN111522626A (zh) * | 2020-04-23 | 2020-08-11 | 杭州海康威视系统技术有限公司 | 一种虚拟机列表生成方法、装置及电子设备 |
US10838752B2 (en) | 2017-08-28 | 2020-11-17 | Red Hat Israel, Ltd. | Network notification loss detection for virtual machine migration |
US10965641B2 (en) | 2017-12-07 | 2021-03-30 | Red Hat, Inc. | Live virtual machine migration utilizing network address pools |
US10977064B2 (en) | 2017-08-23 | 2021-04-13 | Red Hat, Inc. | Live virtual machine migration |
US11070629B2 (en) | 2017-08-30 | 2021-07-20 | Red Hat Israel, Ltd | Migration notification and response messages for virtual machines |
CN113242268A (zh) * | 2021-07-12 | 2021-08-10 | 北京宇创瑞联信息技术有限公司 | 用于数据安全传输的认证方法、数据安全传输方法和系统 |
CN113301070A (zh) * | 2020-04-07 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 数据传输通道的建立方法及装置 |
CN113691436A (zh) * | 2021-09-07 | 2021-11-23 | 中国联合网络通信集团有限公司 | 虚拟机迁移方法及虚拟机迁移装置 |
CN113973114A (zh) * | 2020-07-21 | 2022-01-25 | 阿里巴巴集团控股有限公司 | 云服务器热迁移方法、虚拟交换机和软件定义网络架构 |
CN114003349A (zh) * | 2021-12-30 | 2022-02-01 | 杭州优云科技有限公司 | 一种虚拟机迁移方法及设备 |
CN114679461A (zh) * | 2022-03-30 | 2022-06-28 | 浙江大学 | 面向虚拟机热迁移场景的云网络会话连通性保障方法及系统 |
CN116094923A (zh) * | 2023-01-30 | 2023-05-09 | 杭州优云科技有限公司 | 云实例迁移后的网关更新方法及装置和电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101262505A (zh) * | 2008-04-22 | 2008-09-10 | 杭州华三通信技术有限公司 | 一种建立arp表项的方法、系统和装置 |
CN101557417A (zh) * | 2008-04-07 | 2009-10-14 | 株式会社日立制作所 | 用于hba迁移的方法和装置 |
CN102932498A (zh) * | 2012-10-24 | 2013-02-13 | 广州杰赛科技股份有限公司 | 一种云计算平台的虚拟机ip资源管理方法 |
CN103152200A (zh) * | 2013-03-07 | 2013-06-12 | 华为技术有限公司 | 虚拟机迁移方法、交换机、网络管理设备和网络系统 |
CN103430149A (zh) * | 2011-08-15 | 2013-12-04 | 华为技术有限公司 | 虚拟机迁移通知方法和系统 |
-
2014
- 2014-05-30 CN CN201410238299.4A patent/CN105208048A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101557417A (zh) * | 2008-04-07 | 2009-10-14 | 株式会社日立制作所 | 用于hba迁移的方法和装置 |
CN101262505A (zh) * | 2008-04-22 | 2008-09-10 | 杭州华三通信技术有限公司 | 一种建立arp表项的方法、系统和装置 |
CN103430149A (zh) * | 2011-08-15 | 2013-12-04 | 华为技术有限公司 | 虚拟机迁移通知方法和系统 |
CN102932498A (zh) * | 2012-10-24 | 2013-02-13 | 广州杰赛科技股份有限公司 | 一种云计算平台的虚拟机ip资源管理方法 |
CN103152200A (zh) * | 2013-03-07 | 2013-06-12 | 华为技术有限公司 | 虚拟机迁移方法、交换机、网络管理设备和网络系统 |
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718301B (zh) * | 2016-01-15 | 2018-10-09 | 浪潮集团有限公司 | 一种基于vSwitch的虚拟机证书迁移方法 |
CN105718301A (zh) * | 2016-01-15 | 2016-06-29 | 浪潮集团有限公司 | 一种基于vSwitch的虚拟机证书迁移方法 |
CN107368358A (zh) * | 2016-05-11 | 2017-11-21 | 华为技术有限公司 | 实现客户端所在虚拟机在不同主机间迁移的装置和方法 |
CN109076357A (zh) * | 2016-05-28 | 2018-12-21 | 华为技术有限公司 | 移动边缘系统中迁移应用方法、相关设备及系统 |
CN109313786A (zh) * | 2016-06-06 | 2019-02-05 | 株式会社日立系统 | 数据迁移系统和数据迁移方法 |
WO2018054177A1 (zh) * | 2016-09-26 | 2018-03-29 | 华为技术有限公司 | 云间通信方法及相关设备、云间通信配置方法及相关设备 |
CN106656719A (zh) * | 2016-09-26 | 2017-05-10 | 华为技术有限公司 | 云间通信方法及相关设备、云间通信配置方法及相关设备 |
US11050586B2 (en) | 2016-09-26 | 2021-06-29 | Huawei Technologies Co., Ltd. | Inter-cloud communication method and related device, and inter-cloud communication configuration method and related device |
CN109937401B (zh) * | 2016-11-15 | 2023-07-11 | 微软技术许可有限责任公司 | 经由业务旁路进行的负载均衡虚拟机的实时迁移 |
CN109937401A (zh) * | 2016-11-15 | 2019-06-25 | 微软技术许可有限责任公司 | 经由业务旁路进行的负载均衡虚拟机的实时迁移 |
CN108322393A (zh) * | 2017-01-18 | 2018-07-24 | 阿里巴巴集团控股有限公司 | 路由链路管理方法和系统、虚拟路由网关和宿主机网关 |
CN108322393B (zh) * | 2017-01-18 | 2021-03-16 | 阿里巴巴集团控股有限公司 | 路由链路管理方法和系统、虚拟路由网关和宿主机网关 |
WO2018201461A1 (zh) * | 2017-05-05 | 2018-11-08 | 华为技术有限公司 | 虚拟机迁移的方法、装置和虚拟化系统 |
US11210132B2 (en) | 2017-05-05 | 2021-12-28 | Huawei Technologies Co., Ltd. | Virtual machine migration in virtualization environment having different virtualization systems |
CN107370679A (zh) * | 2017-07-20 | 2017-11-21 | 郑州云海信息技术有限公司 | 一种实现迁移处理的方法及装置 |
US10977064B2 (en) | 2017-08-23 | 2021-04-13 | Red Hat, Inc. | Live virtual machine migration |
US10838752B2 (en) | 2017-08-28 | 2020-11-17 | Red Hat Israel, Ltd. | Network notification loss detection for virtual machine migration |
US11070629B2 (en) | 2017-08-30 | 2021-07-20 | Red Hat Israel, Ltd | Migration notification and response messages for virtual machines |
US10628198B2 (en) | 2017-08-30 | 2020-04-21 | Red Hat Israel Ltd. | Hypervisor management of migration notification and response messages for virtual machines |
US10965641B2 (en) | 2017-12-07 | 2021-03-30 | Red Hat, Inc. | Live virtual machine migration utilizing network address pools |
US10693801B2 (en) | 2018-02-20 | 2020-06-23 | Red Hat, Inc. | Packet drop reduction in virtual machine migration |
CN109274537A (zh) * | 2018-10-25 | 2019-01-25 | 深圳供电局有限公司 | 一种连续性网络虚拟化平台系统 |
CN110011850A (zh) * | 2019-04-09 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 云计算系统中服务的管理方法和装置 |
CN110287169A (zh) * | 2019-06-28 | 2019-09-27 | 四川长虹电器股份有限公司 | 一种云应用之间的主数据迁移方法 |
CN110287169B (zh) * | 2019-06-28 | 2022-02-01 | 四川长虹电器股份有限公司 | 一种云应用之间的主数据迁移方法 |
CN110401729A (zh) * | 2019-06-28 | 2019-11-01 | 苏州浪潮智能科技有限公司 | 一种云平台服务器网络迁移方法、系统、终端及存储介质 |
CN110401729B (zh) * | 2019-06-28 | 2022-12-23 | 苏州浪潮智能科技有限公司 | 一种云平台服务器网络迁移方法、系统、终端及存储介质 |
CN113301070A (zh) * | 2020-04-07 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 数据传输通道的建立方法及装置 |
CN111522626A (zh) * | 2020-04-23 | 2020-08-11 | 杭州海康威视系统技术有限公司 | 一种虚拟机列表生成方法、装置及电子设备 |
CN111522626B (zh) * | 2020-04-23 | 2024-04-02 | 杭州海康威视系统技术有限公司 | 一种虚拟机列表生成方法、装置及电子设备 |
CN113973114A (zh) * | 2020-07-21 | 2022-01-25 | 阿里巴巴集团控股有限公司 | 云服务器热迁移方法、虚拟交换机和软件定义网络架构 |
CN113242268A (zh) * | 2021-07-12 | 2021-08-10 | 北京宇创瑞联信息技术有限公司 | 用于数据安全传输的认证方法、数据安全传输方法和系统 |
CN113691436B (zh) * | 2021-09-07 | 2023-04-18 | 中国联合网络通信集团有限公司 | 虚拟机迁移方法及虚拟机迁移装置 |
CN113691436A (zh) * | 2021-09-07 | 2021-11-23 | 中国联合网络通信集团有限公司 | 虚拟机迁移方法及虚拟机迁移装置 |
CN114003349A (zh) * | 2021-12-30 | 2022-02-01 | 杭州优云科技有限公司 | 一种虚拟机迁移方法及设备 |
CN114003349B (zh) * | 2021-12-30 | 2022-07-12 | 杭州优云科技有限公司 | 一种虚拟机迁移方法及设备 |
CN114679461A (zh) * | 2022-03-30 | 2022-06-28 | 浙江大学 | 面向虚拟机热迁移场景的云网络会话连通性保障方法及系统 |
CN116094923A (zh) * | 2023-01-30 | 2023-05-09 | 杭州优云科技有限公司 | 云实例迁移后的网关更新方法及装置和电子设备 |
CN116094923B (zh) * | 2023-01-30 | 2023-08-25 | 杭州优云科技有限公司 | 云实例迁移后的网关更新方法及装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105208048A (zh) | 全局迁移管理器、网关、虚拟机迁移系统及其方法 | |
US11659441B2 (en) | Load balance method and apparatus thereof | |
US10187459B2 (en) | Distributed load balancing system, health check method, and service node | |
TWI736657B (zh) | 虛擬互聯網協定位址的切換方法及裝置 | |
US10887276B1 (en) | DNS-based endpoint discovery of resources in cloud edge locations embedded in telecommunications networks | |
CN110381163B (zh) | 网关节点转发服务请求的方法及网关节点 | |
US11095534B1 (en) | API-based endpoint discovery of resources in cloud edge locations embedded in telecommunications networks | |
CN108347493B (zh) | 混合云管理方法、装置和计算设备 | |
JP5729063B2 (ja) | 通信設定方法、通信設定サーバ、中継装置および通信設定プログラム | |
US9935920B2 (en) | Virtualization gateway between virtualized and non-virtualized networks | |
EP3070887B1 (en) | Communication method, device and system for virtual extensible local area network | |
US9887960B2 (en) | Providing services for logical networks | |
US9952885B2 (en) | Generation of configuration files for a DHCP module executing within a virtualized container | |
JP5608794B2 (ja) | 複数の仮想マシンを管理するための階層システム、方法、及びコンピュータプログラム | |
WO2020001442A1 (zh) | 一种数据处理方法及相关设备 | |
CN109496415B (zh) | 一种虚拟机访问远端加速设备方法及系统 | |
JP6574304B2 (ja) | 仮想ネットワーク管理 | |
EP3598301B1 (en) | Cloud management platform, virtual machine management method, system thereof | |
CN109981493B (zh) | 一种用于配置虚拟机网络的方法和装置 | |
CN102457583A (zh) | 一种虚拟机移动性的实现方法及系统 | |
EP3059929A1 (en) | Method for acquiring physical address of virtual machine | |
US11743325B1 (en) | Centralized load balancing of resources in cloud edge locations embedded in telecommunications networks | |
CN110213148B (zh) | 一种数据传输的方法、系统及装置 | |
CN111327668B (zh) | 网络管理方法、装置、设备和存储介质 | |
CN104506654A (zh) | 云计算系统及动态主机配置协议服务器备份方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20151230 |
|
WD01 | Invention patent application deemed withdrawn after publication |