虚拟机迁移方法及装置的制造方法
【技术领域】
[0001]本发明涉及网络通信技术领域,尤其涉及虚拟机迀移方法及装置。
【背景技术】
[0002]随着网络通信技术的发展,虚拟机迀移技术也得到广泛的应用。
[0003]现有技术中,当虚拟机(Virtual Machine,VM)从位置标识分离协议(LocatorIdentifier Separat1n Protocol,LISP)网络中的第一数据中心迀移到第二数据中心之后,并且远端服务器学习到虚拟机迀入第二数据中心的路由地址之前,远端服务器向第一数据中心的已经迀出的虚拟机发送数据报文时,第一数据中心的路由器会根据已经生成的NULLO路由将该已经迀出的虚拟机对应的数据报文丢弃,从而使得在虚拟机迀移过程中,远端服务器和虚拟机之间的流量会出现短暂中断,降低了用户体验。
【发明内容】
[0004]本发明提虚拟机迀移方法及装置,以解决现有技术中在虚拟机迀移过程中,远端服务器和虚拟机之间的流量会出现短暂中断,降低了用户体验的问题。
[0005]根据本发明实施例的第一方面,提供一种虚拟机迀移方法,所述方法应用于位置标识分离协议LISP网络中的第一数据中心的路由器上,包括:
[0006]当虚拟机VM需要从所述第一数据中心迀移到所述LISP网络中的第二数据中心时,接受对所述虚拟机配置的转发路由,所述转发路由是依据所述虚拟机的主机地址和所述第二数据中心的路由器地址配置的;
[0007]根据所述第一数据中心的路由器接口地址和所述虚拟机的主机地址设置所述转发路由的掩码长度,并将所述设置后的转发路由下发至本地路由表中;
[0008]当接收到远端服务器发送的针对所述虚拟机的数据报文,且所述虚拟机已从所述第一数据中心迀移到所述第二数据中心时,则根据本地路由表中所述虚拟机对应的转发路由将所述数据报文转发至迀入所述第二数据中心的虚拟机。
[0009]根据本发明实施例的第二方面,提供一种虚拟机迀移装置,所述装置应用于位置标识分离协议LISP网络中的第一数据中心的路由器上,包括:
[0010]第一接受单元,用于当虚拟机VM需要从所述第一数据中心迀移到所述LISP网络中的第二数据中心时,接受对所述虚拟机配置的转发路由,所述转发路由是依据所述虚拟机的主机地址和所述第二数据中心的路由器地址配置的;
[0011]设置单元,用于根据所述第一数据中心的路由器接口地址和所述虚拟机的主机地址设置所述转发路由的掩码长度,并将所述设置后的转发路由下发至本地路由表中;
[0012]转发单元,用于当接收到远端服务器发送的针对所述虚拟机的数据报文,且所述虚拟机已从所述第一数据中心迀移到所述第二数据中心时,则根据本地路由表中所述虚拟机对应的转发路由将所述数据报文转发至迀入所述第二数据中心的虚拟机。
[0013]应用本发明实施例,当虚拟机需要从第一数据中心迀移到LISP网络中的第二数据中心时,接受对虚拟机配置的转发路由,该转发路由是依据需要迀移的虚拟机的主机地址和第二数据中心的路由器地址配置的;设置该转发路由的掩码长度,并将所述设置后的转发路由下发至本地路由表中;当接收到远端服务器发送的针对需要迀移的虚拟机的数据报文,且该需要迀移的虚拟机已从第一数据中心迀移到第二数据中心时,则根据本地路由表中该需要迀移的虚拟机对应的转发路由将接收到的数据报文转发至迀入第二数据中心的虚拟机,从而实现了通过用户配置的转发路由将接收到的数据报文转发至迀出的虚拟机,能够保证在虚拟机迀移过程中,服务器和迀移后的虚拟机之间的流量不会出现短暂中断,进而提高了用户体验。
【附图说明】
[0014]图1是应用本发明实施例虚拟机迁移的应用场景不意图;
[0015]图2是本发明虚拟机迀移方法的一个实施例流程图;
[0016]图3是本发明虚拟机迀移方法的另一个实施例流程图;
[0017]图4是本发明虚拟机迀移方法的另一个实施例流程图;
[0018]图5是本发明虚拟机迀移装置所在设备的一种硬件结构图;
[0019]图6是本发明虚拟机迀移装置的一个实施例框图。
【具体实施方式】
[0020]为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明实施例中技术方案作进一步详细的说明。
[0021]参见图1,为应用本发明实施例虚拟机迀移的应用场景示意图:
[0022]图1中示出了一种LISP网络的组网架构。该架构中包括:第一数据中心、第二数据中心、映射服务器和远端服务器。其中,LISP网络也可以包括除了第一数据中心和第二数据中心之外的其他数据中心,本发明实施例中只是以第一数据中心和第二数据中心为例,来说明本发明提出的虚拟机迀移方法。另外,映射服务器可以独立与各个数据中心之外,也可以与位于其中的一个数据中心上。
[0023]另外,第一数据中心和第二数据中心皆有路由器,并且每个路由器皆能够对数据报文进行LISP隧道封装(Ingress Tunnel Router,ITR)和LISP隧道解封装(EngressTunnel Router,ETR)。每个数据中心可以包括一个或多个虚拟机,而且各个数据中心的虚拟机可能会发生迀移,比如:第一数据中心的虚拟机可以迀移到第二数据中心。
[0024]现有技术中,当虚拟机从LISP网络中的第一数据中心迀移到第二数据中心之后,并且远端服务器学习到虚拟机迀入第二数据中心的路由地址之前,远端服务器向第一数据中心的已经迀出的虚拟机发送数据报文时,第一数据中心的路由器会根据已经生成的NULLO路由将该已经迀出的虚拟机对应的数据报文丢弃,从而使得在虚拟机迀移过程中,远端服务器和虚拟机之间的流量会出现短暂中断,降低了用户体验。
[0025]而本发明实施例中,在虚拟机迀移过程中,用户可以知道哪些虚拟机需要迀移,以及需要迀移到哪个目的地。其中,用户为网络管理员,且可以统筹安排LISP网络中各个虚拟机的位置。因此,当虚拟机VM需要从第一数据中心迀移到LISP网络中的第二数据中心时,用户会依据需要迀移的虚拟机的主机地址和第二数据中心的路由器地址配置该需要迀移的虚拟机对应的转发路由,并将该配置的转发路由发送到第一数据中心的路由器,以使该路由器将接收到的转发路由下发至本地路由表中,并用于当接收到远端服务器发送的针对迀移后的虚拟机的数据报文时,则根据用户配置的该虚拟机对应的转发路由将数据报文转发至迀移后的虚拟机,从而实现了在虚拟机迀移过程中,远端服务器和迀移后的虚拟机之间的流量不会出现短暂中断,进而提高了用户体验。
[0026]下面结合附图对本发明虚拟机迀移的实施例进行详细描述。
[0027]参见图2,为本发明虚拟机迀移方法的一个实施例流程图,该实施例应用于LISP网络中的第一数据中心的路由器上,该第一数据中心可以为图1中的第一数据中心,包括以下步骤:
[0028]步骤210:当虚拟机需要从第一数据中心迀移到LISP网络中的第二数据中心时,接受对需要迀移的虚拟机配置的转发路由,该转发路由是依据需要迀移的虚拟机的主机地址和第二