一种虚拟机迁移方法及虚拟机管理器技术

技术编号:19821135 阅读:41 留言:0更新日期:2018-12-19 14:28
本申请实施例提供了一种虚拟机迁移方法及虚拟机管理器,其中,该方法包括:根据虚拟机迁移指令,将源主机端中与虚拟机迁移指令对应的待迁移虚拟机的磁盘镜像和内存数据向目的主机端迁移;接收到目的主机端中的虚拟机管理器发送的磁盘镜像和内存数据迁移完成的确认消息后,阻止待迁移虚拟机的连接状态表项被刷新;由源主机端的内核连接表项中提取待迁移虚拟机的连接状态表项,根据连接状态表项向目的主机端传输待迁移虚拟机的状态数据;由源主机端删除待迁移虚拟机的连接状态。本申请实施例解决了虚拟机在动态迁移后,造成已连接的业务中断或异常的问题。

【技术实现步骤摘要】
一种虚拟机迁移方法及虚拟机管理器
本申请涉及通信
,具体而言,涉及一种虚拟机迁移方法及虚拟机管理器。
技术介绍
虚拟化场景中,虚拟机迁移是一个基本和常用的功能,目前,虚拟机迁移分为静态迁移和动态迁移。静态迁移也叫做常规迁移、离线迁移(OfflineMigration),是在虚拟机关机或暂停的情况下,拷贝虚拟机磁盘文件与配置文件从源宿主机到目标宿主机中,实现的从一台物理机到另一台物理机的迁移;动态迁移(LiveMigration)也叫做在线迁移,是让虚拟机器在不关机,且能持续提供服务的前提下,从一台虚拟平台服务器迁移到其它的虚拟平台服务器运作。在理想状况下,虚拟机的动态迁移是虚拟机自身的内存数据和连接状态能在另一条主机上完全再生还原,即实现在线情况下虚拟机的连接状态信息在另一台主机上再生还原,且中间过程不断流,而现有方案不支持虚拟机带连接状态迁移,致使配有状态防火墙的虚拟机在线迁移后业务流量状态被重置,造成已连接的业务中断或异常,发生断流。综上,现有技术中,虚拟机在动态迁移后,会造成已连接的业务中断或异常,发生断流的问题。
技术实现思路
有鉴于此,本申请的目的在于提供一种虚拟机迁移方法及虚拟机管理器,以解决虚拟机在动态迁移后,造成已连接的业务中断或异常,发生断流的问题。第一方面,本申请实施例提供了一种虚拟机迁移方法,应用于位于源主机端中的虚拟机管理器,所述位于源主机端中的虚拟机管理器与位于目的主机端中的虚拟机管理器进行交互,包括:根据虚拟机迁移指令,将源主机端中与所述虚拟机迁移指令对应的待迁移虚拟机的磁盘镜像和内存数据向目的主机端迁移;接收到所述目的主机端中的虚拟机管理器发送的磁盘镜像和内存数据迁移完成的确认消息后,阻止所述待迁移虚拟机的连接状态表项被刷新;由所述源主机端的内核连接表项中提取所述待迁移虚拟机的所述连接状态表项,根据所述连接状态表项向所述目的主机端传输所述待迁移虚拟机的状态数据,以便所述目的主机端的虚拟机管理器根据所述状态数据为迁移后的虚拟机恢复所述连接状态表项;由所述源主机端删除所述待迁移虚拟机的连接状态。第二方面,本申请实施例提供了一种虚拟机迁移方法,应用于位于目的主机端中的虚拟机管理器,所述位于目的主机端中的虚拟机管理器与位于源主机端中的虚拟机管理器进行交互,包括:接收源主机端中的所述虚拟机管理器发送的待迁移虚拟机的磁盘镜像和内存数据;确认磁盘镜像和内存数据迁移完成后向所述源主机端发送确认消息,以触发所述源主机端中的所述虚拟机管理器发送所述待迁移虚拟机的状态数据;接收所述源主机端中的所述虚拟机管理器发送的所述待迁移虚拟机的状态数据,根据所述状态数据为迁移后的虚拟机恢复所述连接状态表项;确认所述待迁移虚拟机的连接状态在所述源主机端被删除后,使迁移后的虚拟机在所述目的主机端上线。第三方面,本申请实施例提供了一种虚拟机管理器,包括:迁移模块,用于根据虚拟机迁移指令,将源主机端中与所述虚拟机迁移指令对应的待迁移虚拟机的磁盘镜像和内存数据向目的主机端迁移;阻止模块,用于接收到所述目的主机端中的虚拟机管理器发送的磁盘镜像和内存数据迁移完成的确认消息后,阻止所述待迁移虚拟机的连接状态表项被刷新;传输模块,用于由所述源主机端的内核连接表项中提取所述待迁移虚拟机的所述连接状态表项,根据所述连接状态表项向所述目的主机端传输所述待迁移虚拟机的状态数据,以便所述目的主机端的虚拟机管理器根据所述状态数据为迁移后的虚拟机恢复所述连接状态表项;删除模块,用于由所述源主机端删除所述待迁移虚拟机的连接状态。第四方面,本申请实施例提供了一种虚拟机管理器,包括:接收模块,用于接收源主机端中的所述虚拟机管理器发送的待迁移虚拟机的磁盘镜像和内存数据;发送模块,用于确认磁盘镜像和内存数据迁移完成后向所述源主机端发送确认消息,以触发所述源主机端中的所述虚拟机管理器发送所述待迁移虚拟机的状态数据;恢复模块,用于接收所述源主机端中的所述虚拟机管理器发送的所述待迁移虚拟机的状态数据,根据所述状态数据为迁移后的虚拟机恢复所述连接状态表项;确认模块,用于确认所述待迁移虚拟机的连接状态在所述源主机端被删除后,使迁移后的虚拟机在所述目的主机端上线。本申请实施例虚拟机迁移方法,应用于位于源主机端中的虚拟机管理器,所述位于源主机端中的虚拟机管理器与位于目的主机端中的虚拟机管理器进行交互,位于源主机端中的虚拟机管理器根据接收到的虚拟机迁移指令,将源主机端中与所述虚拟机迁移指令对应的待迁移虚拟机的磁盘镜像和内存数据向目的主机端迁移,待目的主机端中的虚拟机管理器发送的磁盘镜像和内存数据迁移完成的确认消息后,阻止待迁移虚拟机的连接状态表项被刷新,这样在待迁移虚拟机迁移至目的主机端并在目的主机端上线之前,源主机端中的待迁移虚拟机的连接状态表项不会被刷新,在阻止待迁移虚拟机的连接状态表项被刷新时,由源主机端的内核连接表项中提取待迁移虚拟机的连接状态表项,根据连接状态表项向目的主机端传输待迁移虚拟机的状态数据,即将源主机端的待迁移虚拟机的连接状态发送至目的主机端,从而便于目的主机端的虚拟机管理器根据状态数据为迁移后的虚拟机恢复连接状态表项,最后从源主机端删除待迁移虚拟机的连接状态,即源主机端的待迁移虚拟机下线。由此现有技术相比,本申请实施例中在虚拟机迁移过程中,源主机端中的虚拟机管理器首先将待迁移虚拟机的磁盘镜像和内存数据先迁移至目的主机端,然后在向目的主机端传输状态数据前,会控制阻止待迁移虚拟机的连接状态表项被刷新,这样能够保证在目的主机端的迁移后的虚拟机与在源主机端的待迁移虚拟机连接状态以及内存数据均一致,即能够在目的主机端完全还原源主机端的待迁移虚拟机,即完成了虚拟机的在线迁移,且不会造成已连接的业务中断或异常。为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本申请实施例所提供的一种虚拟机迁移方法的流程示意图;图2示出了本申请实施例所提供的提取连接状态表项的方法流程示意图;图3示出了本申请实施例所提供的另一种虚拟机迁移方法流程示意图;图4示出了本申请实施例所提供的虚拟机在线迁移时的环境结构示意图;图5示出了本申请实施例所提供的一种虚拟机迁移方法的具体流程示意图图6示出了本申请实施例所提供的第一种虚拟机管理器的结构示意图;图7示出了本申请实施例所提供的第二种虚拟机管理器的结构示意图;图8示出了本申请实施例所提供的第三种虚拟机管理器的结构示意图;图9示出了本申请实施例所提供的第四种虚拟机管理器的结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例本文档来自技高网...

【技术保护点】
1.一种虚拟机迁移方法,应用于位于源主机端中的虚拟机管理器,所述位于源主机端中的虚拟机管理器与位于目的主机端中的虚拟机管理器进行交互,其特征在于,包括:根据虚拟机迁移指令,将源主机端中与所述虚拟机迁移指令对应的待迁移虚拟机的磁盘镜像和内存数据向目的主机端迁移;接收到所述目的主机端中的虚拟机管理器发送的磁盘镜像和内存数据迁移完成的确认消息后,阻止所述待迁移虚拟机的连接状态表项被刷新;由所述源主机端的内核连接表项中提取所述待迁移虚拟机的所述连接状态表项,根据所述连接状态表项向所述目的主机端传输所述待迁移虚拟机的状态数据,以便所述目的主机端的虚拟机管理器根据所述状态数据为迁移后的虚拟机恢复所述连接状态表项;由所述源主机端删除所述待迁移虚拟机的连接状态。

【技术特征摘要】
1.一种虚拟机迁移方法,应用于位于源主机端中的虚拟机管理器,所述位于源主机端中的虚拟机管理器与位于目的主机端中的虚拟机管理器进行交互,其特征在于,包括:根据虚拟机迁移指令,将源主机端中与所述虚拟机迁移指令对应的待迁移虚拟机的磁盘镜像和内存数据向目的主机端迁移;接收到所述目的主机端中的虚拟机管理器发送的磁盘镜像和内存数据迁移完成的确认消息后,阻止所述待迁移虚拟机的连接状态表项被刷新;由所述源主机端的内核连接表项中提取所述待迁移虚拟机的所述连接状态表项,根据所述连接状态表项向所述目的主机端传输所述待迁移虚拟机的状态数据,以便所述目的主机端的虚拟机管理器根据所述状态数据为迁移后的虚拟机恢复所述连接状态表项;由所述源主机端删除所述待迁移虚拟机的连接状态。2.根据权利要求1所述的方法,其特征在于,所述由所述源主机端的内核状态中提取所述待迁移虚拟机的所述连接状态表项,包括:遍历所述源主机端的全部所述内核连接表项,所述内核连接表项包括表征虚拟连接状态的源地址和目的地址;将源地址或目的地址与所述待迁移虚拟机的端口通过互联网协议群进行数据传输时所用到的任意一个IP地址进行匹配,将匹配成功的所述内核连接表项加入到结果列表中;将所述结果列表中的所述内核连接表项作为所述待迁移虚拟机的所述连接状态表项。3.根据权利要求2所述的方法,其特征在于,所述根据所述连接状态表项向所述目的主机端传输所述状态数据,包括:将所述连接状态表项转换为二进制流形式的所述状态数据,将所述状态数据传输给所述目的主机端。4.根据权利要求2所述的方法,其特征在于,所述互联网协议群包括传输控制协议TCP、因特网互联协议IP、用户数据报协议UDP和控制报文协议ICMP中的一种或多种的组合。5.根据权利要求1所述的方法,其特征在于,所述阻止所述待迁移虚拟机的连接状态表项被刷新,包括:向所述待迁移虚拟机连接的所述源主机端中的虚拟网桥下发用于阻止所述待迁移虚拟机的连接状态表项被刷新的流表;其中,所述流表的动作项为drop,所述虚拟网桥包括虚拟交换机和linux桥。6.一种虚拟机迁移方法,应用于位于目的主机端中的虚拟机管理器,所述位于目的主机端中的虚拟机管理器与位于源主机端中的虚拟机管理器进行交互,其特征在于,包括:接收源主机端中的所述虚拟机管理器发送的待迁移虚拟机的磁盘镜像和内存数据;确认磁盘镜像和内存数据迁移完成后向所述源主机端发送确认消息,以触发所述源主机端中的所述虚拟机管理器发送所述待迁移虚拟机的状态数据;接收所述源主机端中的所述虚...

【专利技术属性】
技术研发人员:黄爽唐强王剑
申请(专利权)人:新华三云计算技术有限公司
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1