CN110941476A - 一种虚拟机热迁移的控制方法、控制装置及控制设备 - Google Patents

一种虚拟机热迁移的控制方法、控制装置及控制设备 Download PDF

Info

Publication number
CN110941476A
CN110941476A CN201911113992.8A CN201911113992A CN110941476A CN 110941476 A CN110941476 A CN 110941476A CN 201911113992 A CN201911113992 A CN 201911113992A CN 110941476 A CN110941476 A CN 110941476A
Authority
CN
China
Prior art keywords
virtual machine
memory data
memory
instruction
live migration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911113992.8A
Other languages
English (en)
Other versions
CN110941476B (zh
Inventor
魏传程
胡玉鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jinan Inspur Data Technology Co Ltd
Original Assignee
Jinan Inspur Data Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jinan Inspur Data Technology Co Ltd filed Critical Jinan Inspur Data Technology Co Ltd
Priority to CN201911113992.8A priority Critical patent/CN110941476B/zh
Publication of CN110941476A publication Critical patent/CN110941476A/zh
Application granted granted Critical
Publication of CN110941476B publication Critical patent/CN110941476B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种虚拟机热迁移的控制方法,在接收到对第一虚拟机的热迁移命令时,生成第一虚拟机的内存快照,将第一虚拟机的内存快照拷贝至目标宿主机,以在目标宿主机上生成第二虚拟机,同时,将自生成第一虚拟机的内存快照起第一虚拟机接收到的指令同步至目标宿主机,最后根据指令更新第二虚拟机的内存数据,以实现第一虚拟机的热迁移,需要同步至第二虚拟机的数据是第一虚拟机接收到的指令而不是产生的脏数据,需要传输的数据量大大降低,节约了拷贝的时间,实现更为快速可靠的虚拟机热迁移过程,适用于对业务更加敏感的虚拟机热迁移。本发明还公开了一种虚拟机热迁移的控制装置、控制设备及计算机可读存储介质,具有上述有益效果。

Description

一种虚拟机热迁移的控制方法、控制装置及控制设备
技术领域
本发明涉及虚拟机技术领域,特别是涉及一种虚拟机热迁移的控制方法、控制装置、控制设备及计算机可读存储介质。
背景技术
热迁移(Live Migration),又叫动态迁移、实时迁移,即虚拟机保存/恢复,通常是将整个虚拟机的运行状态完整保存下来,同时可以快速的恢复到原有硬件平台甚至是不同硬件平台上。恢复以后,虚拟机仍旧平滑运行,用户不会察觉到任何差异。当前虚拟机热迁移的主要方面是实现虚拟机内存数据的迁移,其基本原理是不断地将源宿主机的虚拟机内存数据拷贝至目标宿主机。由于虚拟机一直处于运行状态,其内存数据在不断更新,有更新的内存数据被称为“脏数据”。该拷贝过程会持续运行一段时间,直到达到某个时机,此时,内存脏数据很小,可以在很短的时间内完成拷贝。然后,源主机的虚拟机被挂起,将最后的脏数据拷贝至目标宿主机主机,在目标宿主机将虚拟机恢复。
但是当前的迁移过程存在如下问题,当虚拟机处于繁忙运行状态时,很可能虚拟机内存脏数据变化速度很快,超过了内存拷贝速度,一直达不到可以将虚拟机挂起的状态,导致虚拟机迟迟无法完成热迁移,影响业务进行。
发明内容
本发明的目的是提供一种虚拟机热迁移的控制方法、控制装置、控制设备及计算机可读存储介质,用于加快虚拟机热迁移的执行。
为解决上述技术问题,本发明提供一种虚拟机热迁移的控制方法,包括:
当接收到对第一虚拟机的热迁移命令时,生成所述第一虚拟机的内存快照;
将所述第一虚拟机的内存快照拷贝至目标宿主机,以在所述目标宿主机上生成第二虚拟机;
将自生成所述第一虚拟机的内存快照起所述第一虚拟机接收到的指令同步至所述目标宿主机;
根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移。
可选的,所述根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移,具体包括:
在所述第二虚拟机上回放所述指令时,提高所述第二虚拟机的CPU运行速度;
当所述第二虚拟机的内存数据达到与所述第一虚拟机的内存数据的同步条件时,关闭所述第一虚拟机,运行所述第二虚拟机。
可选的,所述在所述第二虚拟机上回放所述指令时,提高所述第二虚拟机的CPU运行速度,具体为:
在所述第二虚拟机上回放所述指令时,通过CPU睿频提高所述第二虚拟机的CPU运行速度。
可选的,所述根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移,具体包括:
在所述第二虚拟机上回放所述指令时,降低所述第一虚拟机的CPU运行速度;
当所述第二虚拟机的内存数据达到与所述第一虚拟机的内存数据的同步条件时,关闭所述第一虚拟机,运行所述第二虚拟机。
可选的,所述根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移,具体包括:
判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件;
如果是,则在关闭所述第一虚拟机,运行所述第二虚拟机之后,在所述第二虚拟机上回放所述指令;
如果否,则回放所述指令中未执行的最早接收到的指令后,返回所述判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件的步骤。
可选的,所述判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件,具体包括:
判断所述指令中的未执行指令是否均为预设类型的指令;
如果是,则所述第二虚拟机的内存数据达到了所述同步条件;
如果否,则所述第二虚拟机的内存数据未达到所述同步条件。
可选的,所述判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件,具体包括:
判断所述指令中的未执行指令的预计执行时间是否小于预设时间阈值;
如果是,则所述第二虚拟机的内存数据达到了所述同步条件;
如果否,则所述第二虚拟机的内存数据未达到所述同步条件。
为解决上述技术问题,本发明还提供一种虚拟机热迁移的控制装置,包括:
快照单元,用于当接收到对第一虚拟机的热迁移命令时,生成所述第一虚拟机的内存快照;
第一同步单元,用于将所述第一虚拟机的内存快照拷贝至目标宿主机,以在所述目标宿主机上生成第二虚拟机;
第二同步单元,用于将自生成所述第一虚拟机的内存快照起所述第一虚拟机接收到的指令同步至所述目标宿主机;
更新单元,用于根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移。
为解决上述技术问题,本发明还一种虚拟机热迁移的控制设备,包括:
存储器,用于存储指令,所述指令包括上述任意一项所述虚拟机热迁移的控制方法的步骤;
处理器,用于执行所述指令。
为解决上述技术问题,本发明还一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述虚拟机热迁移的控制方法的步骤。
本发明所提供的虚拟机热迁移的控制方法,在接收到对第一虚拟机的热迁移命令时,生成第一虚拟机的内存快照,将第一虚拟机的内存快照拷贝至目标宿主机,以在目标宿主机上生成第二虚拟机,同时,将自生成第一虚拟机的内存快照起第一虚拟机接收到的指令同步至目标宿主机,最后根据指令更新第二虚拟机的内存数据,以实现第一虚拟机的热迁移。应用本发明提供的虚拟机热迁移方案,在第一虚拟机的内存快照的拷贝过程中,当第一虚拟机上产生脏数据时,需要同步至第二虚拟机的数据是第一虚拟机接收到的指令而不是产生的脏数据,需要传输的数据量大大降低,节约了拷贝的时间,当第二虚拟机的状态迫近第一虚拟机时,就可以直接由第二虚拟机代替第一虚拟机执行接收到的指令,实现更为快速可靠的虚拟机热迁移过程,适用于对业务更加敏感的虚拟机热迁移。本发明还提供一种虚拟机热迁移的控制装置、控制设备及计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种虚拟机热迁移的控制方法的流程图;
图2为本发明实施例提供的一种图1中步骤S104的具体实施方式的流程图;
图3为本发明实施例提供的一种虚拟机热迁移的控制装置的结构示意图;
图4为本发明实施例提供的一种虚拟机热迁移的控制设备的结构示意图。
具体实施方式
本发明的核心是提供一种虚拟机热迁移的控制方法、控制装置、控制设备及计算机可读存储介质,用于加快虚拟机热迁移的执行。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的一种虚拟机热迁移的控制方法的流程图。
如图1所示,本发明实施例提供的虚拟机热迁移的控制方法包括:
S101:当接收到对第一虚拟机的热迁移命令时,生成第一虚拟机的内存快照。
在实际应用中,第一虚拟机位于源宿主机,第二虚拟机位于目标虚拟机,而本发明实施例提供的方案可以应用于此两个节点上,也可以应用于第三方节点上,用于控制虚拟机热迁移的进行。
以应用于第三方节点为例,当接收到对第一虚拟机的热迁移命令时,对第一虚拟机的内存数据执行快照,得到第一虚拟机的内存快照。第一虚拟机的内存快照可以保存于源宿主机的内存中。
S102:将第一虚拟机的内存快照拷贝至目标宿主机,以在目标宿主机上生成第二虚拟机。
将第一虚拟机的内存快照拷贝至目标宿主机,从而在目标宿主机上生成一个状态落后于第一虚拟机的第二虚拟机。
S103:将自生成第一虚拟机的内存快照起第一虚拟机接收到的指令同步至目标宿主机。
第一虚拟机的内存快照的拷贝过程需要一定的时间,在此过程中,第一虚拟机可能会收到用户发送的指令。此时,第一虚拟机还是作为向用户提供服务的虚拟机,维持运行状态。
S104:根据指令更新第二虚拟机的内存数据,以实现第一虚拟机的热迁移。
在目标宿主机上生成第二虚拟机后,此时第二虚拟机处于生成第一虚拟机的内存快照时第一虚拟机的状态,对接收到的从该状态起的所有指令进行重放,从而将拷贝过程中的内存变化进行更新,最终实现第二虚拟机的内存数据与第一虚拟机的内存数据的完全同步。需要说明的是,从第二虚拟机生成之后到在第二虚拟机的内存数据与第一虚拟机的内存数据同步之前这段时间内,第一虚拟机仍处于运行状态,第二虚拟机回放第一虚拟机上执行过的指令以追赶第一虚拟机的状态。
然而,当第一虚拟机接收的指令较多,第一虚拟机上不断产生脏数据时,即使采用传输指令代替传输更新数据的方式降低了拷贝的数据量、加快了同步速度,第二虚拟机还是很难追赶上第一虚拟机,此时就需要二者之间的执行时间产生差异,使第一虚拟机的CPU运行速度低于第二虚拟机的CPU的运行速度,从而使第二虚拟机的内存数据快速迫近第一虚拟机的内存数据。
因此,步骤S104具体可以包括:
在第二虚拟机上回放指令时,提高第二虚拟机的CPU运行速度;
当第二虚拟机的内存数据达到与第一虚拟机的内存数据的同步条件时,关闭第一虚拟机,运行第二虚拟机。
在目标宿主机上,相较于正常运行水平(以第一虚拟机为参照)提高第二虚拟机的CPU运行速度。在具体实施中,在第二虚拟机上回放指令时,可以通过CPU睿频提高第二虚拟机的CPU运行速度。
此外,还可以放慢第一虚拟机的CPU运行速度,步骤S104还可以包括:
在第二虚拟机上回放指令时,降低第一虚拟机的CPU运行速度;
当第二虚拟机的内存数据达到与第一虚拟机的内存数据的同步条件时,关闭第一虚拟机,运行第二虚拟机。
在源宿主机上,按一定比例降低第一虚拟机的CPU运行速度,从而使第二虚拟机能够迫近第一虚拟机的状态。
当第二虚拟机迫近第一虚拟机的状态,即只需要完成少量的指令拷贝或指令执行就可以实现第二虚拟机的内存数据与第一虚拟机的内存数据的同步时,关闭第一虚拟机,运行第二虚拟机。
本发明实施例提供的虚拟机热迁移的控制方法,在接收到对第一虚拟机的热迁移命令时,生成第一虚拟机的内存快照,将第一虚拟机的内存快照拷贝至目标宿主机,以在目标宿主机上生成第二虚拟机,同时,将自生成第一虚拟机的内存快照起第一虚拟机接收到的指令同步至目标宿主机,最后根据指令更新第二虚拟机的内存数据,以实现第一虚拟机的热迁移。应用本发明实施例提供的虚拟机热迁移方案,在第一虚拟机的内存快照的拷贝过程中,当第一虚拟机上产生脏数据时,需要同步至第二虚拟机的数据是第一虚拟机接收到的指令而不是产生的脏数据,需要传输的数据量大大降低,节约了拷贝的时间,当第二虚拟机的状态迫近第一虚拟机时,就可以直接由第二虚拟机代替第一虚拟机执行接收到的指令,实现更为快速可靠的虚拟机热迁移过程,适用于对业务更加敏感的虚拟机热迁移。
图2为本发明实施例提供的一种图1中步骤S104的具体实施方式的流程图。
上述实施例中提供的虚拟机热迁移的控制方法通过同步指令而非脏数据的方式加快了虚拟机热迁移速度,在此基础上,为进一步提高虚拟机热迁移的速度,使第一虚拟机提早挂起,第二虚拟机尽快投入运行,本发明实施例提供了具体的实施方式。
如图2所示,在上述实施例的基础上,在本发明实施例提供的虚拟机热迁移的控制方法中,步骤S104具体包括:
S201:判断第二虚拟机的内存数据是否达到与第一虚拟机的内存数据的同步条件;如果是,则进入步骤S202;如果否,则进入步骤S203。
S202:在关闭第一虚拟机,运行第二虚拟机之后,在第二虚拟机上回放指令。
S203:回放指令中未执行的最早接收到的指令后,返回判断第二虚拟机的内存数据是否达到与第一虚拟机的内存数据的同步条件。
在生成第二虚拟机之后,马上开始对第二虚拟机的内存数据是否达到与第一虚拟机的内存数据的同步条件的判断,如当第一虚拟机处于空闲状态时,可能直接切换至第二虚拟机运行即可。此时第一虚拟机也可能持续在接收指令,而增加对这些指令的类型的判别,如果这些指令的重复执行对系统及用户无较大影响时,就可以切换至第二虚拟机上再次执行。
步骤S201具体可以包括:
判断指令中的未执行指令是否均为预设类型的指令;
如果是,则第二虚拟机的内存数据达到了同步条件;
如果否,则第二虚拟机的内存数据未达到同步条件。
上述预设类型的指令即为在第二虚拟机上重复执行对系统及用户无较大影响的指令。例如,某指令的执行没有对用户的反馈信息,则该指令在第一虚拟机上执行过后,在第二虚拟机回放指令时可以再次执行,此时可以先将第一虚拟机关闭,运行第二虚拟机,之后再执行该指令。预设类型的指令由运维人员通过统计符合上述要求的指令计入本发明实施例的方案的执行脚本中。
此外,步骤S201还可以包括:
判断指令中的未执行指令的预计执行时间是否小于预设时间阈值;
如果是,则第二虚拟机的内存数据达到了同步条件;
如果否,则第二虚拟机的内存数据未达到同步条件。
通过参照第一虚拟机对未执行指令的执行时间,可以得到全体未执行指令的预计执行时间,如果该执行时间小于预设时间阈值,即不会对系统和用户产生影响的时间阈值时,即可认为第二虚拟机达到了同步条件,可以在关闭第一虚拟机、运行第二虚拟机之后再执行这些指令。
上述两种判读第二虚拟机的内存数据达到同步条件的方法可以同时采用,也可以增加其他判断方式,最终达到使得第二虚拟机一旦满足同步条件则马上切换至第二虚拟机运行的目的,最大程度上加快虚拟机热迁移的进程。
上文详述了虚拟机热迁移的控制方法对应的各个实施例,在此基础上,本发明还公开了与上述方法对应的虚拟机热迁移的控制装置、设备及计算机可读存储介质。
图3为本发明实施例提供的一种虚拟机热迁移的控制装置的结构示意图。
如图3所示,本发明实施例提供的虚拟机热迁移的控制装置包括:
快照单元301,用于当接收到对第一虚拟机的热迁移命令时,生成第一虚拟机的内存快照;
第一同步单元302,用于将第一虚拟机的内存快照拷贝至目标宿主机,以在目标宿主机上生成第二虚拟机;
第二同步单元303,用于将自生成第一虚拟机的内存快照起第一虚拟机接收到的指令同步至目标宿主机;
更新单元304,用于根据指令更新第二虚拟机的内存数据,以实现第一虚拟机的热迁移。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图4为本发明实施例提供的一种虚拟机热迁移的控制设备的结构示意图。
如图4所示,发明实施例提供的数据同步设备包括:
存储器410,用于存储指令,所述指令包括上述任意一项实施例所述的数据同步方法的步骤;
处理器420,用于执行所述指令。
其中,处理器420可以包括一个或多个处理核心,比如3核心处理器、8核心处理器等。处理器420可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器420也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器420可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器420还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器410可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器410还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器410至少用于存储以下计算机程序411,其中,该计算机程序411被处理器420加载并执行之后,能够实现前述任一实施例公开的虚拟机热迁移的控制方法中的相关步骤。另外,存储器410所存储的资源还可以包括操作系统412和数据413等,存储方式可以是短暂存储或者永久存储。其中,操作系统412可以为Windows。数据413可以包括但不限于上述方法所涉及到的数据。
在一些实施例中,虚拟机热迁移的控制设备还可包括有显示屏430、电源440、通信接口450、输入输出接口460、传感器470以及通信总线480。
本领域技术人员可以理解,图4中示出的结构并不构成对虚拟机热迁移的控制设备的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的虚拟机热迁移的控制设备,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如上所述的虚拟机热迁移的控制方法,效果同上。
需要说明的是,以上所描述的装置、设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本发明各个实施例所述方法的全部或部分步骤。
为此,本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如虚拟机热迁移的控制方法的步骤。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例中提供的计算机可读存储介质所包含的计算机程序能够在被处理器执行时实现如上所述的虚拟机热迁移的控制方法的步骤,效果同上。
以上对本发明所提供的一种虚拟机热迁移的控制方法、控制装置、控制设备及计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种虚拟机热迁移的控制方法,其特征在于,包括:
当接收到对第一虚拟机的热迁移命令时,生成所述第一虚拟机的内存快照;
将所述第一虚拟机的内存快照拷贝至目标宿主机,以在所述目标宿主机上生成第二虚拟机;
将自生成所述第一虚拟机的内存快照起所述第一虚拟机接收到的指令同步至所述目标宿主机;
根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移。
2.根据权利要求1所述的控制方法,其特征在于,所述根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移,具体包括:
在所述第二虚拟机上回放所述指令时,提高所述第二虚拟机的CPU运行速度;
当所述第二虚拟机的内存数据达到与所述第一虚拟机的内存数据的同步条件时,关闭所述第一虚拟机,运行所述第二虚拟机。
3.根据权利要求2所述的控制方法,其特征在于,所述在所述第二虚拟机上回放所述指令时,提高所述第二虚拟机的CPU运行速度,具体为:
在所述第二虚拟机上回放所述指令时,通过CPU睿频提高所述第二虚拟机的CPU运行速度。
4.根据权利要求1所述的控制方法,其特征在于,所述根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移,具体包括:
在所述第二虚拟机上回放所述指令时,降低所述第一虚拟机的CPU运行速度;
当所述第二虚拟机的内存数据达到与所述第一虚拟机的内存数据的同步条件时,关闭所述第一虚拟机,运行所述第二虚拟机。
5.根据权利要求1所述的控制方法,其特征在于,所述根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移,具体包括:
判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件;
如果是,则在关闭所述第一虚拟机,运行所述第二虚拟机之后,在所述第二虚拟机上回放所述指令;
如果否,则回放所述指令中未执行的最早接收到的指令后,返回所述判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件的步骤。
6.根据权利要求5所述的控制方法,其特征在于,所述判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件,具体包括:
判断所述指令中的未执行指令是否均为预设类型的指令;
如果是,则所述第二虚拟机的内存数据达到了所述同步条件;
如果否,则所述第二虚拟机的内存数据未达到所述同步条件。
7.根据权利要求5所述的控制方法,其特征在于,所述判断所述第二虚拟机的内存数据是否达到与所述第一虚拟机的内存数据的同步条件,具体包括:
判断所述指令中的未执行指令的预计执行时间是否小于预设时间阈值;
如果是,则所述第二虚拟机的内存数据达到了所述同步条件;
如果否,则所述第二虚拟机的内存数据未达到所述同步条件。
8.一种虚拟机热迁移的控制装置,其特征在于,包括:
快照单元,用于当接收到对第一虚拟机的热迁移命令时,生成所述第一虚拟机的内存快照;
第一同步单元,用于将所述第一虚拟机的内存快照拷贝至目标宿主机,以在所述目标宿主机上生成第二虚拟机;
第二同步单元,用于将自生成所述第一虚拟机的内存快照起所述第一虚拟机接收到的指令同步至所述目标宿主机;
更新单元,用于根据所述指令更新所述第二虚拟机的内存数据,以实现所述第一虚拟机的热迁移。
9.一种虚拟机热迁移的控制设备,其特征在于,包括:
存储器,用于存储指令,所述指令包括权利要求1至7任意一项所述虚拟机热迁移的控制方法的步骤;
处理器,用于执行所述指令。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述虚拟机热迁移的控制方法的步骤。
CN201911113992.8A 2019-11-14 2019-11-14 一种虚拟机热迁移的控制方法、控制装置及控制设备 Active CN110941476B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911113992.8A CN110941476B (zh) 2019-11-14 2019-11-14 一种虚拟机热迁移的控制方法、控制装置及控制设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911113992.8A CN110941476B (zh) 2019-11-14 2019-11-14 一种虚拟机热迁移的控制方法、控制装置及控制设备

Publications (2)

Publication Number Publication Date
CN110941476A true CN110941476A (zh) 2020-03-31
CN110941476B CN110941476B (zh) 2023-01-24

Family

ID=69906556

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911113992.8A Active CN110941476B (zh) 2019-11-14 2019-11-14 一种虚拟机热迁移的控制方法、控制装置及控制设备

Country Status (1)

Country Link
CN (1) CN110941476B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022021856A1 (zh) * 2020-07-30 2022-02-03 苏州浪潮智能科技有限公司 一种多磁盘虚拟机在线迁移到不同存储池的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103036947A (zh) * 2012-11-21 2013-04-10 北京航空航天大学 基于kvm的虚拟机迁移方法及系统
CN106897118A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种虚拟机内存快照创建方法及系统
CN110968393A (zh) * 2018-09-30 2020-04-07 阿里巴巴集团控股有限公司 虚拟机的迁移处理方法、存储介质、计算设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103036947A (zh) * 2012-11-21 2013-04-10 北京航空航天大学 基于kvm的虚拟机迁移方法及系统
CN106897118A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种虚拟机内存快照创建方法及系统
CN110968393A (zh) * 2018-09-30 2020-04-07 阿里巴巴集团控股有限公司 虚拟机的迁移处理方法、存储介质、计算设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022021856A1 (zh) * 2020-07-30 2022-02-03 苏州浪潮智能科技有限公司 一种多磁盘虚拟机在线迁移到不同存储池的方法及装置
US11740925B2 (en) 2020-07-30 2023-08-29 Inspur Suzhou Intelligent Technology Co., Ltd. Method and apparatus for online migration of multi-disk virtual machine into different storage pools

Also Published As

Publication number Publication date
CN110941476B (zh) 2023-01-24

Similar Documents

Publication Publication Date Title
KR20190082297A (ko) 애플리케이션 데이터 프로세싱 방법 및 장치, 및 저장 매체
CN104965757A (zh) 虚拟机热迁移的方法、虚拟机迁移管理装置及系统
CN107632937B (zh) 一种对虚拟机集群进行测试的方法、装置、可读存储介质
US10684838B2 (en) Dynamic application deployment
CN102521289B (zh) 一种文件同步方法、装置及系统
CN103870303A (zh) 减小软件安装包大小的方法及装置
CN111857966A (zh) 虚拟机快照创建方法、装置及计算机可读存储介质
CN113535384B (zh) 一种针对应用的克隆方法及装置
US10565000B2 (en) Method and apparatus for online upgrade of kernel-based virtual machine module
CN108037932B (zh) Spi-nand的配置文件获取方法和装置
CN110941476B (zh) 一种虚拟机热迁移的控制方法、控制装置及控制设备
CN116560802B (zh) 一种基于虚拟机负载的虚拟机自适应热迁移方法及系统
CN110505097B (zh) 一种转发面升级方法、装置及电子设备和存储介质
CN102682461B (zh) 一种动画渲染方法、系统及动画播放器
CN116866661A (zh) 一种视频预渲染方法、装置、设备及存储介质
CN106294209B (zh) 一种信息处理方法及电子设备
WO2017000586A1 (zh) 虚拟网元的升级方法、装置和计算机存储介质
CN114995770B (zh) 一种数据处理方法、装置、设备、系统及可读存储介质
CN114296882A (zh) 一种虚拟机内存快照的导出方法、装置及介质
CN103927207A (zh) 软件加速方法和装置
CN112241504A (zh) 一种计时方法和计时装置
CN109005021B (zh) 一种虚拟化环境中的主机时间管理方法及相关装置
CN112732679B (zh) 数据迁移方法、装置、电子设备及可读存储介质
CN113553216B (zh) 数据恢复方法、装置、电子设备及存储介质
CN108235757A (zh) 一种操作系统屏幕锁定的方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant