弹性计算动态分配方法与流程

文档序号:11917968阅读:1313来源:国知局
弹性计算动态分配方法与流程

本发明涉及云计算领域,尤其涉及一种弹性计算动态分配方法。



背景技术:

云计算是一种通过网络将基础设施作为资源对外提供的全新资源提供方式。云计算技术的核心问题就是平台的资源管理,其目标就是通过资源的合理调度,使云计算平台能够高效的处理用户任务。在云计算环境中,面对海量的任务需求时,会出现资源分配不合理的情况。因此,云计算需要负载均衡这一关键机制来解决其服务器资源中分配任务的问题,以达到优化资源使用率,增大数据处理能力的目标。合理的负载均衡框架和方法是提高云计算平台运行效率的重要因素。

云计算平台架构大多为主节点集中对从节点进行管理的模式,早期的负载均衡策略均部署在云计算平台的主节点上,该方法被称为集中式负载均衡方法。集中式负载均衡方法具有部署简单、效率高、便于维护等优点。然而,主节点也成为了平台性能的瓶颈,尤其是用户任务需求量大、从节点数量多的情况下主节点极易瘫痪。

根据云计算平台的特点,负载均衡方法可以从任务调度和资源分配两方面进行研究。资源分配方法主要集中在如何根据物理节点的运行状况动态地部署和迁移虚拟机。任务调度策略则根据任务分配时当前的虚拟机负载情况,加上一些先验知识进行调度,此类方法的优点是负载均衡所需的系统额外开销小。



技术实现要素:

为了克服现有技术的不足,本发明的目的在于提供一种弹性计算动态分配方法,其能实现资源弹性调配的灵活配置及保证资源分配时不出现云平台服务性能问题的优点。

本发明的目的采用以下技术方案实现:

一种弹性计算动态分配方法,其特征在于,包括以下步骤:

步骤1、当检测到系统负载失衡时,选择负载最重的一台物理主机作为待处理物理主机;

步骤2、选择该待处理物理主机上的虚拟机,并将选择的虚拟机迁移到目标物理主机上,具体为获取该待处理物理主机上的所有虚拟机的VCPU性能数据,并将该VCPU性能数据进行降序排列,将VCPU使用率最大的虚拟机迁移到CPU使用率最小的一台物理主机上,然后按照VCPU性能数据排列依次对该待处理物理主机上的虚拟机进行迁移;

步骤3、当上述步骤1中的待处理物理主机负载低于阀值或没有虚拟机能迁移出去时,则选择下一台负载超过阀值的物理主机作为候选物理主机,并返回步骤1。

优选的,上述步骤1中选择负载最重的一台物理主机作为待处理物理主机,采用贪婪算法对物理主机的负载进行计算。

优选的,上述步骤1中系统负载失衡,选择负载最重的一台物理主机作为待处理物理主机为:

对于启用了资源弹性调配的资源池中的物理主机,性能指标超过阈值时,根据物理主机的历史性能评估资源的指标来计算平均值,具体为:设定配置界面中的触发时间间隔为T,采用下列公式计算历史平均利用率指标:

AVG(used)=A×Wa+B×Wb+C×Wc,

其中,A为超出阀值时间段平均值,B为超出阀值时间段前T段时间内的平均值,C为超出阀值时间段前24+T段时间内平均值,Wa,Wb,Wc分别为A,B,C对应的权重值。

优选的,所述步骤2中选择该待处理物理主机上的虚拟机,具体为:综合考虑该虚拟机对CPU的使用率和内存的占用情况,如果CPU和内存均超出阀值,则优先计算CPU,同时考虑内存;如果只有内存超过阀值,则只计算内存。

优选的,虚拟机对CPU的使用率计算方法如下:

虚拟机i占物理主机CPU的比重为:

其中,C(t)为物理主机在t时间段的CPU平均利用率,W为当前虚拟机的权重,N为当前虚拟机的CPU个数,W(i)为虚拟机i的权重,N(i)为虚拟机i的CPU个数,j为物理主机上的运行虚拟机的个数;

虚拟机i迁移后,物理主机CPU使用率变为:

C(c)n+1=C(c)n-C(i),

其中,C(c)n为第n次变化的CPU使用率的值,当n=0时,C(c)n=C(t)。

优选的,所述目标物理主机的选择具体采用热点平衡公式进行选择,所述热点平衡公式为:

Ni=1/(1-C(c))*1/(1-M(i)),

其中,C(i)为预测虚拟机迁移到待选目标物理主机之后,待选目标物理主机的CPU利用率;C(c)为变化的CPU使用率的值;M(i)为被迁移虚拟机i的内存;Ni值越小,表明目标物理主机的CPU和内存的均衡使用率低,性能越好。

相比现有技术,本发明的有益效果在于:

本技术方案可以根据自设定的迁移策略,动态地实现了虚拟机的在线迁移,以实现资源弹性调配的目的。

本技术方案着重于迁移策略、选择策略以及定位策略的制定,计算出虚拟机合适的迁移结果,以此实现资源弹性调配。

迁移的初期,服务在源主机运行。当迁移进行到一定阶段,目的主机已经具备了运行系统的必须资源。经过一个非常短暂的切换,源主机将控制权转移到目的主机,服务在目的主机上继续运行。由于切换的时间非常短暂,因而用户感觉不到服务的中断,在优化资源利用率的同时还保证系统的可靠性。

附图说明

图1为本发明实施中弹性计算动态分配方法的流程图;

图2为本发明实施中被迁移虚拟机的选择流程;

图3为本发明实施中目标物理主机的定位流程。

具体实施方式

下面,结合附图以及具体实施方式,对本发明做进一步描述:

本发明公开一种弹性计算动态分配方法,用户可以灵活配置自动负载动态分配策略,包括CPU和内存的迁移阈值设置、背离性设置(可以设置其中两台虚拟机为背离属性,在自动负载动态分配迁移时,两台虚拟机分离性迁移始终不会自动迁移运行在同一台物理机上)、聚合性设置(可以设置其中多台虚拟机为聚合属性,在自动负载动态分配迁移时,选定的多台虚拟机聚合性迁移始终会同步迁移运行在同一台物理机上),采用贪婪算法计算出迁移结果,最终根据结果迁移虚拟机到合适物理主机,直至所有物理主机的CPU和内存占用率彼此相差在20%以内。

资源弹性调配过程大致包括四个关键步骤:

1、迁移时机的确定(迁移策略):物理主机何时迁移最佳;

2、选择合适的迁移实体(选择策略):在一个被触发迁移的物理主机中可能有多个虚拟机,选择哪些虚拟机进行迁移能够使迁移开销最小、释放的资源能力更多,即被迁移虚拟机的选择;

3、选择合适的迁移目标(定位策略):在一个资源池中,物理主机的数量可能比较多,将虚拟机迁移到哪个物理主机的效果最好,即目标物理主机的定位;

4、在线迁移:拷贝系统状态至目标主机,最后在目标主机重建虚拟机状态,恢复执行。为了保证迁移过程中虚拟机服务的可用,迁移过程仅有非常短暂的停机时间。

如图1所示,一种弹性计算动态分配方法,其特征在于,包括以下步骤:

步骤1、当检测到系统负载失衡(C(t)>=C(threshold))时,选择负载最重的一台物理主机作为待处理物理主机,C(threshold)为CPU利用率迁移触发阈值,C(t)为被检测物理主机在t时间段的CPU平均利用率;

步骤2、选择该待处理物理主机上的虚拟机,并将选择的虚拟机迁移到目标物理主机上,具体为获取该待处理物理主机上的所有虚拟机的VCPU性能数据,并将该VCPU性能数据进行降序排列,将VCPU使用率最大的虚拟机迁移到CPU使用率最小的一台物理主机上,即选取VCPU使用率最大的虚拟机放到其他的物理主机上(CPU使用率低于阀值的物理主机),如能放下(需要考虑目标物理主机的CPU使用率是否不超过阀值,虚拟机的内存值是否不超过目标物理主机可用的内存容量),则选取其中CPU使用率最小的一台物理主机放置。然后按照VCPU性能数据排列依次对该待处理物理主机上的虚拟机进行迁移;

步骤3、当上述步骤1中的待处理物理主机负载低于阀值或没有虚拟机能迁移出去时,则选择下一台负载超过阀值的物理主机作为候选物理主机,并返回步骤1。

其中,选择负载最重的一台物理主机作为待处理物理主机,采用贪婪算法对物理主机的负载进行计算。

选择负载最重的一台物理主机作为待处理物理主机即迁移策略为:当CPU利用率超过设定的阈值(可由用户选定高,中,低三种阈值类型,每种阈值类型对应到具体一个数值范围)且持续一段时间才触发迁移,本专利设计了一种基于历史平均利用率水平机制的阈值触发策略。

对于启用了资源弹性调配的资源池中的物理主机,性能指标超过设置的阈值时,根据其历史性能评估资源的指标来计算平均值。设定配置界面中的【触发时间间隔】为T,评估了以下时间段内收集的资源利用率数据后,可计算历史平均利用率指标:

AVG(used)=A×Wa+B×Wb+C×Wc

其中,A,B,C分别为超出阀值时间段平均值,超出阀值时间段前T段时间内的平均值以及超出阀值时间段前24+T段时间内平均值;Wa,Wb,Wc分别为A,B,C对应的权重值。经过计算的CPU或内存,只要有一个超出阀值,就触发迁移。

步骤2中选择该待处理物理主机上的虚拟机,即选择策略如图2所示,一旦某个物理主机被触发迁移,必须选择该物理主机上的哪个虚拟机进行迁移,以达到迁移开销较小、释放资源较多等目的。

在选择迁移对象时,须综合考虑该虚拟机对CPU的使用率和内存的占用情况。虚拟机对内存的占用量越大,迁移所需拷贝的内存镜像就越大,迁移的系统消耗也越大,但同时,迁移也释放了原节点中更多的内存空间。

假设虚拟机i占物理主机CPU的比重为:

其中,C(t)为被检测物理主机在t时间段的CPU平均利用率,W为当前虚拟机的权重,N为当前虚拟机的CPU个数,W(i)为某个虚拟机i的权重,N(i)为虚拟机i的CPU个数,j为物理主机上的运行虚拟机的个数。

虚拟机i迁移后,物理主机CPU使用率变为:

C(c)n+1=C(c)n-C(i),

其中,C(c)n为第n次变化的CPU使用率的值。当n=0时,C(c)n=C(t)如果CPU、内存均超出阀值,优先计算CPU,同时考虑内存;如果只有内存超过阀值,只计算内存。

目标物理主机的选择即定位策略如图3所示:图3中Mavailable为待选物理主机可用内存;

虚拟机被选择迁移后,为了能够均衡物理主机中内存资源与CPU计算资源的使用,在选择目标主机的过程中,须考虑待迁移虚拟机与目标物理主机的(CPU消耗、内存消耗)的匹配程度,选择合适的目标物理主机接受被迁移的虚拟机。

热点平衡公式:

N i=1/(1-C(c))*1/(1-M(i))

其中,C(i)为预测虚拟机迁移到待选目标物理主机之后,待选目标物理主机的CPU利用率;M(i)为被迁移虚拟机i的内存;Ni值越小,表明CPU和内存的均衡使用率低,性能越好。

对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。

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