一种虚拟机的数据迁移方法技术

技术编号:32260318 阅读:18 留言:0更新日期:2022-02-12 19:20
本发明专利技术公开一种虚拟机的数据迁移方法,包括主虚拟机和备份虚拟机,主虚拟机和备份虚拟机通过NFS服务器建立数据关联,且主虚拟机和备份虚拟机间设置有独立的双向状态信号,包括步骤:备份虚拟机定时向主虚拟机发送联络信号并等待主虚拟机回复;根据当前主虚拟机是否发生触发数据迁移的事件作出迁移处理;备份虚拟机在收到主虚拟机回复的信号后,根据该信号中是否有还原点信息作出迁移处理;备份虚拟机完成拷贝后,向主虚拟机发出确认信号。本发明专利技术使主虚拟机的停机时间尽量短,不对客户的服务造成影响;保证数据迁移的不间断工作,提高系统容错能力。容错能力。容错能力。

【技术实现步骤摘要】
一种虚拟机的数据迁移方法


[0001]本专利技术属于数据处理
,特别是涉及一种虚拟机的数据迁移方法。

技术介绍

[0002]不同于物理主机的构成,虚拟机运行采用的是磁盘镜像,在虚拟化平台上进行数据迁移时,主虚拟机和备份虚拟机需要在磁盘数据、内存数据和CPU状态数据上均保持同步,这样才能实现备份虚拟机和主虚拟机的完全一致。也只有这样,当主虚拟机出现运行故障必须要停机时,备份虚拟机能立刻替代主虚拟机运行。保持上述的磁盘、内存和CPU的状态数据一致,是目前虚拟机迁移主要处理的问题。
[0003]虚拟化环境中的迁移分为动态迁移和静态迁移。
[0004]静态迁移是指在虚拟机关闭或暂停的情况下,将源宿主机上虚拟机的磁盘文件和配置文件拷贝到目标宿主机上。这种方式需要显式的停止虚拟机运行,对服务可用性要求高的需求不合适。
[0005]相反,动态迁移则没有明显的服务暂停,能够保证客户的服务不受影响。动态迁移的前面阶段,服务在源主机的虚拟机上运行,当迁移进行到一定阶段,目的主机已经具备了运行虚拟机系统的必须资源,经过一个非常短暂的切换,源主机将控制权转移到目的主机,虚拟机系统在目的主机上继续运行。对于虚拟机服务本身而言,由于切换的时间非常短暂,用户感觉不到服务的中断,因而迁移过程对用户是透明的。动态迁移适用于对虚拟机服务可用性要求很高的场合。
[0006]动态迁移无需拷贝虚拟机配置文件和磁盘文件,但是需要迁移的主机之间有相同的目录结构放置虚拟机磁盘文件。动态迁移实际上是把虚拟机的配置封装在一个文件中,然后通过高速网络,把虚拟机配置和内存运行状态从一台物理机迅速传送到另外一台物理机上,期间虚拟机一直保持运行状态。现有技术条件下,大多虚拟机软件进行动态迁移都需要共享存储的支持。
[0007]因此现有虚拟机的数据迁移时,数据在动态迁过程中,虚拟机的停机时间长,影响客户服务;无法保证数据迁移的不间断工作,使系统容错能力差。

技术实现思路

[0008]为了解决上述问题,本专利技术提出了一种虚拟机的数据迁移方法,使主虚拟机的停机时间尽量短,不对客户的服务造成影响;保证数据迁移的不间断工作,提高系统容错能力。
[0009]为达到上述目的,本专利技术采用的技术方案是:一种虚拟机的数据迁移方法,包括主虚拟机和备份虚拟机,主虚拟机和备份虚拟机通过NFS服务器建立数据关联,且主虚拟机和备份虚拟机间设置有独立的双向状态信号,包括步骤:
[0010]S10,备份虚拟机定时向主虚拟机发送联络信号并等待主虚拟机回复;
[0011]S20,如果当前主虚拟机没有发生触发数据迁移的事件,则在回复备份服务器的信
号中将还原点信息部分置为空;如果当前主虚拟机发生了触发数据迁移的事件,则主虚拟机触发数据迁移,在回复备份服务器的信号中设置还原点信息,同时主虚拟机将本机的配置及内存数据拷贝到NFS服务器;
[0012]S30,备份虚拟机在收到主虚拟机回复的信号后,判断该信号中是否有还原点信息,若否则到下一步;如果是则从NFS服务器中拷贝最新的配置及内存状态信息,并与收到的还原点信息进行匹配,并存放到本地;
[0013]S40,备份虚拟机完成拷贝后,向主虚拟机发出确认信号;转到步骤S10。
[0014]进一步的是,所述触发数据迁移的事件包括内存、网络或IO动作事件。
[0015]进一步的是,在主虚拟机内存数据拷贝到NFS服务器的过程中,拷贝动作采用了预拷贝在线迁移算法。
[0016]进一步的是,预拷贝在线迁移算法包括步骤:迁移过程中主虚拟机一直保持运行状态,系统会不断产生内存脏页,使拷贝形成一个迭代过程,即需要经历多轮的迁移,让上一轮产生的新脏页足够地少,此时暂停主虚拟机,将剩余的内存脏页迁移出去并立即重启主虚拟机。
[0017]进一步的是,如果备份虚拟机没有收到主虚拟机的任何回复信号,则置超时计数1次;如果超时计数达到了n次则可认定主虚拟机已经宕机或者出现了无法连接的情况,备份虚拟机在最近的还原点继承主虚拟机的全部工作信息并开始替代主虚拟机工作。
[0018]进一步的是,n的大小根据应用场景的具体网络状况及主虚拟机的重启时长来确定。
[0019]进一步的是,所述主虚拟机和备份虚拟机间设置有独立的双向状态信号,基于TCP协议的网络连接方式。
[0020]进一步的是,所述双向状态信号通讯时:
[0021]备份虚拟机主动定时发出的联络信号,所述联络信号需要等待主虚拟机的回复信号,以此来判断主虚拟机是否处于正常工作状态;如果不正常则备份虚拟机将立刻替代主虚拟机运行,在回复备份服务器的信号中设置还原点信息;
[0022]备份虚拟机从NFS服务器拷贝迁移数据后向主虚拟机发出的确认信号。
[0023]进一步的是,在回复备份服务器的信号中设置还原点信息包括:如果发生主虚拟机宕机或其他不可连接的情况,备份虚拟机在最近的位置继承主虚拟机的全部工作信息并开始替代主虚拟机工作;利用还原点跟每个由主虚拟机写入到NFS服务器中的数据紧密同步,增加虚拟机数据迁移系统的容错能力。
[0024]进一步的是,备份虚拟机从NFS服务器拷贝迁移数据后向主虚拟机发出的确认信号,所述确认信号为备份虚拟机成功完成了上一个数据的拷贝动作,且该数据跟当前接收到的还原点信息是同步的。
[0025]采用本技术方案的有益效果:
[0026]本专利技术中主虚拟机和备份虚拟机通过NFS服务器建立数据关联,主虚拟机总是将需要同步的数据写入到NFS服务器中,随后再将NFS服务器中的数据写入到备份服务器。本专利技术在数据迁移的触发条件上,采用基于事件的触发方式,即系统中发生了内存、网络及IO动作等事件的时候,系统将发生数据迁移。相对于一般使用的定时触发,保证了主备虚拟机间最大程度的状态同步。
Server。主虚拟机打开两个不同的TCP端口进行侦听备份虚拟机发出的两类联络信号。
[0043]所述双向状态信号通讯时:
[0044]备份虚拟机主动定时发出的联络信号,所述联络信号需要等待主虚拟机的回复信号,以此来判断主虚拟机是否处于正常工作状态;如果不正常则备份虚拟机将立刻替代主虚拟机运行,在回复备份服务器的信号中设置还原点信息;在回复备份服务器的信号中设置还原点信息包括:如果发生主虚拟机宕机或其他不可连接的情况,备份虚拟机在最近的位置继承主虚拟机的全部工作信息并开始替代主虚拟机工作;利用还原点跟每个由主虚拟机写入到NFS服务器中的数据紧密同步,增加虚拟机数据迁移系统的容错能力。
[0045]备份虚拟机从NFS服务器拷贝迁移数据后向主虚拟机发出的确认信号。所述确认信号为备份虚拟机成功完成了上一个数据的拷贝动作,且该数据跟当前接收到的还原点信息是同步的。
[0046]以上显示和描述了本专利技术的基本原理和主要特征和本专利技术的优点。本行业的技术人员应该了解,本专利技术不受上述实施例的限制,上述实施例和说明书中描述的只是说明本专利技术的原理,在不脱离本专利技术精神和范围的前提下,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟机的数据迁移方法,其特征在于,包括主虚拟机和备份虚拟机,主虚拟机和备份虚拟机通过NFS服务器建立数据关联,且主虚拟机和备份虚拟机间设置有独立的双向状态信号,包括步骤:S10,备份虚拟机定时向主虚拟机发送联络信号并等待主虚拟机回复;S20,如果当前主虚拟机没有发生触发数据迁移的事件,则在回复备份服务器的信号中将还原点信息部分置为空;如果当前主虚拟机发生了触发数据迁移的事件,则主虚拟机触发数据迁移,在回复备份服务器的信号中设置还原点信息,同时主虚拟机将本机的配置及内存数据拷贝到NFS服务器;S30,备份虚拟机在收到主虚拟机回复的信号后,判断该信号中是否有还原点信息,若否则到下一步;如果是则从NFS服务器中拷贝最新的配置及内存状态信息,并与收到的还原点信息进行匹配,并存放到本地;S40,备份虚拟机完成拷贝后,向主虚拟机发出确认信号;转到步骤S10。2.根据权利要求1所述的一种虚拟机的数据迁移方法,其特征在于,所述触发数据迁移的事件包括内存、网络或IO动作事件。3.根据权利要求1所述的一种虚拟机的数据迁移方法,其特征在于,在主虚拟机内存数据拷贝到NFS服务器的过程中,拷贝动作采用了预拷贝在线迁移算法。4.根据权利要求3所述的一种虚拟机的数据迁移方法,其特征在于,预拷贝在线迁移算法包括步骤:迁移过程中主虚拟机一直保持运行状态,系统会不断产生内存脏页,使拷贝形成一个迭代过程,即需要经历多轮的迁移,让上一轮产生的新脏页足够地少,此时暂停主虚拟机,将剩余的内存脏页迁移出去并立即重启主虚拟机。5.根据权利要求1

4中任一所述的一种虚拟机的数据...

【专利技术属性】
技术研发人员:鲍震王飞李昊夫苟晓东牛海明陈鹏飞薛建王志辉
申请(专利权)人:国能智深控制技术有限公司
类型:发明
国别省市:

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

1