一种基于自动调节迭代时间的虚拟机内存迁移方法和设备技术

技术编号:24010220 阅读:35 留言:0更新日期:2020-05-02 01:29
本发明专利技术公开了一种基于自动调节迭代时间的虚拟机内存迁移方法,包括:响应于虚拟机的内存页通过迭代方式第一轮迭代拷贝到目的主机,构建脏页页位图以及非脏页页位图,并将所有当前内存页存储在非脏页页位图中;响应于虚拟机的内存页通过迭代方式新一轮迭代拷贝到目的主机,将上一轮迭代产生的脏页存储到脏页页位图,并删除非脏页页位图中脏页对应的内存页;基于脏页计算上一轮迭代中内存变化频率,并根据内存变化频率自动调整迭代时间;基于迭代时间,将脏页页位图和非脏页页位图中的内存数据传输到目的主机。本发明专利技术还公开了一种计算机设备。本发明专利技术减少脏数据的传输量,缩短迁移时间,提升了虚拟机动态迁移的效率。

A method and device for memory migration of virtual machine based on automatic adjustment of iteration time

【技术实现步骤摘要】
一种基于自动调节迭代时间的虚拟机内存迁移方法和设备
本专利技术涉及计算机
,更具体地,特别是指一种基于自动调节迭代时间的虚拟机内存迁移方法和设备。
技术介绍
为了实现云计算数据中心的不宕机故障维护、不同服务器间的负载均衡。虚拟机的内存动态迁移成为了一种常用功能。内存动态迁移实现了虚拟机内存从源主机到目的主机的迁移,并且保证虚拟机正常运行。目前,内存预拷贝因为稳定性高而广泛的应用于xen、KVM、Vmware等虚拟化平台中,内存预拷贝是将虚拟机的内存页通过迭代的方式拷贝到目的主机上,第一轮拷贝全部的内存页,第二轮拷贝在第一轮拷贝过程中产生变化的内存页即脏页,第n轮拷贝第n-1轮拷贝期间产生的脏页(其中,将修改过的页称为脏页)。预拷贝使用一个预设的条件如最大迭代轮次或者某一常数,当达到条件时,则停机拷贝,把所有剩余脏数据一并拷贝过去。其中,实现分页的基本方法涉及将物理内存分为固定大小的块,称为帧或页帧,而将逻辑内存也分为同样大小的块,称为页或页面。当前内存预拷贝方法的问题是当虚拟机负载大,内存变化快的时候容易重复拷贝同一个脏页,从而导致迁移时间变长。
技术实现思路
有鉴于此,本专利技术实施例的目的在于在虚拟机热迁移内存预拷贝的基础上,提出了一种新的解决方案,通过计算内存变化频率的快慢自动调节迭代时间,从而减少脏数据的传输量,缩短迁移时间,提升了虚拟机动态迁移的效率。基于上述目的,本专利技术实施例的一方面提供了一种基于自动调节迭代时间的虚拟机内存迁移方法,包括如下步骤:响应于虚拟机的内存页通过迭代方式第一轮迭代拷贝到目的主机,构建脏页页位图以及非脏页页位图,并将所有当前内存页存储在非脏页页位图中;响应于虚拟机的内存页通过迭代方式新一轮迭代拷贝到目的主机,将上一轮迭代产生的脏页存储到脏页页位图,并删除非脏页页位图中脏页对应的内存页;基于脏页计算上一轮迭代中内存变化频率,并根据内存变化频率自动调整迭代时间;基于迭代时间,将脏页页位图和非脏页页位图中的内存数据传输到目的主机。在本专利技术的基于自动调节迭代时间的虚拟机内存迁移方法的一些实施方式中,内存变化频率的大小为变化的内存页的页数乘以变化的内存页的页面大小并除以迭代时间。在本专利技术的基于自动调节迭代时间的虚拟机内存迁移方法的一些实施方式中,基于脏页计算上一轮迭代中内存变化频率,并根据内存变化频率自动调整迭代时间还包括:响应于内存变化频率大于预设速率,减小迭代时间;响应于内存变化频率小于预设速率,增大迭代时间。在本专利技术的基于自动调节迭代时间的虚拟机内存迁移方法的一些实施方式中,预设速率为网络传输速率的一半。在本专利技术的基于自动调节迭代时间的虚拟机内存迁移方法的一些实施方式中,还包括:响应于内存变化频率大于网络传输速率或非脏页页位图为空,停止迭代,使虚拟机停机并将脏页页位图和非脏页页位图中的内存页拷贝到目的主机。本专利技术实施例的另一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现以下步骤:响应于虚拟机的内存页通过迭代方式第一轮迭代拷贝到目的主机,构建脏页页位图以及非脏页页位图,并将所有当前内存页存储在非脏页页位图中;响应于虚拟机的内存页通过迭代方式新一轮迭代拷贝到目的主机,将上一轮迭代产生的脏页存储到脏页页位图,并删除非脏页页位图中脏页对应的内存页;基于脏页计算上一轮迭代中内存变化频率,并根据内存变化频率自动调整迭代时间;基于迭代时间,将脏页页位图和非脏页页位图中的内存数据传输到目的主机。在本专利技术的计算机设备的一些实施方式中,内存变化频率的大小为变化的内存页的页数乘以变化的内存页的页面大小并除以迭代时间。在本专利技术的计算机设备的一些实施方式中,基于脏页计算上一轮迭代中内存变化频率,并根据内存变化频率自动调整迭代时间还包括:响应于内存变化频率大于预设速率,减小迭代时间;响应于内存变化频率小于预设速率,增大迭代时间。在本专利技术的计算机设备的一些实施方式中,预设速率为网络传输速率的一半。在本专利技术的计算机设备的一些实施方式中,步骤还包括:响应于内存变化频率大于网络传输速率或非脏页页位图为空,停止迭代,使虚拟机停机并将脏页页位图和非脏页页位图中的内存页拷贝到目的主机。本专利技术至少具有以下有益技术效果:通过计算内存变化频率的快慢自动调节迭代时间,从而减少脏数据的传输量,缩短迁移时间,提升了虚拟机动态迁移的效率。与原生预拷贝方案在KVM中进行比较,当内存压力小时,效率接近。当内存压力大,内存变化快时,有明显时间减少。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。图1为本专利技术提供的基于自动调节迭代时间的虚拟机内存迁移方法的实施例的示意性步骤框图;图2为本专利技术提供的基于自动调节迭代时间的虚拟机内存迁移方法的实施例的流程图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。需要说明的是,本专利技术实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本专利技术实施例的限定,后续实施例对此不再一一说明。基于上述目的,本专利技术实施例的第一个方面,提出了一种基于自动调节迭代时间的虚拟机内存迁移方法的实施例。图1示出的是本专利技术提供的基于自动调节迭代时间的虚拟机内存迁移方法的实施例的示意性步骤框图。如图1所示,本专利技术实施例包括如下步骤:S100、响应于虚拟机的内存页通过迭代方式第一轮迭代拷贝到目的主机,构建脏页页位图以及非脏页页位图,并将所有当前内存页存储在非脏页页位图中;S200、响应于虚拟机的内存页通过迭代方式新一轮迭代拷贝到目的主机,将上一轮迭代产生的脏页存储到脏页页位图,并删除非脏页页位图中脏页对应的内存页;S300、基于脏页计算上一轮迭代中内存变化频率,并根据内存变化频率自动调整迭代时间;S400、基于迭代时间,将脏页页位图和非脏页页位图中的内存数据传输到目的主机。首先,将迭代过程按照时间间隔进行划分,定义了两种内存页位图存储迁移过程中产生的脏页和非脏页的位置,脏页页位图dmap和非脏页页位图ndmap。其中,系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行。在本专利技术的一些实施例中,第一轮迭代ndmap配置为存储所有当前内存页,dmap为空。第二轮开始时计算上一轮迭代过程中产生的脏页,存储到dmap中。同时删除ndmap中的对应内存页。计算上一轮迭代过程中内存变化的频率,自动调整迭代时间。然后在迭代时间内传输dmap和ndmap中的本文档来自技高网...

【技术保护点】
1.一种基于自动调节迭代时间的虚拟机内存迁移方法,其特征在于,包括:/n响应于虚拟机的内存页通过迭代方式第一轮迭代拷贝到目的主机,构建脏页页位图以及非脏页页位图,并将所有当前所述内存页存储在所述非脏页页位图中;/n响应于所述虚拟机的所述内存页通过所述迭代方式新一轮迭代拷贝到所述目的主机,将上一轮所述迭代产生的所述脏页存储到所述脏页页位图,并删除所述非脏页页位图中所述脏页对应的所述内存页;/n基于所述脏页计算上一轮所述迭代中内存变化频率,并根据所述内存变化频率自动调整所述迭代时间;/n基于所述迭代时间,将所述脏页页位图和所述非脏页页位图中的内存数据传输到所述目的主机。/n

【技术特征摘要】
1.一种基于自动调节迭代时间的虚拟机内存迁移方法,其特征在于,包括:
响应于虚拟机的内存页通过迭代方式第一轮迭代拷贝到目的主机,构建脏页页位图以及非脏页页位图,并将所有当前所述内存页存储在所述非脏页页位图中;
响应于所述虚拟机的所述内存页通过所述迭代方式新一轮迭代拷贝到所述目的主机,将上一轮所述迭代产生的所述脏页存储到所述脏页页位图,并删除所述非脏页页位图中所述脏页对应的所述内存页;
基于所述脏页计算上一轮所述迭代中内存变化频率,并根据所述内存变化频率自动调整所述迭代时间;
基于所述迭代时间,将所述脏页页位图和所述非脏页页位图中的内存数据传输到所述目的主机。


2.根据权利要求1所述的基于自动调节迭代时间的虚拟机内存迁移方法,其特征在于,所述内存变化频率的大小为变化的所述内存页的页数乘以变化的所述内存页的页面大小并除以所述迭代时间。


3.根据权利要求1所述的基于自动调节迭代时间的虚拟机内存迁移方法,其特征在于,所述基于所述脏页计算上一轮所述迭代中内存变化频率,并根据所述内存变化频率自动调整所述迭代时间还包括:
响应于所述内存变化频率大于预设速率,减小所述迭代时间;
响应于所述内存变化频率小于所述预设速率,增大所述迭代时间。


4.根据权利要求3所述的基于自动调节迭代时间的虚拟机内存迁移方法,其特征在于,所述预设速率为网络传输速率的一半。


5.根据权利要求1所述的基于自动调节迭代时间的虚拟机内存迁移方法,其特征在于,还包括:响应于所述内存变化频率大于所述网络传输速率或所述非脏页页位图为空,停止所述迭代,使所述虚拟机停机并将所述脏页页位图和所述非脏页页位图中的内存页拷贝到所述目的主机。
...

【专利技术属性】
技术研发人员:侯德龙
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1