虚拟机的应用恢复的方法和计算设备技术

技术编号:39062389 阅读:15 留言:0更新日期:2023-10-12 19:55
本申请提供了一种虚拟机的应用恢复的方法和计算设备。在实施例中,方法应用于计算设备,方法包括:启动第二虚拟机;第二虚拟机包括第一虚拟机的第一内核升级后的第二内核和第二内存空间;第一虚拟机和第二虚拟机的配置相同;冻结第一虚拟机中运行的第一应用;从第一虚拟机的第一内存空间中确定第一内存页面;第一内存页面用于存储第一应用的状态信息;基于第一内存页面,确定第二内存空间中的第二内存页面;第二内存页面用于存储第一应用的状态信息;基于第二内存页面中存储的第一应用的状态信息,通过第二虚拟机的第二内核恢复运行第一虚拟机中冻结的第一应用。服务中断从启动新虚拟机之后的冻结应用开始,可在一定程度上减少服务中断的时长。服务中断的时长。服务中断的时长。

【技术实现步骤摘要】
虚拟机的应用恢复的方法和计算设备


[0001]本申请涉及计算机
,尤其涉及一种虚拟机的应用恢复的方法和计算设备。

技术介绍

[0002]在基于核心的虚拟机(Kernel

based Virtual Machine,KVM)技术中,通过快速模拟器(Quick Emulator,QEMU)等虚拟化模拟器,可以模拟出能够独立运行操作系统的虚拟机(Virtual Machine,VM)。具体地,在物理主机上,一个虚拟机具有一个操作系统和多个应用。操作系统的核心为内核。
[0003]对于已经在线上运行的虚拟机来说,为了增强安全性、修复漏洞、优化源码级性能等目的,难以避免地需要对虚拟机的内核进行局部或整体的升级,也即,基于旧版本的内核运行的虚拟机需要升级成基于新版本内核运行的虚拟机。
[0004]在相关技术中,在升级虚拟机的内核的过程中,首先冻结虚拟机内部正在运行的服务,然后对虚拟机内部正在运行的服务制作检查点,然后,启动升级后的内核,升级后的内核基于基于检查点,恢复虚拟机内部正在运行的服务。
[0005]但是,上述方案虚拟机内部正在运行的服务的冻结的时刻到恢复的时刻之间的时长可能较长,导致服务中断的时长较长。
[0006]公开于该
技术介绍
部分的信息仅仅旨在增加对本申请的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。

技术实现思路

[0007]本申请实施例提供了一种虚拟机的应用恢复方法、装置及系统,在启动新虚拟机的过程中,没有冻结应用,因此无需关心新虚拟机启动的开销,服务中断从启动新虚拟机之后的冻结应用开始,由于服务中断的时间没有包含启动新虚拟机的时间,可以在一定程度上减少服务中断的时长。
[0008]第一方面,本申请实施例提供了一种虚拟机的应用恢复的方法,应用于计算设备,计算设备运行有第一虚拟机;第一虚拟机包括第一内核和第一内存空间;其中,第一虚拟机通过第一内核运行第一应用;
[0009]方法包括:启动第二虚拟机;其中,第二虚拟机包括第二内核和第二内存空间;第二内核为第一内核升级后的内核;第一虚拟机和第二虚拟机的配置相同;冻结第一虚拟机中运行的第一应用;从第一内存空间中确定第一内存页面;其中,第一内存页面用于存储第一应用的状态信息;基于第一内存页面,确定第二内存空间中的第二内存页面;其中,第二内存页面用于存储第一应用的状态信息;基于第二内存页面中存储的第一应用的状态信息,通过第二虚拟机的第二内核恢复运行第一虚拟机中冻结的第一应用。
[0010]本方案中,在启动新虚拟机的过程中,没有冻结应用,因此无需关心新虚拟机启动的开销,服务中断从启动新虚拟机之后的冻结应用开始,由于服务中断的时间没有包含启
动新虚拟机的时间,可以在一定程度上减少服务中断的时长。
[0011]在一种可能的实现方式中,第一内存空间包括N个第一内存分片,第二内存空间包括N个第二内存分片;其中,N个第一内存分片和N个第二内存分片一一对应;
[0012]基于第一内存页面,确定第二内存空间中的第二内存页面,包括:从N个第一内存分片中确定第一目标内存分片;其中,第一目标内存分片为第一内存页面第一目标内存分片;基于第一目标内存分片,确定第二内存空间中的第二内存页面。
[0013]在该实现方式的一个例子中,第一目标内存分片具有映射的第一文件;
[0014]基于第一目标内存分片,确定第二内存空间中的第二内存页面,包括:确定第二目标内存分片是否具有映射的第二文件;其中,第二目标内存分片是在N个第二内存分片中和第一目标内存分片对应的内存分片;在第二目标内存分片不具有映射的第二文件的情况下,将第一文件作为第二目标内存分片的映射文件;将第一内存页面确定为第二内存页面。
[0015]在该例子的一种情况中,方法还包括:在第二目标内存分片具有映射的第二文件的情况下,确定第一文件的名称和第二文件的名称是否相同;在第一文件的名称和第二文件的名称相同的情况下,将第一内存页面确定为第二内存页面。
[0016]在该例子的另一种情况中,方法还包括:在第一文件的名称和第二的文件名称不相同的情况下,确定N个第二内存分片中的第三目标内存分片;其中,第三目标内存分片包括第三内存页面,第三内存页面为第三目标内存分片中的空白页面;交换第一内存页面和第三内存页面,以使通过第三内存页面可以访问第一内存页面存储的第一应用的状态信息;确定第三内存页面为第二内存页面。
[0017]示例性地,在第二目标内存分片存在空白页的情况下,第三目标内存分片为第二目标内存分片。
[0018]示例性地,在第二目标内存分片不存在空白页的情况下,第三目标内存分片是与第二目标内存分片不同的第二内存分片。
[0019]在一种可能的实现方式中,在冻结第一虚拟机中运行的第一应用之前,方法还包括:将第一内存空间存储的未持久化的数据写入第一虚拟机的文件系统。
[0020]该方案中,在冻结第一虚拟机运行的应用前,将第一内存空间存储的未持久化的数据写入第一虚拟机的磁盘分区进行持久化;这样,后续冻结应用之后,无需进行文件系统的修复(也即将文件系统的状态恢复到最新状态)或者需要修复的数据(也即持久化完成后到应用冻结之间产生的数据)的数据量较少。
[0021]在该实现方式的一个例子中,基于第一内存页面,从第二内存空间中确定第二内存页面之后,方法还包括:卸载第一虚拟机的文件系统;
[0022]在通过第二虚拟机的第二内核恢复运行第一虚拟机中冻结的第一应用之前,方法还包括:将文件系统挂载给第二虚拟机。
[0023]本方案中,在原虚拟机的运行应用冻结前,将内存中未持久化的数据写入磁盘进行持久化,使得文件系统的状态最新(也即数据是最新的);后续,新虚拟机可以直接进行文件系统挂载,无需进行文件系统修复(也即在数据不是最新的情况下,将数据更新到最新的状态)或者需要修复的数据(也即持久化完成后到应用冻结之间产生的数据)的数据量较少,从而加快新虚拟机的文件系统的挂载。
[0024]在该例子的一个示例中,卸载第一虚拟机的文件系统之前,方法还包括:终止正在
访问文件系统的任务。
[0025]本方案中,通过终止正在访问文件系统的任务,从而确保文件系统的成功卸载。
[0026]第二方面,本申请实施例提供了一种虚拟机的应用恢复的装置,虚拟机的应用恢复的装置包括若干个模块,各个模块用于执行本申请实施例第一方面提供的虚拟机的应用恢复的方法中的各个步骤,关于模块的划分在此不做限制。该虚拟机的应用恢复的装置各个模块所执行的具体功能及达到的有益效果请参考本申请实施例第一方面提供的虚拟机的应用恢复的方法的各个步骤的功能,在此不再赘述。
[0027]示例地,虚拟机的应用恢复的装置包括:
[0028]启动模块,用于启动第二虚拟机;其中,第二虚拟机包括第二内核和第二内存空间;第二内核为第一内核升级后的内核;第一虚拟机和第二虚拟机的配置相本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟机的应用恢复的方法,其特征在于,应用于计算设备,所述计算设备运行有第一虚拟机;所述第一虚拟机包括第一内核和第一内存空间;其中,所述第一虚拟机通过所述第一内核运行第一应用;所述方法包括:启动第二虚拟机;其中,所述第二虚拟机包括第二内核和第二内存空间;所述第二内核为所述第一内核升级后的内核;所述第一虚拟机和所述第二虚拟机的配置相同;冻结所述第一虚拟机中运行的第一应用;从所述第一内存空间中确定第一内存页面;其中,所述第一内存页面用于存储所述第一应用的状态信息;基于所述第一内存页面,确定所述第二内存空间中的第二内存页面;其中,第二内存页面用于存储第一应用的状态信息;基于所述第二内存页面中存储的第一应用的状态信息,通过所述第二虚拟机的第二内核恢复运行所述第一虚拟机中冻结的第一应用。2.根据权利要求1所述的方法,其特征在于,所述第一内存空间包括N个第一内存分片,所述第二内存空间包括N个第二内存分片;其中,所述N个第一内存分片和所述N个第二内存分片一一对应;所述基于所述第一内存页面,确定所述第二内存空间中的第二内存页面,包括:从N个第一内存分片中确定第一目标内存分片;其中,所述第一目标内存分片为所述第一内存页面第一目标内存分片;基于所述第一目标内存分片,确定所述第二内存空间中的第二内存页面。3.根据权利要求2所述的方法,其特征在于,所述第一目标内存分片具有映射的第一文件;基于第一目标内存分片,确定所述第二内存空间中的第二内存页面,包括:确定第二目标内存分片是否具有映射的第二文件;其中,所述第二目标内存分片是在所述N个第二内存分片中和所述第一目标内存分片对应的内存分片;在所述第二目标内存分片不具有映射的第二文件的情况下,将所述第一文件作为所述第二目标内存分片的映射文件;将所述第一内存页面确定为所述第二内存页面。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:在所述第二目标内存分片具...

【专利技术属性】
技术研发人员:刘晓建文白林张欣
申请(专利权)人:超聚变数字技术有限公司
类型:发明
国别省市:

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

1