一种迁移时间确定方法、装置、设备及可读存储介质与流程

文档序号:19942662发布日期:2020-02-14 23:22阅读:206来源:国知局
一种迁移时间确定方法、装置、设备及可读存储介质与流程

本申请涉及计算机技术领域,特别涉及一种迁移时间确定方法、装置、设备及可读存储介质。



背景技术:

在现有技术中,由于业务需要或数据备份,虚拟机中的虚拟磁盘或者整个虚拟机需要进行迁移。通常情况下,运维人员利用专业知识和经验对业务需求、业务运行情况等因素进行判断和分析,可以确定迁移时间,但此方式依赖于运维人员的经验,掺杂了较多的人为主观因素,因此结果不够准确。并且,运维人员在分析和判断时,需要在相当长的时间内反复分析业务规律,从而增加了运维人员的工作量,降低了工作效率。

因此,如何准确确定迁移时间,降低运维人员的工作量,是本领域技术人员需要解决的问题。



技术实现要素:

有鉴于此,本申请的目的在于提供一种迁移时间确定方法、装置、设备及可读存储介质,以准确确定迁移时间,降低运维人员的工作量。其具体方案如下:

第一方面,本申请提供了一种迁移时间确定方法,包括:

针对虚拟机中的任一个虚拟磁盘,利用矩阵记录虚拟磁盘在不同时刻存储的数据,获得不同时刻对应的数据矩阵;其中,相邻时刻之间的时间长度相等;

确定相邻时刻的数据矩阵的差值,获得多个差值矩阵;

计算每个差值矩阵记录的数据变化量,并将最小数据变化量对应的差值矩阵确定为目标矩阵;

将目标矩阵所属的时间段确定为虚拟磁盘的迁移时间。

优选地,计算每个差值矩阵记录的数据变化量,包括:

将每个差值矩阵中不为零的元素修改为目标值,获得与每个差值矩阵对应的二值表;

计算任一个二值表中的所有目标值的总和,将总和确定为当前二值表记录的数据变化量,当前二值表记录的数据变化量为当前二值表对应的差值矩阵记录的数据变化量。

优选地,将目标矩阵所属的时间段确定为虚拟磁盘的迁移时间之后,包括:

生成包含迁移时间的推荐报告,并将推荐报告发送至预设管理端进行展示,以便用户按照推荐报告设置虚拟磁盘的迁移信息。

优选地,还包括:

按照用户设置的迁移信息在迁移时间执行虚拟磁盘的迁移操作。

优选地,还包括:

计算虚拟机在迁移时间的第一数据变化总量;

若第一数据变化总量小于预设阈值,则将迁移时间确定为虚拟机的迁移时间。

优选地,将迁移时间确定为虚拟机的迁移时间之前,还包括:

计算虚拟机在其他时间段的第二数据变化总量;其他时间段与迁移时间的时长相等;

判断第二数据变化总量是否小于第一数据变化总量;

若是,则将其他时间段确定为虚拟机的迁移时间;

若否,则执行将迁移时间确定为虚拟机的迁移时间的步骤。

优选地,还包括:

若第一数据变化总量不小于预设阈值,则生成包含第一数据变化总量和迁移时间的推荐报告,并将推荐报告发送至预设管理端进行展示。

第二方面,本申请提供了一种迁移时间确定装置,包括:

记录模块,用于针对虚拟机中的任一个虚拟磁盘,利用矩阵记录虚拟磁盘在不同时刻存储的数据,获得不同时刻对应的数据矩阵;其中,相邻时刻之间的时长相等;

第一确定模块,用于确定相邻时刻的数据矩阵的差值,获得多个差值矩阵;

计算模块,用于计算每个差值矩阵记录的数据变化量,并将最小数据变化量对应的差值矩阵确定为目标矩阵;

第二确定模块,用于将目标矩阵所属的时间段确定为虚拟磁盘的迁移时间。

第三方面,本申请提供了一种迁移时间确定设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序,以实现前述公开的迁移时间确定方法。

第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,计算机程序被处理器执行时实现前述公开的迁移时间确定方法。

通过以上方案可知,本申请提供了一种迁移时间确定方法,包括:针对虚拟机中的任一个虚拟磁盘,利用矩阵记录虚拟磁盘在不同时刻存储的数据,获得不同时刻对应的数据矩阵;其中,相邻时刻之间的时间长度相等;确定相邻时刻的数据矩阵的差值,获得多个差值矩阵;计算每个差值矩阵记录的数据变化量,并将最小数据变化量对应的差值矩阵确定为目标矩阵;将目标矩阵所属的时间段确定为虚拟磁盘的迁移时间。

可见,该方法利用矩阵记录虚拟磁盘在不同时刻存储的数据,从而可获得不同时刻对应的数据矩阵;将相邻时刻的数据矩阵的差值确定为差值矩阵;每个差值矩阵记录的数据变化量就是虚拟磁盘在每个相邻时刻内的数据变化量,那么最小数据变化量对应的差值矩阵所属的时间段就是虚拟磁盘数据变化量最小的时间段,因此将此时间段确定为虚拟磁盘的迁移时间。可见,本申请根据虚拟磁盘中客观存储的数据准确地计算出了虚拟磁盘数据变化量最小的时间段,提高了确定迁移时间的准确率和计算效率,将此时间段确定为迁移时间,可降低虚拟磁盘迁移对虚拟机业务的影响;同时,本申请无需运维人员对虚拟机业务情况进行判断和分析,从而降低了运维人员的工作量,也提高了工作效率。

相应地,本申请提供的一种迁移时间确定装置、设备及可读存储介质,也同样具有上述技术效果。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请公开的第一种迁移时间确定方法流程图;

图2为本申请公开的第二种迁移时间确定方法流程图;

图3为本申请公开的一种迁移时间确定装置示意图;

图4为本申请公开的一种迁移时间确定设备示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

目前,现有技术依赖于运维人员的经验,掺杂了较多的人为主观因素,因此结果不够准确。并且,运维人员在分析和判断时,需要在相当长的时间内反复分析业务规律,从而增加了运维人员的工作量,降低了工作效率。为此,本申请提供了一种迁移时间确定方案,能够准确确定迁移时间,降低运维人员的工作量。

参见图1所示,本申请实施例公开了第一种迁移时间确定方法,包括:

s101、针对虚拟机中的任一个虚拟磁盘,利用矩阵记录虚拟磁盘在不同时刻存储的数据,获得不同时刻对应的数据矩阵;

其中,相邻时刻之间的时间长度相等。

s102、确定相邻时刻的数据矩阵的差值,获得多个差值矩阵;

s103、计算每个差值矩阵记录的数据变化量,并将最小数据变化量对应的差值矩阵确定为目标矩阵;

s104、将目标矩阵所属的时间段确定为虚拟磁盘的迁移时间。

在一种具体实施方式中,计算每个差值矩阵记录的数据变化量,包括:将每个差值矩阵中不为零的元素修改为目标值,获得与每个差值矩阵对应的二值表;计算任一个二值表中的所有目标值的总和,将总和确定为当前二值表记录的数据变化量,当前二值表记录的数据变化量为当前二值表对应的差值矩阵记录的数据变化量。

例如:利用矩阵记录虚拟磁盘在t1、t2、和t3时刻存储的数据,从而可获得t1、t2、和t3时刻分别对应的数据矩阵:d1、d2和d3。假设:

因此,相邻时刻的数据矩阵的差值为:

其中,f1和f2为差值矩阵。将f1和f2中不为零的元素修改为目标值,目标值可为任意值,假设目标值为1,那么等于1的元素保持不变,则有:

其中,b1即为f1对应的二值表,b2即为f2对应的二值表。

进一步地,计算任一个二值表中的所有目标值的总和,那么第一个二值表(b1)记录的数据变化量s(b1)=2,第二个二值表(b2)记录的数据变化量s(b2)=3,因此s(b1)即为最小数据变化量,那么f1即为目标矩阵,其所属的t1~t2时间段即为虚拟磁盘的迁移时间。

在一种具体实施方式中,将目标矩阵所属的时间段确定为虚拟磁盘的迁移时间之后,包括:生成包含迁移时间的推荐报告,并将推荐报告发送至预设管理端进行展示,以便用户按照推荐报告设置虚拟磁盘的迁移信息,这样便可按照用户设置的迁移信息在迁移时间执行虚拟磁盘的迁移操作。

可见,本申请实施例利用矩阵记录虚拟磁盘在不同时刻存储的数据,从而可获得不同时刻对应的数据矩阵;将相邻时刻的数据矩阵的差值确定为差值矩阵;每个差值矩阵记录的数据变化量就是虚拟磁盘在每个相邻时刻内的数据变化量,那么最小数据变化量对应的差值矩阵所属的时间段就是虚拟磁盘数据变化量最小的时间段,因此将此时间段确定为虚拟磁盘的迁移时间。可见,本申请根据虚拟磁盘中客观存储的数据准确地计算出了虚拟磁盘数据变化量最小的时间段,提高了确定迁移时间的准确率和计算效率,将此时间段确定为迁移时间,可降低虚拟磁盘迁移对虚拟机业务的影响;同时,本申请无需运维人员对虚拟机业务情况进行判断和分析,从而降低了运维人员的工作量,也提高了工作效率。

参见图2所示,本申请实施例公开了第二种迁移时间确定方法,包括:

s201、计算虚拟机在迁移时间的第一数据变化总量;

s202、判断第一数据变化总量是否小于预设阈值;若是,则执行s203;若否,则执行s207;

s203、计算虚拟机在其他时间段的第二数据变化总量;

s204、判断第二数据变化总量是否小于第一数据变化总量;若是,则执行s205;若否,则执行s206;

s205、将其他时间段确定为虚拟机的迁移时间;

s206、将迁移时间确定为虚拟机的迁移时间;

s207、生成包含第一数据变化总量和迁移时间的推荐报告,并将推荐报告发送至预设管理端进行展示。

按照上述实施例提供的方法可确定一个虚拟磁盘在不同时刻的数据变化量,若计算出每个虚拟磁盘在不同时刻的数据变化量,那么可计算得到不同磁盘在相同时间段内的数据变化总量。

在本实施例中,当第一数据变化总量小于预设阈值时,为了进一步降低虚拟机迁移给业务带来的影响,可进一步寻找比当前迁移时间内数据量变化更小的时间段(即其他时间段)。当其他时间段内的第二数据变化总量小于第一数据变化总量,则将其他时间段确定为虚拟机的迁移时间;当其他时间段内的第二数据变化总量不小于第一数据变化总量,则还是将虚拟磁盘的迁移时间确定为虚拟机的迁移时间,也就是虚拟磁盘和虚拟机一起执行迁移操作。

以上述示例为基础,假设虚拟机中的另一虚拟磁盘在t1~t2时间段的数据变化量为4,在t2~t3时间段的数据变化量为5,那么这两个虚拟磁盘在t1~t2时间段的数据变化总量为6,6即可看作第一数据变化总量。这两个虚拟磁盘在t2~t3时间段的数据变化总量为8,8即可看作第二数据变化总量。假设当前虚拟机仅包括两个虚拟磁盘。

其中,当第一数据变化总量不小于预设阈值,则生成包含第一数据变化总量和迁移时间的推荐报告,并将推荐报告发送至预设管理端进行展示,这样用户可以将推荐报告中的信息与当前业务的实际情况相结合,来确定是否进行虚拟机迁移操作。

需要说明的是,本实施例中的其他实现步骤与上述实施例相同或类似,故本实施例在此不再赘述。

由上可见,本实施例根据虚拟磁盘中客观存储的数据准确地计算出了虚拟磁盘数据变化量最小的时间段,并据此确定出了虚拟机的迁移时间,提高了确定迁移时间的准确率和计算效率,将此时间段确定为迁移时间,可降低虚拟机迁移对虚拟机业务的影响;同时,本申请无需运维人员对虚拟机业务情况进行判断和分析,从而降低了运维人员的工作量,也提高了工作效率。

本申请实施例公开了第三种迁移时间确定方法。具体为:设定场景为在线迁移,即在虚拟机开机状态下进行迁移时间的确定和相应的迁移操作。将虚拟机或其中的虚拟磁盘从存储集群a迁移到存储集群b,存储集群b可以为存储集群a的备份,也可以是用于替代存储集群a的集群。

具体的,假设有一段连续的时间:t1、t2、t3…tn,每个时刻的虚拟磁盘的数据记录为矩阵d1、d2、d3…dn。t1、t2、t3…tn中相邻时刻之间的时间长度相同。

计算相邻时刻的矩阵的差值,获得脏数据矩阵(即差值矩阵),则有:f1=d2-d1,f2=d3-d2,…fn-1=dn-dn-1

根据脏数据矩阵计算二值表:

iff1(i,j)=0,那么b1(i,j)=0,elseb1(i,j)=1;

iff2(i,j)=0,那么b2(i,j)=0,elseb2(i,j)=1;

iffn(i,j)=0,那么bn(i,j)=0,elsebn(i,j)=1。

其中,(i,j)表示二值表中每个元素的位置,即第i行第j列。f1(i,j)表示脏数据矩阵中第i行第j列的元素,b1(i,j)表示二值表中第i行第j列的元素。需要说明的是,计算脏数据矩阵时,用0表示相邻时刻数据无变化,用1表示相邻时刻数据有变化,因此直接可获得仅包括0和1的二值表。

将任一个二值表中的所有元素相加,可获得虚拟磁盘在各个时间段内的数据变化量,即:s1=sum(b1),s2=sum(b2)…sn=sum(bn)。具体计算方式请参见上述实施例的相关介绍。

比较不同时间段内的数据变化量,从而可确定数据变化量最小的时间段,这段时间也是虚拟机业务负载最低的时间段。

按照上述思想可确定一天(24小时)内业务负载最低的时间段,或一周(星期一至星期日)内业务负载最低的某一天,从而确定虚拟磁盘迁移时间段。

本实施例可自动确定虚拟磁盘迁移的时机,在虚拟机正常运行过程中,通过二值表矩阵采集并总结虚拟磁盘写操作规律,发现虚拟机业务负载最低的时间段,将其作为推荐时机上报给运维人员。运维人员基于此推荐向指定虚拟磁盘发起迁移命令,便可进行虚拟磁盘的迁移。当然,在确定迁移时间后,还可以自动触发相应的迁移操作。

可见,本实施例利用虚拟磁盘中客观存储的数据和二值表,能够为运维人员推荐最佳的虚拟机迁移时机,从而尽可能避免迁移操作给正常业务带来的影响,也提高了确定迁移时间的准确率和计算效率。

下面对本申请实施例提供的一种迁移时间确定装置进行介绍,下文描述的一种迁移时间确定装置与上文描述的一种迁移时间确定方法可以相互参照。

参见图3所示,本申请实施例公开了一种迁移时间确定装置,包括:

记录模块301,用于针对虚拟机中的任一个虚拟磁盘,利用矩阵记录虚拟磁盘在不同时刻存储的数据,获得不同时刻对应的数据矩阵;其中,相邻时刻之间的时长相等;

第一确定模块302,用于确定相邻时刻的数据矩阵的差值,获得多个差值矩阵;

计算模块303,用于计算每个差值矩阵记录的数据变化量,并将最小数据变化量对应的差值矩阵确定为目标矩阵;

第二确定模块304,用于将目标矩阵所属的时间段确定为虚拟磁盘的迁移时间。

在一种具体实施方式中,计算模块包括:

修改单元,用于将每个差值矩阵中不为零的元素修改为目标值,获得与每个差值矩阵对应的二值表;

计算单元,用于计算任一个二值表中的所有目标值的总和,将总和确定为当前二值表记录的数据变化量,当前二值表记录的数据变化量为当前二值表对应的差值矩阵记录的数据变化量。

在一种具体实施方式中,还包括:

第一生成模块,用于生成包含迁移时间的推荐报告,并将推荐报告发送至预设管理端进行展示,以便用户按照推荐报告设置虚拟磁盘的迁移信息。

在一种具体实施方式中,还包括:

迁移模块,用于按照用户设置的迁移信息在迁移时间执行虚拟磁盘的迁移操作。

在一种具体实施方式中,还包括:

第一数据变化总量计算模块,用于计算虚拟机在迁移时间的第一数据变化总量;

第三确定模块,用于将若第一数据变化总量小于预设阈值,则将迁移时间确定为虚拟机的迁移时间。

在一种具体实施方式中,还包括:

第二数据变化总量计算模块,用于计算虚拟机在其他时间段的第二数据变化总量;其他时间段与迁移时间的时长相等;

判断模块,用于判断第二数据变化总量是否小于第一数据变化总量;

第四确定模块,用于若第二数据变化总量小于第一数据变化总量,则将其他时间段确定为虚拟机的迁移时间;

第五确定模块,用于若第二数据变化总量不小于第一数据变化总量,则执行将迁移时间确定为虚拟机的迁移时间的步骤。

在一种具体实施方式中,还包括:

第二生成模块,用于若第一数据变化总量不小于预设阈值,则生成包含第一数据变化总量和迁移时间的推荐报告,并将推荐报告发送至预设管理端进行展示。

其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

可见,本实施例提供了一种迁移时间确定装置,该装置根据虚拟磁盘中客观存储的数据准确地计算出了虚拟磁盘数据变化量最小的时间段,并据此确定出了虚拟机的迁移时间,提高了确定迁移时间的准确率和计算效率,将此时间段确定为迁移时间,可降低虚拟机迁移对虚拟机业务的影响;同时,本申请无需运维人员对虚拟机业务情况进行判断和分析,从而降低了运维人员的工作量,也提高了工作效率。

下面对本申请实施例提供的一种迁移时间确定设备进行介绍,下文描述的一种迁移时间确定设备与上文描述的一种迁移时间确定方法及装置可以相互参照。

参见图4所示,本申请实施例公开了一种迁移时间确定设备,包括:

存储器401,用于保存计算机程序;

处理器402,用于执行所述计算机程序,以实现上述任意实施例公开的方法。

下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种迁移时间确定方法、装置及设备可以相互参照。

一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的迁移时间确定方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。

本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。

需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的可读存储介质中。

本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1