本申请公开了一种快照生成方法、装置、介质,该快照生成方法包括:虚拟机获取管理节点发送的包含第一预设时刻的第一指令;在第一预设时刻复制内存数据,保证各虚拟机同时启动快照生成任务,减少由于各虚拟机接收到指令的时间不同导致的快照一致性问题。若已复制内存数据中发生修改的内存数据的字节数小于阈值,则向管理节点发送请求以获取包含第二预设时刻的第二指令,虚拟机复制尽可能多的内存数据,减小虚拟机读写速度的不同对快照生成时间的影响。在第二预设时刻停止业务运行并将发生修改的内存数据复制至存储装置。本申请通过将快照生成过程划分为多个阶段,并保证各阶段的时间一致,提高业务集群中各虚拟机快照的生成时间的一致性。间的一致性。间的一致性。
【技术实现步骤摘要】
一种快照生成方法、装置、介质
[0001]本申请涉及云计算领域,特别是涉及一种快照生成方法、装置、介质。
技术介绍
[0002]快照(Snapshot)是一种在操作系统以及存储设备上实现的虚拟机数据保存技术,用于记录虚拟机内存或磁盘在某一时刻的状态,为后续虚拟机数据恢复提供备份数据。其中,仅保存内存状态的快照称为内存快照,仅保存磁盘状态的快照称为磁盘快照。随着云计算技术的发展,快照技术也被应用于采集虚拟机构成的业务集群的内存状态。为了更好的体现业务在某一时刻的状态,通常需要创建业务集群中所有虚拟机同一时刻的快照,这些快照被称为一致性快照。
[0003]目前主要通过管理系统控制各虚拟机创建快照,但由于各虚拟机的内存大小和业务模型不同导致虚拟机内存读写速度不同,当管理系统发送创建快照的指令后,各虚拟机接收到指令的时间不同,创建快照的速度不同,因此得到的快照依然不具有时间一致性。
[0004]因此,如何提高业务集群中各虚拟机快照的生成时间的一致性,是本领域技术人员亟需解决的问题。
技术实现思路
[0005]本申请的目的是提供一种快照生成方法、装置、介质,以提高业务集群中各虚拟机快照的生成时间的一致性。
[0006]为解决上述技术问题,本申请提供一种快照生成方法,应用于虚拟机,包括:
[0007]获取管理节点发送的包含第一预设时刻的第一指令,所述第一预设时刻晚于所述第一指令的发送时刻;在第一预设时刻将内存数据复制至存储装置;
[0008]判断已复制内存数据中发生修改的内存数据的字节数是否小于阈值,若小于所述阈值,则向所述管理节点发送请求以获取包含第二预设时刻的第二指令,若不小于所述阈值,则将所述未复制内存数据复制至存储装置,所述第二预设时刻晚于所述第二指令的发送时刻;
[0009]在第二预设时刻停止业务运行,并将所述发生修改的内存数据复制至所述存储装置。
[0010]优选的,所述向所述管理节点发送请求以获取包含第二预设时刻的第二指令的步骤后,还包括:
[0011]降低运行频率,并向所述管理节点发送降速反馈信息。
[0012]优选的,所述将内存数据复制至存储装置具体为:
[0013]将所述内存区域划分为N个连续的目标区域,N不小于1;
[0014]逐个将各所述目标区域所保存的所述内存数据复制至所述存储装置。
[0015]优选的,在所述停止业务运行并将所述未复制内存数据复制至所述存储装置的步骤后,还包括:
[0016]获取所述管理节点发送的包含第三预设时刻的第三指令;
[0017]在第三预设时刻恢复运行状态。
[0018]为解决上述技术问题,本申请还提供另一种快照生成方法,应用于管理节点,包括:
[0019]向各虚拟机发送包含第一预设时刻的第一指令,使所述虚拟机在所述第一预设时刻,将内存数据复制至存储装置,所述第一预设时刻晚于所述第一指令的发送时刻;
[0020]获取各所述虚拟机确定已复制内存数据中发生修改的内存数据的字节数小于阈值后发送的请求,其中,若各所述虚拟机确定所述发生修改的内存数据的字节数大于所述阈值,则将所述发生修改的内存数据复制至存储装置;
[0021]将包含第二预设时刻的第二指令发送至所述虚拟机,使所述虚拟机在所述第二预设时刻停止业务运行并将所述未复制内存数据复制至所述存储装置,所述第二预设时刻晚于所述第二指令的发送时刻。
[0022]优选的,在所述向虚拟机发送包含第一预设时间的第一指令的步骤前,还包括:
[0023]向各所述虚拟机发送第三指令,并记录发送所述第三指令的发送时间;
[0024]获取各所述虚拟机接收到所述第三指令的接收时间;
[0025]根据所述接收时间和所述发送时间计算各虚拟机间的最大时延;
[0026]根据所述最大时延和所述第一指令的发送时刻确定所述第一预设时刻;
[0027]根据所述最大时延和所述第二指令的发送时刻确定所述第二预设时刻。
[0028]优选的,所述将包含第二预设时间的第二指令发送至所述虚拟机,包括:
[0029]获取各所述虚拟机降速运行后发送的降速反馈信息,判断各所述虚拟机是否均进入降速运行阶段;
[0030]若均进入降速运行阶段,则将包含第二预设时刻的第二指令发送至各所述虚拟机。
[0031]为解决上述技术问题,本申请还提供一种快照生成装置,应用于虚拟机,包括:
[0032]获取模块:用于获取管理节点发送的包含第一预设时刻的第一指令,所述第一预设时刻晚于所述第一指令的发送时刻;
[0033]第一复制模块:用于在第一预设时刻将内存数据复制至存储装置;
[0034]判断模块:用于判断已复制内存数据中发生修改的内存数据的字节数是否小于阈值,若小于所述阈值,则向所述管理节点发送请求以获取包含第二预设时刻的第二指令,若不小于所述阈值,则将所述未复制内存数据复制至存储装置,所述第二预设时刻晚于所述第二指令的发送时刻;
[0035]第二复制模块:用于在第二预设时刻停止业务运行,并将所述发生修改的内存数据复制至所述存储装置。
[0036]为解决上述技术问题,本申请还提供另一种快照生成装置,包括存储器,用于存储计算机程序;
[0037]处理器,用于执行所述计算机程序时实现所述的快照生成方法的步骤。
[0038]为解决上述技术问题,本申请提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的快照生成方法的步骤。
[0039]获取管理节点发送的包含第一预设时刻的第一指令,所述第一预设时刻晚于所述第一指令的发送时刻;
[0040]在第一预设时刻将内存数据复制至存储装置;
[0041]在第二预设时刻停止业务运行,并将所述发生修改的内存数据复制至所述存储装置。
[0042]本申请提供的快照生成方法,包括:虚拟机获取管理节点发送的包含第一预设时刻的第一指令;在第一预设时刻将内存数据复制至存储装置,保证各虚拟机同时启动快照生成任务,减少由于各虚拟机接收到指令的时间不同导致的快照一致性问题。判断已复制内存数据中发生修改的内存数据的字节数是否小于阈值,若小于阈值,则向管理节点发送请求以获取包含第二预设时刻的第二指令,若不小于阈值,则将未复制内存数据复制至存储装置,第二预设时刻晚于第二指令的发送时刻,虚拟机将尽可能多的内存数据复制至存储装置中,减小虚拟机读写速度的不同对快照生成时间的影响。在第二预设时刻停止业务运行并将发生修改的内存数据复制至存储装置。本申请通过将快照生成过程划分为多个阶段,并保证各阶段的时间一致,从而减少虚拟机读写速度等因素对快照生成时间的影响,提高业务集群中各虚拟机快照的生成时间的一致性。
[0043]此外,本申请提供的快照生成装置及介质,与上述方法对应,效果同上。
附图说明
[0044]为了更清楚地说明本申请实施例,下面将对实本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种快照生成方法,其特征在于,应用于虚拟机,包括:获取管理节点发送的包含第一预设时刻的第一指令,所述第一预设时刻晚于所述第一指令的发送时刻;在第一预设时刻将内存数据复制至存储装置;判断已复制内存数据中发生修改的内存数据的字节数是否小于阈值,若小于所述阈值,则向所述管理节点发送请求以获取包含第二预设时刻的第二指令,若不小于所述阈值,则将所述未复制内存数据复制至存储装置,所述第二预设时刻晚于所述第二指令的发送时刻;在第二预设时刻停止业务运行,并将所述发生修改的内存数据复制至所述存储装置。2.如权利要求1所述的快照生成方法,其特征在于,所述向所述管理节点发送请求以获取包含第二预设时刻的第二指令的步骤后,还包括:降低运行频率,并向所述管理节点发送降速反馈信息。3.如权利要求1所述的快照生成方法,其特征在于,所述将内存数据复制至存储装置具体为:将所述内存区域划分为N个连续的目标区域,N不小于1;逐个将各所述目标区域所保存的所述内存数据复制至所述存储装置。4.如权利要求1所述的快照生成方法,其特征在于,在所述停止业务运行并将所述未复制内存数据复制至所述存储装置的步骤后,还包括:获取所述管理节点发送的包含第三预设时刻的第三指令;在第三预设时刻恢复运行状态。5.一种快照生成方法,其特征在于,应用于管理节点,包括:向各虚拟机发送包含第一预设时刻的第一指令,使所述虚拟机在所述第一预设时刻,将内存数据复制至存储装置,所述第一预设时刻晚于所述第一指令的发送时刻;获取各所述虚拟机确定已复制内存数据中发生修改的内存数据的字节数小于阈值后发送的请求,其中,若各所述虚拟机确定所述发生修改的内存数据的字节数大于所述阈值,则将所述发生修改的内存数据复制至存储装置;将包含第二预设时刻的第二指令发送至所述虚拟机,使所述虚拟机在所述第二预设时刻停止业务运行并将所述未复制内存数据复制至所述存储装置,所述第二...
【专利技术属性】
技术研发人员:冯振,颜秉珩,付海建,
申请(专利权)人:陕西浪潮英信科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。