[发明专利]虚拟机动态保存快照的方法有效
申请号: | 201410790543.8 | 申请日: | 2014-12-17 |
公开(公告)号: | CN104572248B | 公开(公告)日: | 2018-01-23 |
发明(设计)人: | 崔昊之;丁星;武静 | 申请(专利权)人: | 中电科华云信息技术有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F3/06;G06F11/14 |
代理公司: | 上海汉声知识产权代理有限公司31236 | 代理人: | 郭国中 |
地址: | 200231 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 动态 保存 快照 方法 | ||
技术领域
本发明涉及一种保存快照的方法,具体地,涉及一种虚拟机动态保存快照的方法。
背景技术
如今,云计算技术越来越广泛的得到使用,正在很多领域逐渐取代传统的IT服务模式,为IT行业的市场带来巨大的变革,也为IT技术的创新开辟了新的方向;虚拟化是构建云基础架构不可或缺的关键技术之一,对比传统的物理资源,虚拟化技术在资源的有效利用、动态调配和高可靠性方面有着巨大的优势;QEMU-KVM虚拟化(简称KVM)作为一种新兴的开源虚拟化软件,因其虚拟化效率高、与Linux内核完美集成、操作配置简单等优势,与老牌的虚拟化软件如VMWARE、Xen等一起,并列为现今主流的虚拟化技术,并有逐步取代的趋势;但是KVM虚拟化因其发展时间较短,在基本功能上仍有一些欠缺之处,比如:对于正在运行的虚拟机,无法动态的、集成的备份其内存与磁盘的内容(虚拟化快照技术),一种传统方法快照过程中会主动挂起虚拟机服务,快照保存流程完成后再恢复虚拟机服务。另一种传统方法只能动态保存虚拟机磁盘范围的内容,所以在做快照恢复操作时无法还原到虚拟机快照时间点的运行中状态;所以,在使用快照或快照恢复功能时,都会在很大程度上影响云平台的服务质量。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种虚拟机动态保存快照的方法,其在不影响虚拟机内应用服务的前提下完成虚拟机快照操作,并能在需要时根据快照保存的档案完全恢复虚拟机磁盘与内存的当时状态。
根据本发明的一个方面,提供一种虚拟机动态保存快照的方法,其特征在于,所述虚拟机动态保存快照的方法包括以下步骤:
步骤一,使用一特定结构初始化文件,该文件在后续步骤用于分段保存虚拟机状态数据与内存数据,此步骤需要初始化该文件的标准I/O流对象,并注册基础读写操作集;
步骤二,创建一块新的虚拟磁盘文件,在虚拟机主进程中注册其结构化数据,并将其置于虚拟磁盘链表的末端;
步骤三,遍历该虚拟机中挂载的所有虚拟设备,使用不同虚拟设备注册的特定方法保存全量的虚拟设备状态数据与客户机内存数据至步骤一创建的文件中;在数据写入的开始、循环迭代及结束过程中均使用魔数分割数据片段,用于读取时识别分段恢复;
步骤四,循环迭代的保存虚拟设备状态与虚拟机内存中变化的部分至指定的文件,并统计每次保存数据量与保存消耗时间;
步骤五,每次循环迭代开始,首先统计所有待决的脏数据量,跳出迭代后即加锁虚拟机IO线程,停止虚拟CPU线程,使动态的数据不再变化,安全完成最后一部分保存动作,完成虚拟机内存与虚拟设备数据的保存后,马上切换虚拟磁盘指针至新的虚拟磁盘,使后续的I/O流向新磁盘设备,而之前的磁盘设备移动为磁盘链表的倒数第二项,同时作为磁盘快照节点,在需要恢复快照时,直接使用该节点生成虚拟机即可;
步骤六,解锁虚拟机IO线程,并恢复虚拟CPU线程,至此虚拟机恢复运行态。
优选地,所述虚拟机动态保存快照的方法涉及的数据对象分为三个部分:虚拟设备状态、虚拟机内存和虚拟机磁盘。
优选地,所述步骤三的魔数分割数据片段包括以下步骤:将数据保存到文件的步骤分为预备、迭代和结尾三部分,文件前两字节依次保存快照动作整体魔数和快照版本信息,接下来排列预备段信息,依次写入预备段开始魔数、单个设备预备快照控制信息、单个设备预备快照数据信息;完成预备段数据后,循环的写入迭代段开始魔数、单个设备迭代快照控制信息、单个设备迭代快照数据信息;最后写入完成段开始魔数、单个设备完成快照控制信息、单个设备完成快照数据信息。
与现有技术相比,本发明具有如下的有益效果:本发明在于保存虚拟机快照时,虚拟机内运行的应用业务无感知、不会被终止其服务,从而同时满足了虚拟化技术中数据安全与服务连贯性的需求。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明实施虚拟磁盘链表的示意图。
图2为本发明实施虚拟磁盘链表增加一个磁盘后的示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中电科华云信息技术有限公司,未经中电科华云信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410790543.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种任务执行方法和装置
- 下一篇:一种高效的生成可执行软件包的方法及系统