一种提高基于热迁移虚拟机系统可用性的方法

文档序号:6367203阅读:296来源:国知局
专利名称:一种提高基于热迁移虚拟机系统可用性的方法
技术领域
本发明涉及计算机虚拟机技术领域,具体地说是一种提高基于热迁移虚拟机系统可用性的方法。
背景技术
随着计算机和网络技术的飞速发展,尤其是多核处理器的出现使得物理机的性能飞速提升,但是传统的使用方式往往未能充分利用物理机的能力,所以出现了虚拟化技术,它可以在单个物理机上运行多个虚拟计算机系统(简称虚拟机),大大提高了物理机的利用率。另外利用虚拟化技术实现对软件的封装,可以屏蔽异构的硬件对软件带来的影响,在 同一物理机上运行的多个虚拟机可以互不影响的运行,这就提高了软件的安全性和可管理性。市场上传统的高可用系统都是针对应用的高可用,并且对应用的高可用都需要额外的脚本来监控,不同的应用监控的脚本也不一样,这就对高可用系统的大范围应用带来了不便。通过虚拟化技术,将具体的应用封装到虚拟机内部,通过虚拟机的高可用来保证虚拟机内部软件的高可用,这样就无需关心虚拟机内部千差万别的应用。保障了虚拟机的高可用,就保障了虚拟机内部应用的高可用,这为软件高可用提供了一种新的思路。现有虚拟机高可用系统,都是通过共享存储存放虚拟机的镜像文件,这样就不需要额外的手段来保证不同机器上的存储镜像的不一致问题。当主机上的虚拟机宕机之后,在备机上面根据镜像文件再重新启动虚拟机。这种重新启动的方式,是最简便的实现方式,但是虚拟机的启动是需要时间的,这就导致了服务的宕机时间较长。

发明内容
本发明的目的是提供一种提高基于热迁移虚拟机系统可用性的方法。本发明的目的是按以下方式实现的,整个系统的核心模块是同步引擎,同步引擎分为三个部分通过心跳监测查看主虚拟机是否故障;通过热迁移实现内存的同步;通过镜像的快照实现主备机的存储镜像的同步;
同步引擎的心跳监测随着虚拟机的运行,当其内容修改到一定程度的时候,就会往磁盘镜像中写回数据,心跳监测模块负责监听主虚拟机的磁盘数据写回,一旦发现磁盘写回出现延时或者超过预计时间没有数据往磁盘写回,则认定该虚拟机出现故障,立即将备份虚拟机从暂停的状态恢复,向外提供服务,接替故障的虚拟机,从而实现虚拟机的失效切换;
同步引擎的热迁移模块所谓虚拟机热迁移,就是将运行状态的虚拟机从源服务器移至目的服务器上运行,在这个过程中虚拟机基本无需中止运行,是将源服务器端的虚拟机的内存信息,通过网络迭代拷贝至目的服务器,这个迭代的过程需要执行多次直至两边虚拟机的内存数据几乎一致,此时将源服务器端的虚拟机关闭,而目的服务器端虚拟机开启,整个过程称为虚拟机的热迁移,在本文中,将主虚拟机的内存数据不停的迭代拷贝至备份虚拟机中,实现主备虚拟机的内存数据同步,另外为了接收同步过来的内存数据,备份虚拟机不能关闭,应该处于暂停状态,所有的数据驻留内存当中,一旦主虚拟机故障,备份虚拟机从暂停状态直接切换到运行状态,该切换过程非常短暂,这也就大大缩短虚拟机故障的切换时间;
同步引擎的镜像同步模块,就是将每次写回主虚拟机磁盘镜像的文件进行一次快照,然后将快照同步至备份虚拟机端,然后备份虚拟机定期将快照恢复至磁盘镜像中,从而实现主备虚拟机的磁盘镜像的同步,镜像快照保存的是虚拟机镜像的修改内容,是基于增量的保存方式,所以同步的时间不会太长,另外在备份虚拟机端有一个存储缓存,备份过来的快照达到一定的程度再进行恢复以提高效率;
基于热迁移的虚拟机的系统搭建方法如下首先在启动主虚拟机之前,将源服务器上的主虚拟机镜像文件拷贝至备份服务器上,此时便开启虚拟机系统,系统会在主服务器上将源虚拟机开启运行,在备份服务器上将备虚拟机切换至暂停状态,并且在后台启动同步引擎,进行心跳监测,高频率的热迁移以及同步镜像文件,一旦发现主服务器上的虚拟机宕机,则立即将备份服务器上的备虚拟机从暂停状态恢复至运行状态,向外提供服务,实现虚拟机的闻可用;
具体包括以下步骤
(1)首先选择一个备份物理服务器,创建源虚拟机的备份虚拟机,备份虚拟机处于非活跃状态;
(2)对源虚拟机实现快照,保存内存数据;
(3)通过同步引擎将快照数据发送到备份物理服务器的备份虚拟机;
(4)备份虚拟机同步快照数据;
(5)高频率的执行步骤2,3,4;
(6)当故障发生时,备份虚拟机转为活跃状态。通过频繁的虚拟机的热迁移,同步位于两个物理服务器上的虚拟机,使其数据保持一致。高可用的实现对虚拟机内部的数据不做任何处理,对虚拟机内部的应用完全透明。无需采用共享存储来存放虚拟机的镜像文件,通过镜像快照的方式同步位于不同物理机上虚拟机的镜像文件,从而提高可用性。本发明的有益效果是本发明针对通过共享存储,重新启动虚拟机的方式来实现的虚拟机高可用系统,提出一种基于热迁移的虚拟机高可用系统及其实现方法。现有的虚拟机高可用系统都是通过使用共享存储设备,主机和备机可以访问相同的虚拟机镜像文件来实现高可用。在本发明中,通过网络同步的方式,当虚拟机的镜像文件产生变化之后,首先写回本地磁盘,然后用快照的方式将修改的增量通过网络同步到备份机,备份机再将快照恢复回磁盘,这个过程是同步进行的,这样就保证了异地的主备机的存储镜像的一致性。而这样网络同步方式,也不需要使用共享存储设备,节省了硬件开支。现有的虚拟机高可用系统是当主机上的虚拟机宕机之后,在备机上重新启动。新的虚拟机的启动时间就导致了虚拟机内部的服务必然会产生中断,而且时间较长。在本发明中,通过频繁的虚拟机热迁移,保持在备机上的虚拟机处于暂停状态,而不是停机状态。当主机上的虚拟机宕机之后,备机上的虚拟机直接从暂停状态转入运行状态,时间几乎可以忽略不计,从而实现了真正的不宕机高可用。


附图I为虚拟机高可用系统架构示意 附图2为虚拟机高可用系统中磁盘同步原理示意图。
具体实施例方式参照说明书附图对本发明的方法作以下详细地说明。本发明的架构示意图如附图I所示,整个系统的核心模块即是同步引擎。同步引擎分为三个部分通过心跳监测查看主虚拟机是否故障;通过热迁移实现内存的同步;通过镜像的快照实现主备机的存储镜像的同步。 首先介绍同步引擎的心跳监测随着虚拟机的运行,当其内容修改到一定程度的时候,就会往磁盘镜像中写回数据。心跳监测模块负责监听主虚拟机的磁盘数据写回,一旦发现磁盘写回出现延时或者超过预计时间没有数据往磁盘写回,我们就可以认定该虚拟机出现故障,立即将备份虚拟机从暂停的状态恢复,向外提供服务,接替故障的虚拟机,从而实现虚拟机的失效切换。同步引擎的热迁移模块所谓虚拟机热迁移,就是将运行状态的虚拟机从源服务器移至目的服务器上运行,在这个过程中虚拟机基本无需中止运行。其原理即是将源服务器端的虚拟机的内存信息,通过网络迭代拷贝至目的服务器,这个迭代的过程需要执行多次直至两边虚拟机的内存数据几乎一致,此时将源服务器端的虚拟机关闭而目的服务器端虚拟机开启,整个过程称为虚拟机的热迁移。在本发明中,利用其原理将主虚拟机的内存数据不停的迭代拷贝至备份虚拟机中,实现主备虚拟机的内存数据同步。另外为了接收同步过来的内存数据,备份虚拟机不能关闭,应该处于暂停状态,所有的数据驻留内存当中,一旦主虚拟机故障,备份虚拟机从暂停状态直接切换到运行状态,该切换过程非常短暂,这也就大大缩短虚拟机故障的切换时间。同步引擎的镜像同步模块,就是将每次写回主虚拟机磁盘镜像的文件进行一次快照,然后将快照同步至备份虚拟机端,然后备份虚拟机定期将快照恢复至磁盘镜像中,从而实现主备虚拟机的磁盘镜像的同步。镜像快照保存的是虚拟机镜像的修改内容,是基于增量的保存方式,所以同步的时间不会太长。另外在备份虚拟机端有一个存储缓存,备份过来的快照达到一定的程度在进行恢复,可以提高效率。基于热迁移的虚拟机高可用系统搭建方法如下首先在启动主虚拟机之前,将源服务器上的主虚拟机镜像文件拷贝至备份服务器上,此时便可以开启虚拟机高可用系统,系统会在主服务器上将源虚拟机开启运行,在备份服务器上将备虚拟机切换至暂停状态。并且在后台启动同步引擎,进行心跳监测,高频率的热迁移以及同步镜像文件。一旦发现主服务器上的虚拟机宕机,则立即将备份服务器上的备虚拟机从暂停状态恢复至运行状态,向外提供服务,实现虚拟机的高可用。除说明书所述的技术特征外,均为本专业技术人员的已知技术。
权利要求
1.一种提高基于热迁移虚拟机系统可用性的方法,其特征在于,整个系统的核心模块是同步引擎,同步引擎分为三个部分通过心跳监测查看主虚拟机是否故障;通过热迁移实现内存的同步;通过镜像的快照实现主备机的存储镜像的同步; 同步引擎的心跳监测随着虚拟机的运行,当其内容修改到一定程度的时候,就会往磁盘镜像中写回数据,心跳监测模块负责监听主虚拟机的磁盘数据写回,一旦发现磁盘写回出现延时或者超过预计时间没有数据往磁盘写回,则认定该虚拟机出现故障,立即将备份虚拟机从暂停的状态恢复,向外提供服务,接替故障的虚拟机,从而实现虚拟机的失效切换; 同步引擎的热迁移模块所谓虚拟机热迁移,就是将运行状态的虚拟机从源服务器移至目的服务器上运行,在这个过程中虚拟机基本无需中止运行,是将源服务器端的虚拟机的内存信息,通过网络迭代拷贝至目的服务器,这个迭代的过程需要执行多次直至两边虚拟机的内存数据几乎一致,此时将源服务器端的虚拟机关闭,而目的服务器端虚拟机开启,整个过程称为虚拟机的热迁移,在本文中,将主虚拟机的内存数据不停的迭代拷贝至备份虚拟机中,实现主备虚拟机的内存数据同步,另外为了接收同步过来的内存数据,备份虚拟机不能关闭,应该处于暂停状态,所有的数据驻留内存当中,一旦主虚拟机故障,备份虚拟机从暂停状态直接切换到运行状态,该切换过程非常短暂,这也就大大缩短虚拟机故障的切换时间; 同步引擎的镜像同步模块,就是将每次写回主虚拟机磁盘镜像的文件进行一次快照,然后将快照同步至备份虚拟机端,然后备份虚拟机定期将快照恢复至磁盘镜像中,从而实现主备虚拟机的磁盘镜像的同步,镜像快照保存的是虚拟机镜像的修改内容,是基于增量的保存方式,所以同步的时间不会太长,另外在备份虚拟机端有一个存储缓存,备份过来的快照达到一定的程度再进行恢复以提高效率; 基于热迁移的虚拟机的系统搭建方法如下首先在启动主虚拟机之前,将源服务器上的主虚拟机镜像文件拷贝至备份服务器上,此时便开启虚拟机系统,系统会在主服务器上将源虚拟机开启运行,在备份服务器上将备虚拟机切换至暂停状态,并且在后台启动同步引擎,进行心跳监测,高频率的热迁移以及同步镜像文件,一旦发现主服务器上的虚拟机宕机,则立即将备份服务器上的备虚拟机从暂停状态恢复至运行状态,向外提供服务,实现虚拟机的闻可用; 具体包括以下步骤 (1)首先选择一个备份物理服务器,创建源虚拟机的备份虚拟机,备份虚拟机处于非活跃状态; (2)对源虚拟机实现快照,保存内存数据; (3)通过同步引擎将快照数据发送到备份物理服务器的备份虚拟机; (4)备份虚拟机同步快照数据; (5)高频率的执行步骤2,3,4; (6)当故障发生时,备份虚拟机转为活跃状态。
2.根据权利要求I所述的方法,其特征在于,通过频繁的虚拟机的热迁移,同步位于两个物理服务器上的虚拟机,使其数据保持一致。
3.根据权利要求I所述的方法,其特征在于,高可用的实现对虚拟机内部的数据不做任何处理,对虚拟机内部的应用完全透明。
4.根据权利要求I所述的方法,其特征在于,无需采用共享存储来存放虚拟机的镜像文件,通过镜像快照的方式同步位于不同物理机上虚拟机的镜像文件,从而提高可用性。
全文摘要
本发明提供一种提高基于热迁移虚拟机系统可用性的方法,首先在启动主虚拟机之前,将源服务器上的主虚拟机镜像文件拷贝至备份服务器上,此时便开启虚拟机系统,系统会在主服务器上将源虚拟机开启运行,在备份服务器上将备虚拟机切换至暂停状态,并且在后台启动同步引擎,进行心跳监测,高频率的热迁移以及同步镜像文件,一旦发现主服务器上的虚拟机宕机,则立即将备份服务器上的备虚拟机从暂停状态恢复至运行状态,向外提供服务,实现虚拟机的高可用。
文档编号G06F9/48GK102662751SQ20121008880
公开日2012年9月12日 申请日期2012年3月30日 优先权日2012年3月30日
发明者常建忠, 张东, 熊坤 申请人:浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1