一种虚拟机备份的方法和装置制造方法及图纸

技术编号:20597520 阅读:86 留言:0更新日期:2019-03-20 05:36
本发明专利技术提供了一种虚拟机备份方法所述方法包括,所述方法应用于备端虚拟机,所述备端虚拟机配置有缓存空间,接收到所述主端虚拟机发起备份请求之后,每当所述备端虚拟机对内存发起访问请求时,确定所述访问请求对应的所述备端虚拟机内存中的内存页面;更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容;以及基于更新后的内存页面处理所述访问请求。应用本发明专利技术技术方案,实现了将主端虚拟机中主端内存页上的数据备份到了对应的备端内存页,且在将备份数据由缓存空间拷贝到备端虚拟机的过程中,不需要暂停虚拟机,从而降低了热备份对于虚拟机运行的影响,提高了虚拟机工作的连续性和稳定性。

A Method and Device for Virtual Machine Backup

The invention provides a virtual machine backup method. The method includes: the backup virtual machine is applied to the backup virtual machine. The backup virtual machine is configured with buffer space, and after receiving the backup request from the host virtual machine, the memory page in the memory of the backup virtual machine corresponding to the access request is determined whenever the backup virtual machine requests memory. Updating the content of the memory page is the content of the cache page corresponding to the memory page, and processing the access request based on the updated memory page. By applying the technical scheme of the invention, the data on the main memory page of the main virtual machine is backed up to the corresponding backup memory page, and in the process of copying the backup data from the buffer space to the backup virtual machine, there is no need to suspend the virtual machine, thus reducing the impact of hot backup on the operation of the virtual machine and improving the continuity and stability of the work of the virtual machine.

【技术实现步骤摘要】
一种虚拟机备份的方法和装置
本专利技术涉及虚拟机
,具体涉及一种虚拟机备份的方法和装置
技术介绍
虚拟机热备份,又称为“虚拟化平台下双机容错”,是指在虚拟化平台下通过备端虚拟机提供业务虚拟机的冗余,使得主端虚拟机发生故障或者受保护的虚拟机所在的主机发生故障,备端虚拟机能够及时接管业务。从而达到在发生硬件故障的情况下,虚拟机业务不中断、数据零丢失(网络服务不中断模式下)或虚拟机业务秒级中断、数据少量丢失的目的。为了使备端虚拟机能够接管业务,备端虚拟机的状态要跟主端虚拟机的状态保持一致,热备份的过程就是不停将主端虚拟机的状态备份到备端虚拟机的过程。现有技术中,主端虚拟机和备端虚拟机被部署在两个主机上,端的虚拟机状态,包括内存、设备状态和磁盘数据等,会通过网络传送到备端。由于传输过程中可能发生故障,导致数据不一致,因此,会先保存主端虚拟机发送的备份数据到备端虚拟机所在主机的一个缓存空间中,当数据传送完成后,再将完整的数据刷入备端虚拟机的内存和磁盘中。为了减少主端虚拟机向缓存空间传送备份数据对于主端虚拟机的影响,主端虚拟机可以在运行状态中,仅将产生脏页的内存页传送到缓存空间中。在一种现有技术中,周期性进行虚拟机备份,主端虚拟机发起备份请求,备端虚拟机所在主机将缓存空间中的备份数据刷入备端虚拟机中。而在另一种现有技术中,主端虚拟机和备端虚拟机同时运行,主端虚拟机通过比较主端虚拟机和备端虚拟机对同一个网络请求的响应是否相同来决定是否发起备份请求,进行虚拟机备份,从而减少了备份的频率,提高了系统性能。将缓存空间中的内存数据刷入备端虚拟机内存时,由于是将整个内存数据全部刷入,因此需要暂停备端虚拟机的运行,为了保证主端与备端的一致,主端虚拟机也学要相应的暂停运行。由于每次将缓存空间中的备份数据刷入虚拟机的数据量较大,当虚拟机内存规格加大时,这个过程会非常耗时,长达几秒,甚至几十秒,通常对于虚拟机用户这是难以接受的。同时,由于缓存空间的大小与备端虚拟机内存大小相同,所以备端虚拟机至少需要占用2倍于自身内存大小的主机内存,从而增加了主机的资源开销。
技术实现思路
有鉴于此,本专利技术提供了一种虚拟机备份的方法及装置,缩短了虚拟机备份时,虚拟机的暂停时间,并减小了备端虚拟机缓存空间的大小,节省了系统资源。一方面,本专利技术的实施例提供了一种虚拟机备份的方法,所述方法应用于备端虚拟机,备端虚拟机方法包括机配置有缓存页面同时与主端和备端虚拟机的内存页面一一的对应缓存空间,用于将主端发送的备份数据存储在与主端虚拟机内存页面相对应的缓存页面上。在备端虚拟机发对内存发起访问请求时,先将内存页面中的内容更新为内存页面对应的缓存页面中的内容,然后基于更新后的内存页面对其进行访问。由于在访问之前,先更新了内存页中的内容,使得备端虚拟机访问的内存数据为缓存页面中与主端虚拟机一致的内容,因此,实现了备份的效果。同时,由于每次只需要更新一个内存页面的内容,因此无需暂停虚拟机,提高了虚拟机运行的连续性和稳定性。在一个可能的设计中,仅在访问第一页面时,进行本方面中所述的更新操作。第一页面包括主端虚拟机内存中所对应的内存页面内容不一致的备端虚拟机内存中的内存页面。从而对于内容一致的内存页面,无需进行不必要的更新操作,提高了备份的效率,减小了对虚拟机运行性能的影响。在一种可能的设计中,第一页面可以通过现有技术中比较对应内存页面上的数据的一致性的方式来确定备端虚拟机内存上的页面是否属于第一页面。在一种可能的设计中,可以通过比较主端虚拟机与备端虚拟机对于同一操作请求的响应是否相同来判断主端虚拟机内存与备端虚拟机内存是否一致,当响应不相同时,该操作请求所关联的内存页面中包括了第一页面。在一个可能的设计中,所述的第一页面包括所述备端虚拟机内存中的脏页和所述主端虚拟机中的脏页所对应的所述备端虚拟机内存中的内存页面。由于脏页的内容被修改,因此可能会造成与相对应的内存页面的内容不一致,从而保证第一页面包含了全部端虚拟机内存中所对应的内存页面内容不一致的备端虚拟机内存中的内存页面。在一种可能的设计中,主端虚拟机中的脏页通过发送到缓存空间中的备份数据中所包含的需要更新的缓存页面地址所获得。在一个可能的设计中,可以在当所述备端虚拟机内存中的某一内存页面的数据被修改时,将其标记为第一页面;以及,当所述缓存空间中某一缓存页面写入了主端虚拟机发送的备份数据时,将其所对应的备端内存页标记为第一页面,从而使得所述被修改的页面被及时的标记为了第一页面。备端虚拟机访问这些内存页面时,均会先进行更新,使其与对应的主端内存页面相一致,从而使备端虚拟机的运行状态与主端虚拟机保持一致。在一个可能的设计中,可以在主端虚拟机发起备份请求后,将符合条件的所述备端虚拟机内存上的内存页面标记记录为所述第一页面,从而使得每次主端虚拟机发起备份请求后,备端虚拟机的运行状态可以与主端虚拟机发起备份请求是的状态一致。在一种可能的设计中,可以在主端虚拟机发起备份请求后,将上次发起本备份请求之后后到本次发起所述备份请求之前,备端虚拟机内存中数据被修改的内存页面和被写入了主端虚拟机发送的备份数据的缓存页面对应的备端虚拟机内存中的内存页面标记为第一页面,从而在每次备份请求后增量的将产生的脏页标记为第一页面。在一种可能的设计中,在缓存空间存储主端虚拟机发送的备份数据时,先确定缓存页面上是否存储有尚未更新到所对应的备端虚拟机内存中的内存页面的备份数据,如果是,则先更新所述备端虚拟机内存中的内存页面中的内容为所述内存页面对应的缓存页面中的内容,从而保证未更新的备份数据备份到了备端虚拟机,且备端虚拟机所更新的内容为内存页面标记为第一页面时对应的缓存页面上的内容。在一种可能的设计中,在更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容后,取消所述内存页面标记为第一页面。从而在内存页面和缓存页面内容一致后,不再在访问该内存页面是进行更新操作。在一种可能的设计中,当备端虚拟机对内存发起访问请求为写操作时,确定所述写操作对应的所述内存页面不属于第一页面,如果不属于,则在进行写操作之前,先备份所述内存页面中的内容到所述缓存空间中对应的缓存页面。由于不属于第一页面的内存页面中的内容与对应的主端的内存页面中的内容是一致的,对于内容一致的内存页面,不需要在缓存空间中对应的缓存页面中存储备份数据,从而可以减小了缓存空间所占用的存储空间大小。在一种可能的设计中,在建立备端虚拟机时,当备端虚拟机内存中内容与主端虚拟机内存中内容完全一致后,清空缓存空间中缓存页面内的数据。由于备端虚拟机建立时内存中内容由主端虚拟机内存拷贝而来,因此内容完全一致,因此在先将缓存空间中的内容清空,只有当备端虚拟机要对其内存做修改时,才先将备端虚拟机内存页中的内容备份到相对应的缓存页面上。在一种可能的设计中,在更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容之后,如果所述备端虚拟机对内存发起的访问请求为读请求,则不会再对以及通过更新而一致的内存页面进行修改,可以删除所述缓存页面中的内容,从而释放缓存空间的数据。在一种可能的设计中,在所述备份所述内存页面中的内容到所述缓存空间中对应的缓存页面之前,确定所述缓存页面中是否有未更新到备端虚拟机内存的数据;如本文档来自技高网
...

【技术保护点】
1.一种虚拟机备份方法,其特征在于,所述方法应用于备端虚拟机,所述备端虚拟机配置有缓存空间,所述缓存空间中的缓存页面与主端虚拟机内存中的内存页面一一对应,所述缓存空间用于将主端虚拟机发送的备份数据存储在与所述备份数据所在主端虚拟机内存中的内存页面所对应的缓存页面上,另所述缓存页面还与所述备端虚拟机内存中的内存页面一一对应,所述方法包括:当所述备端虚拟机对内存发起访问请求时,确定所述访问请求对应的所述备端虚拟机内存中的内存页面;更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容;以及基于更新后的内存页面处理所述访问请求。

【技术特征摘要】
1.一种虚拟机备份方法,其特征在于,所述方法应用于备端虚拟机,所述备端虚拟机配置有缓存空间,所述缓存空间中的缓存页面与主端虚拟机内存中的内存页面一一对应,所述缓存空间用于将主端虚拟机发送的备份数据存储在与所述备份数据所在主端虚拟机内存中的内存页面所对应的缓存页面上,另所述缓存页面还与所述备端虚拟机内存中的内存页面一一对应,所述方法包括:当所述备端虚拟机对内存发起访问请求时,确定所述访问请求对应的所述备端虚拟机内存中的内存页面;更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容;以及基于更新后的内存页面处理所述访问请求。2.根据权利要求1所述方法,其特征在于,所述当所述备端虚拟机对内存发起访问请求时,在确定所述访问请求对应的所述备端虚拟机内存中的内存页面之前,所述方法还包括:确定所述访问请求对应的所述内存页面属于第一页面,所述第一页面包括与所述主端虚拟机内存中所对应的内存页面内容不一致的备端虚拟机内存中的内存页面;若所述访问请求对应的所述内存页面属于第一页面,则确定所述访问请求对应的所述备端虚拟机内存中的内存页面。3.根据权利要求2所述方法,其特征在于,所述第一页面为所述备端虚拟机内存中的脏页和所述主端虚拟机中的脏页所对应的所述备端虚拟机内存中的内存页面。4.根据权利要求2所述方法,其特征在于,所述方法还包括:当所述备端虚拟机内存中的某一内存页面的数据被修改时,通过标记记录所述数据被修改的内存页面为第一页面;当所述缓存空间中某一缓存页面写入了主端虚拟机发送的备份数据时,通过标记记录所述被写入了主端虚拟机发送的备份数据的缓存页面对应的备端虚拟机内存中的内存页面为第一页面。5.根据权利要求2所述方法,其特征在于,确定所述访问请求对应的所述内存页面属于第一页面之前,所述方法还包括:将符合条件的所述备端虚拟机内存上的内存页面标记记录为所述第一页面,所述符合条件的所述备端虚拟机内存上的内存页面包括与所述主端虚拟机内存中所对应的内存页面内容不一致的备端虚拟机内存中的内存页面。6.根据权利要求5所述方法,其特征在于,所述方法用于接收到所述主端虚拟机发起备份请求之后;所述符合条件的所述备端虚拟机内存上的内存页面具体包括:在所述主端虚拟机发起上一次备份请求之后到本次发起备份请求之前,所述备端虚拟机内存中数据被修改的内存页面和被写入了主端虚拟机发送的备份数据的缓存页面对应的备端虚拟机内存中的内存页面为符合条件的所述备端虚拟机内存上的内存页面。7.根据权利要求5所述方法,其特征在于,在将主端虚拟机发送的备份数据存储在所述备份数据所在主端虚拟机内存中的内存页面所对应的缓存页面上之前,确定所述缓存页面上是否存储有尚未更新到所对应的备端虚拟机内存中的内存页面的备份数据,如果是,则先更新所述备端虚拟机内存中的内存页面中的内容为所述内存页面对应的缓存页面中的内容,再将主端虚拟机发送的备份数据存储在所述备份数据所在主端虚拟机内存中的内存页面所对应的缓存页面上。8.根据权利要求4所述方法,其特征在于,所述更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容后,取消将所述内存页面标记为第一页面。9.根据权利要求2-8中任一所述方法,其特征在于,当所述备端虚拟机对内存发起访问请求为写请求时,所述方法还包括:确定所述写请求所对应的所述内存页面不属于第一页面,若所述写请求所对应的所述内存页面不属于第一页面,则处理所述写请求之前,先备份所述内存页面中的内容到所述缓存空间中对应的缓存页面,再基于备份后的内存页面处理所述写请求。10.根据权利要求9所述方法,其特征在于,所述方法还包括:建立备端虚拟机时,当备端虚拟机内存中内容与主端虚拟机内存中内容完全一致后,清空缓存空间中缓存页面内的数据。11.根据权利要求9所述方法,其特征在于,在更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容之后,如果所述备端虚拟机对内存发起的访问请求为读请求,删除所述缓存页面中的内容。12.根据权利要求9所述方法,其特征在于,在所述备份所述内存页面中的内容到所述缓存空间中对应的缓存页面之前,确定所述缓存页面中是否有未更新到备端虚拟机内存的数据;如果没有,则备份所述内存页面中的内容到所述缓存空间中对应的缓存页面。13.根据权利要求4所述方法,其特征在于,所述方法还包括:建立备端虚拟机时,当备端虚拟机内存中内容与主端虚拟机内存中内容完全一致后,将备端虚拟机内存中内存页面全部标记为第二页面,并清空缓存空间中缓存页面内的数据;当所述备端虚拟机内存上的内存页面被标记记录为所述第一页面时,取消将所述内存页面标记为第二页面;当所述备端虚拟机对内存发起访问请求为写操作时,确定所述写操作对应的所述内存页面属于第二页面,若所述访问请求对应的所述内存页面属于第二页面,则对所述内存页面进行写操作之前,先备份所述内存页面中的内容到所述缓存空间中对应的缓存页面,再对所述内存页面进行写操作。14.根据权利要求5所述方法,其特征在于,所述方法还包括:建立备端虚拟机时,当备端虚拟机内存中内容与主端虚拟机内存中内容完全一致后,将备端虚拟机内存中内存页面全部标记为第二页面,并清空缓存空间中缓存页面内的数据;在所述主端虚拟机发起备份请求之后,当所述备端虚拟机内存上的内存页面被标记记录为所述第一页面时,取消将所述内存页面标记为第二页面,以及将备端虚拟机内存中未被标记为第一页面的内存页面标记为第二页面;当所述备端虚拟机对内存发起访问请求为写操作时,确定所述写操作对应的所述内存页面属于第二页面,若所述访问请求对应的所述内存页面属于第二页面,则对所述内存页面进行写操作之前,先备份所述内存页面中的内容到所述缓存空间中对应的缓存页面,再对所述内存页面进行写操作。15.根据权利要求13或14所述方法,其特征在于,在更新所述内存页面中的内容为所述内存页面对应的缓存页面中的内容之后,如果所述备端虚拟机对内存发起的访问请求为读操作,则将所述内存页面标记为第二页面,并删除所述缓存页面中的内容。16.根据权利要求13或14所述方法,其特征在于,在所述备份所述内存页面中的内容到所述缓存空间中对应的缓存页面之前,确定所述缓存页面中是否有未更新到备端虚拟机内存的数据;如果没有,则备份所述内存页面中的内容到所述缓存空间中对应的缓存页面,否则,取消将所述内存页面标记为第二页面。17.一种虚拟机备份装置,所述装置运行有备端虚拟机,其特征在于,所述装置包括:缓存模块:包含缓存空间,所述缓存空间中的缓存页面与主端虚拟机内存中的内存页面一一对应,所述缓存...

【专利技术属性】
技术研发人员:张海亮
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1