一种资源折算方法、系统及虚拟机资源调度系统与流程

文档序号:11216071阅读:560来源:国知局
一种资源折算方法、系统及虚拟机资源调度系统与流程

本发明涉及虚拟机技术领域,特别是涉及一种资源折算方法、系统及虚拟机资源调度系统。



背景技术:

随着计算机系统的高速发展,云计算的技术也在日渐成熟,各种类型的云应用以及云服务不断出现,对大规模服务器集群的计算资源提出了巨大的挑战,虚拟化drs(distributedresourcescheduler,分布式资源调度)技术作为一项应对这一挑战的课题被学术界和工业界广泛研究,drs中的相关技术也不断被提出。drs是虚拟机资源调度系统中最为重要的组成部分,集群系统可以通过drs动态的分配和平衡计算资源,可以跨资源池不间断地监控资源利用率,并根据业务需要在虚拟机之间动态、智能地分配和调整可用资源,还可根据需求实现负载均衡或整合服务的目标。

主机的计算资源主要包括cpu和内存,因此,在进行调度时需要同时考虑这两种不同资源的占用情况以进行调度控制,现有技术中的一些方法是利用固定的权重系数(例如两者的权重系数分别为0.5和0.5)来进行资源折算,只能对部分情况适用,在很多情况下由于没有考虑到当前cpu和内存的实际使用情况,造成主机资源折算这一阶段的精确度的降低,对于最终虚拟机的迁移调度具有一定的局限性。

因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。



技术实现要素:

本发明的目的是提供一种资源折算方法,提高了主机资源折算的精确度,有利于后续调度计算的判定,最终使得整个drs集群通过实时调度实现负载均衡;本发明的另一目的是提供一种资源折算系统及虚拟机资源调度系统。

为解决上述技术问题,本发明提供了一种资源折算方法,包括:

获取主机中当前的cpu资源消耗值、内存资源消耗、cpu资源消耗比例和内存资源消耗比例;

对所述cpu资源消耗值和所述内存资源消耗值统一数量级;

根据所述cpu资源消耗比例和所述内存资源消耗比例确定cpu的权重系数和内存的权重系数;

将统一数量级后的cpu资源消耗值和内存资源消耗值分别与各自对应的权重系数相乘后再相加,得到最终的资源折算值。

优选地,所述对所述cpu资源消耗值和所述内存资源消耗值统一数量级的过程具体为:

确定所述cpu资源消耗值和所述内存资源消耗值中的较大值和较小值;

利用所述较大值除以所述较小值得到结果a*10n,其中,1≤a<10,n为整数;

当a小于5时,将所述较大值除以10n,得到统一后的较大值,所述较小值作为统一后的较小值;否则,将所述较大值除以10n+1,得到统一后的较大值,所述较小值作为统一后的较小值。

优选地,所述根据所述cpu资源消耗比例和所述内存资源消耗比例确定cpu的权重系数和内存的权重系数的过程具体为:

根据所述cpu资源消耗比例和所述内存资源消耗比例的比值确定cpu的权重系数和内存的权重系数;

其中,所述cpu资源消耗比例:所述内存资源消耗比例=cpu的权重系数:内存的权重系数;

且,cpu的权重系数+内存的权重系数=1。

为解决上述技术问题,本发明还提供了一种资源折算系统,包括:

获取单元,用于获取主机中当前的cpu资源消耗值、内存资源消耗、cpu资源消耗比例和内存资源消耗比例;

数量级统一单元,用于对所述cpu资源消耗值和所述内存资源消耗值统一数量级;

权重系数获取单元,用于根据所述cpu资源消耗比例和所述内存资源消耗比例确定cpu的权重系数和内存的权重系数;

资源折算单元,用于将统一数量级后的cpu资源消耗值和内存资源消耗值分别与各自对应的权重系数相乘后再相加,得到最终的资源折算值。

优选地,所述数量级统一单元具体用于:

确定所述cpu资源消耗值和所述内存资源消耗值中的较大值和较小值;

利用所述较大值除以所述较小值得到结果a*10n,其中,1≤a<10,n为整数;

当a小于5时,将所述较大值除以10n,得到统一后的较大值,所述较小值作为统一后的较小值;否则,将所述较大值除以10n+1,得到统一后的较大值,所述较小值作为统一后的较小值。

优选地,所述权重系数获取单元具体用于:

根据所述cpu资源消耗比例和所述内存资源消耗比例的比值确定cpu的权重系数和内存的权重系数;

其中,所述cpu资源消耗比例:所述内存资源消耗比例=cpu的权重系数:内存的权重系数;

且,cpu的权重系数+内存的权重系数=1。

为解决上述技术问题,本发明还提供了一种虚拟机资源调度系统,包括如上述所述的资源折算系统。

本发明提供了一种资源折算方法,包括获取主机中当前的cpu资源消耗值、内存资源消耗、cpu资源消耗比例和内存资源消耗比例;对cpu资源消耗值和内存资源消耗值统一数量级;根据cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数;将统一数量级后的cpu资源消耗值和内存资源消耗值分别与各自对应的权重系数相乘后再相加,得到最终的资源折算值。

可见,与现有技术中采用固定权重系数相比,本申请中首先对cpu资源消耗值和内存资源消耗进行数量级统一,避免造成数据落差,调高了主机资源折算的精确度;另外,本申请是根据cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数,从而能够与实时变化的cpu资源消耗比例和内存资源消耗比例相适应,普适性好,进一步提高了主机资源折算的精确度,更加有利于后续调度计算的判定,最终使得整个drs集群通过实时调度实现负载均衡。

本发明提供的一种资源折算系统及虚拟机资源调度系统同样具有如上效果。

附图说明

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

图1为本发明提供的一种资源折算方法的过程流程图;

图2为本发明提供的一种资源折算系统的结构示意图。

具体实施方式

本发明的核心是提供一种资源折算方法,提高了主机资源折算的精确度,有利于后续调度计算的判定,最终使得整个drs集群通过实时调度实现负载均衡;本发明的另一核心是提供一种资源折算系统及虚拟机资源调度系统。

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

请参照图1,图1为本发明提供的一种资源折算方法的过程流程图,该方法包括:

步骤s11:获取主机中当前的cpu资源消耗值、内存资源消耗、cpu资源消耗比例和内存资源消耗比例;

具体地,主机中的cpu资源消耗值和内存资源消耗值通常是变化的,也因此,现有技术中采用固定的权重系数只能使得部分cpu资源消耗值和内存资源消耗值最终的折算结果准确,在很多情况下的准确度是比较低的。

另外,这里的cpu资源消耗比例指的是该cpu资源消耗值占据主机中所有cpu资源消耗值的比例,内存资源消耗比例指的是该内存占据主机中所有内存资源消耗值的比例。

基于此,为提高这种资源折算结果的普适性,首先获取当前的cpu资源消耗值、内存资源消耗、cpu资源消耗比例和内存资源消耗比例用来后续的计算。

步骤s12:对cpu资源消耗值和内存资源消耗值统一数量级;

为了降低cpu资源消耗值和内存资源消耗值的数据落差,使得后续进行资源折算时,能够最大程度发挥权重系数的有效性,使得判定结果更加精准,本申请首先对cpu资源消耗值和内存资源消耗值进行数量级的统一。

步骤s13:根据cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数;

上述已提到,cpu资源消耗比例和内存资源消耗比例是实时动态变化的,资源消耗比例的变化影响着权重系数的变化,因此,本申请中通过实时获取到的cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数。

步骤s14:将统一数量级后的cpu资源消耗值和内存资源消耗值分别与各自对应的权重系数相乘后再相加,得到最终的资源折算值。

具体地,cpu资源消耗值*cpu的权重系数+内存资源消耗值*内存的权重系数即为最终的资源折算值。

本申请将cpu资源消耗值和内存资源消耗值折算成为一个值,通过降维的方式简化了分布式资源调度的判定过程,大大降低了运算消耗。且在具体计算时,通过统一数量级以及根据实时资源消耗比例来确定权重系数来进行资源折算,提高了调度判定的精确度。

本发明提供了一种资源折算方法,包括获取主机中当前的cpu资源消耗值、内存资源消耗、cpu资源消耗比例和内存资源消耗比例;对cpu资源消耗值和内存资源消耗值统一数量级;根据cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数;将统一数量级后的cpu资源消耗值和内存资源消耗值分别与各自对应的权重系数相乘后再相加,得到最终的资源折算值。

可见,与现有技术中采用固定权重系数相比,本申请中首先对cpu资源消耗值和内存资源消耗进行数量级统一,避免造成数据落差,调高了主机资源折算的精确度;另外,本申请是根据cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数,从而能够与实时变化的cpu资源消耗比例和内存资源消耗比例相适应,普适性好,进一步提高了主机资源折算的精确度,更加有利于后续调度计算的判定,最终使得整个drs集群通过实时调度实现负载均衡。

作为一种优选地实施例,对cpu资源消耗值和内存资源消耗值统一数量级的过程具体为:

确定cpu资源消耗值和内存资源消耗值中的较大值和较小值;

利用较大值除以较小值得到结果a*10n,其中,1≤a<10,n为整数;

当a小于5时,将较大值除以10n,得到统一后的较大值,较小值作为统一后的较小值;否则,将较大值除以10n+1,得到统一后的较大值,较小值作为统一后的较小值。

为方便对上述实施例的理解,下面列举一实例来作介绍:

这里假设cpu消耗5000mhz,内存消耗300g;

则在进行数量级统一时,首先确定二者中数值较大的值,则5000为较大值,300为较小值;

则5000/300≈1.67*101

由于a=1.67<5,则将较大值进行数量级统一化,因为cpu资源消耗值5000较大,因此,5000/101=500;

则最终统一后:cpu资源消耗值为500,内存资源消耗值为300。

通过数量级的统一,降低了数据落差,最大程度地发挥了权重系数的有效性,使得判定结果更加精准。

作为一种优选地实施例,根据cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数的过程具体为:

根据cpu资源消耗比例和内存资源消耗比例的比值确定cpu的权重系数和内存的权重系数;

其中,cpu资源消耗比例:内存资源消耗比例=cpu的权重系数:内存的权重系数;

且,cpu的权重系数+内存的权重系数=1。

具体地,本申请判定在主机中,存在着资源消耗比例越大,占的权重越大的关系。因此,在确定权重系数时,根据cpu资源消耗比例和内存资源消耗比例的比值来确定cpu和内存的权重系数,具体地,cpu资源消耗比例和内存资源消耗比例的比值等于cpu的权重系数和内存的权重系数的比值。又因为cpu的权重系数+内存的权重系数=1,则唯一确定cpu的权重系数和内存的权重系数。

具体地,以上一实施例为基准,这里假设cpu的资源消耗比例为20%,内存的资源消耗比例为60%,则cpu资源消耗比例:内存资源消耗比例=1:3,又由于二者权值之和为1,则可计算cpu的权重系数为0.25,内存的权重系数为0.75。

则最终的资源折算值为:

result=500*0.25+300*0.75=350。

当然,这里还可以采用其他方式来根据cpu资源消耗比例和内存资源消耗比例的比值确定cpu的权重系数和内存的权重系数,例如在根据比例确定权重系数后还考虑误差系数,采用误差系数对权重系数进行修正等,本申请在此不做特别的限定,根据实际情况来定。

请参照图2,图2为本发明提供的一种资源折算系统的结构示意图,该系统包括:

获取单元1,用于获取主机中当前的cpu资源消耗值、内存资源消耗、cpu资源消耗比例和内存资源消耗比例;

数量级统一单元2,用于对cpu资源消耗值和内存资源消耗值统一数量级;

权重系数获取单元3,用于根据cpu资源消耗比例和内存资源消耗比例确定cpu的权重系数和内存的权重系数;

资源折算单元4,用于将统一数量级后的cpu资源消耗值和内存资源消耗值分别与各自对应的权重系数相乘后再相加,得到最终的资源折算值。

作为一种优选地实施例,数量级统一单元2具体用于:

确定cpu资源消耗值和内存资源消耗值中的较大值和较小值;

利用较大值除以较小值得到结果a*10n,其中,1≤a<10,n为整数;

当a小于5时,将较大值除以10n,得到统一后的较大值,较小值作为统一后的较小值;否则,将较大值除以10n+1,得到统一后的较大值,较小值作为统一后的较小值。

作为一种优选地实施例,权重系数获取单元3具体用于:

根据cpu资源消耗比例和内存资源消耗比例的比值确定cpu的权重系数和内存的权重系数;

其中,cpu资源消耗比例:内存资源消耗比例=cpu的权重系数:内存的权重系数;

且,cpu的权重系数+内存的权重系数=1。

对于本发明提供的资源折算系统的介绍请参照上述实施例,本发明在此不再赘述。

为解决上述技术问题,本发明还提供了一种虚拟机资源调度系统,包括如上述的资源折算系统。

对于本发明提供的虚拟机资源调度系统的介绍请参照上述实施例,本发明在此不再赘述。

需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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