虚拟机快照创建方法、装置及计算机可读存储介质制造方法及图纸

技术编号:26170217 阅读:25 留言:0更新日期:2020-10-31 13:36
本申请公开了一种虚拟机快照创建方法、装置及计算机可读存储介质。其中,方法包括获取虚拟机在内存快照创建时刻的当前内存页位图,将当前内存页位图在虚拟机运行状态下持久化至本地。判断将当前内存页位图从生成时刻到持久化完成时刻的变化数据即下一个内存页位图持久化至本地所需时间是否低于预设期望暂停时间,若否,将下一个内存页位图作为当前内存页位图执行将将当前内存页位图在虚拟机运行状态下持久化至本地的步骤;若是,将下一个内存页位图在虚拟机暂停状态持久化至本地。利用磁盘快速复制方法创建虚拟机于暂停状态时刻的磁盘副本,在不影响虚拟机业务正常运行的基础上实现了虚拟机动态内存数据持久化,简化了虚拟机快照管理复杂度。

【技术实现步骤摘要】
虚拟机快照创建方法、装置及计算机可读存储介质
本申请涉及虚拟化
,特别是涉及一种虚拟机快照创建方法、装置及计算机可读存储介质。
技术介绍
可以理解的是,如图1所示,正在运行的虚拟机创建快照共包括两部分:一部分为虚拟机动态内存数据的持久化,另一部分为虚拟机磁盘数据的持久化。其中,内存数据用于暂时存放CPU(centralprocessingunit,中央处理器)中的运算数据,以及与硬盘等外部存储器的交换数据;在虚拟机化平台,同样也是虚拟机重要的一部分,他是与vCPU(virtualcentralprocessingunit,虚拟处理器)进行沟通的桥梁。宏观上讲,就是指虚拟机实时的运行状态,比如输入文字、观看电影、或正在运行的游戏都是在内存中进行的。内存数据持久化是指将这些正在运行的一些状态,也就是内存中动态变化的数据,保存成为一个本地静态的数据文件。虚拟机磁盘数据的持久化,也即是指虚拟机磁盘文件在某个时刻的及时的副本数据。相关技术在进行虚拟机内存持久化时需要暂停虚拟机I/O(input/output,输入输出),然后在暂停状态下将虚拟机内存中的磁盘脏数据保存为本地的一个磁盘文件,此磁盘文件即为内存快照。虚拟机的暂停时间取决于虚拟机内存脏数据量,若虚拟机内存及使用率较大,虚拟机暂停时间就会成比例地增加,影响虚拟机上业务的正常运行;此外,现有基于KVM(Kernel-basedVirtualMachine,基于内核的虚拟机)虚拟化的虚拟机磁盘快照大多数为内部快照或外部快照,各快照间均有依赖关系,增加了快照管理的复杂度。鉴于此,如何在不影响虚拟机业务正常运行的基础上进行虚拟机动态内存数据持久化,简化虚拟机快照管理复杂度,是所属领域技术人员需要解决的技术问题。
技术实现思路
本申请提供了一种虚拟机快照创建方法、装置及计算机可读存储介质,不仅在不影响虚拟机业务正常运行的基础上实现了虚拟机动态内存数据持久化,还简化了虚拟机快照管理复杂度。为解决上述技术问题,本专利技术实施例提供以下技术方案:本专利技术实施例一方面提供了一种虚拟机快照创建方法,包括:获取虚拟机在内存快照创建时刻的当前内存页位图,将所述当前内存页位图在所述虚拟机运行状态下持久化至本地;将所述当前内存页位图从生成时刻到所述当前内存页持久化完成时刻的变化数据作为下一个内存页位图,判断将所述下一个内存页位图持久化至本地所需时间是否低于预设期望暂停时间;所述预设期望暂停时间不超过10ms;若否,则将所述下一个内存页位图作为当前内存页位图,执行所述将所述当前内存页位图在所述虚拟机运行状态下持久化至本地的步骤;若是,则暂停所述虚拟机,同时将所述下一个内存页位图持久化至本地;利用磁盘快速复制方法将所述虚拟机设置为暂停状态时刻的磁盘数据进行及时副本的创建,作为所述虚拟机的磁盘快照。可选的,所述将所述下一个内存页位图持久化至本地之后,还包括:接收所述虚拟机的状态设置命令;根据所述状态设置命令中携带的所述虚拟机的运行状态信息自动设置所述虚拟机的当前运行状态;所述虚拟机的运行状态信息为运行状态或关机状态或暂停状态。可选的,所述判断将所述下一个内存页位图持久化至本地所需时间是否低于预设期望暂停时间包括:获取所述虚拟机的内存数据持久化速率值和所述预设期望暂停时间;根据所述内存数据持久化速率值和所述下一个内存页位图的空间容量值计算得到所述下一个内存页位图持久化操作所需时间;判断所述下一个内存页位图持久化操作所需时间是否低于预设期望暂停时间。可选的,所述获取所述虚拟机的内存数据持久化速率值和所述预设期望暂停时间之前,还包括:接收期望暂停时间重设置命令;根据所述期望暂停时间重设置命令中携带的新期望暂停时间自动更新预先存储的所述预设期望暂停时间的数值。可选的,所述利用磁盘快速复制方法将所述虚拟机设置为暂停状态时刻的磁盘数据进行及时副本的创建,作为所述虚拟机的磁盘快照包括:为所述虚拟机对应的源磁盘创建新的索引节点;基于所述索引节点,使用所述磁盘快速复制方法创建所述虚拟机设置为暂停状态时刻的及时副本;将所述虚拟机从暂停状态恢复至运行状态,以完成所述虚拟机的快照流程。本专利技术实施例另一方面提供了一种虚拟机快照创建装置,包括:内存快照模块,用于获取虚拟机在内存快照创建时刻的当前内存页位图,将所述当前内存页位图在所述虚拟机运行状态下持久化至本地;将所述当前内存页位图从生成时刻到所述当前内存页持久化完成时刻的变化数据作为下一个内存页位图,判断将所述下一个内存页位图持久化至本地所需时间是否低于预设期望暂停时间;所述预设期望暂停时间不超过10ms;若否,则将所述下一个内存页位图作为当前内存页位图,执行所述将所述当前内存页位图在所述虚拟机运行状态下持久化至本地的步骤;若是,则暂停所述虚拟机,同时将所述下一个内存页位图持久化至本地;磁盘快照模块,用于利用磁盘快速复制方法将所述虚拟机设置为暂停状态时刻的磁盘数据进行及时副本的创建,作为所述虚拟机的磁盘快照。可选的,所述内存快照模块还包括状态自定义模块,所述状态自定义模块包括:命令接收子模块,用于接收所述虚拟机的状态设置命令;状态设置子模块,用于根据所述状态设置命令中携带的所述虚拟机的运行状态信息自动设置所述虚拟机的当前运行状态;所述虚拟机的运行状态信息为运行状态或关机状态或暂停状态。可选的,所述磁盘快照模块包括:索引节点创建子模块,用于为所述虚拟机对应的源磁盘创建新的索引节点;硬盘快照创建子模块,用于基于所述索引节点,使用所述磁盘快速复制方法创建所述虚拟机设置为暂停状态时刻的及时副本;虚拟机状态恢复子模块,用于将所述虚拟机从暂停状态恢复至运行状态,以完成所述虚拟机的快照流程。本专利技术实施例还提供了一种虚拟机快照创建装置,包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如前任一项所述虚拟机快照创建方法的步骤。本专利技术实施例最后还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有虚拟机快照创建程序,所述虚拟机快照创建程序被处理器执行时实现如前任一项所述虚拟机快照创建方法的步骤。本申请提供的技术方案的优点在于,由于虚拟机时刻处于运行状态,每个时间点都会有冗余数据产生,冗余数据包含了内存数据和磁盘数据,内存数据持久化采用迭代预拷贝方法,将虚拟机正在运行和正在产生的内存数据持久化到本地;内存数据持久化完成后虚拟机默认为暂停状态,此时采用快速复制方法进行磁盘快照,整个硬盘快照过程可在毫秒级别完成,整个快照创建过程中虚拟机处于暂停状态的时间为毫秒级别,实现了虚拟机内存脏数据持久化不依赖暂停,可动态同步;虚拟机业务中断时间从用户角度来看可达到无感知的效果,不影响虚拟机业务的正常运行,相当于业务零中断。此外,虚拟机磁盘快照无链状关系,相互不依赖,简化了虚拟机快照管理,大幅降低快照管理的复杂度,有利于本文档来自技高网
...

【技术保护点】
1.一种虚拟机快照创建方法,其特征在于,包括:/n获取虚拟机在内存快照创建时刻的当前内存页位图,将所述当前内存页位图在所述虚拟机运行状态下持久化至本地;/n将所述当前内存页位图从生成时刻到所述当前内存页持久化完成时刻的变化数据作为下一个内存页位图,判断将所述下一个内存页位图持久化至本地所需时间是否低于预设期望暂停时间;所述预设期望暂停时间不超过10ms;/n若否,则将所述下一个内存页位图作为当前内存页位图,执行所述将所述当前内存页位图在所述虚拟机运行状态下持久化至本地的步骤;若是,则暂停所述虚拟机,同时将所述下一个内存页位图持久化至本地;/n利用磁盘快速复制方法将所述虚拟机设置为暂停状态时刻的磁盘数据进行及时副本的创建,作为所述虚拟机的磁盘快照。/n

【技术特征摘要】
1.一种虚拟机快照创建方法,其特征在于,包括:
获取虚拟机在内存快照创建时刻的当前内存页位图,将所述当前内存页位图在所述虚拟机运行状态下持久化至本地;
将所述当前内存页位图从生成时刻到所述当前内存页持久化完成时刻的变化数据作为下一个内存页位图,判断将所述下一个内存页位图持久化至本地所需时间是否低于预设期望暂停时间;所述预设期望暂停时间不超过10ms;
若否,则将所述下一个内存页位图作为当前内存页位图,执行所述将所述当前内存页位图在所述虚拟机运行状态下持久化至本地的步骤;若是,则暂停所述虚拟机,同时将所述下一个内存页位图持久化至本地;
利用磁盘快速复制方法将所述虚拟机设置为暂停状态时刻的磁盘数据进行及时副本的创建,作为所述虚拟机的磁盘快照。


2.根据权利要求1所述的虚拟机快照创建方法,其特征在于,所述将所述下一个内存页位图持久化至本地之后,还包括:
接收所述虚拟机的状态设置命令;
根据所述状态设置命令中携带的所述虚拟机的运行状态信息自动设置所述虚拟机的当前运行状态;所述虚拟机的运行状态信息为运行状态或关机状态或暂停状态。


3.根据权利要求2所述的虚拟机快照创建方法,其特征在于,所述判断将所述下一个内存页位图持久化至本地所需时间是否低于预设期望暂停时间包括:
获取所述虚拟机的内存数据持久化速率值和所述预设期望暂停时间;
根据所述内存数据持久化速率值和所述下一个内存页位图的空间容量值计算得到所述下一个内存页位图持久化操作所需时间;
判断所述下一个内存页位图持久化操作所需时间是否低于预设期望暂停时间。


4.根据权利要求3所述的虚拟机快照创建方法,其特征在于,所述获取所述虚拟机的内存数据持久化速率值和所述预设期望暂停时间之前,还包括:
接收期望暂停时间重设置命令;
根据所述期望暂停时间重设置命令中携带的新期望暂停时间自动更新预先存储的所述预设期望暂停时间的数值。


5.根据权利要求1至4任意一项所述的虚拟机快照创建方法,其特征在于,所述利用磁盘快速复制方法将所述虚拟机设置为暂停状态时刻的磁盘数据进行及时副本的创建,作为所述虚拟机的磁盘快照包括:
为所述虚拟机对应的源磁盘创建新的索引节点;
基于所述索引节点,使用所述...

【专利技术属性】
技术研发人员:曾鹏刘为峰颜秉珩
申请(专利权)人:山东海量信息技术研究院
类型:发明
国别省市:山东;37

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

1