一种并序化云服务平台任务分配系统及任务分配方法与流程

文档序号:11138854阅读:345来源:国知局
一种并序化云服务平台任务分配系统及任务分配方法与制造工艺

本发明涉及云计算领域,特别涉及一种并序化云服务平台任务分配系统及任务分配方法。



背景技术:

云计算是继1980年代大型计算机到客户端-服务器的大转变之后的又一种巨变,是分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)、热备份冗余(High Available)等传统计算机和网络技术发展融合的产物。

云计算平台向用户提供可用的、便捷的、按需的网络访问。用户进入可配置的计算资源共享池(资源包括网络、服务器、存储、应用软件、服务),可以在投入很少的管理工作以及与服务供应端很少交互的情况下,快速获取上述资源。

其中,并序化云服务平台是指云平台上运行的虚拟机会以并行方式同时运行在多个物理节点上,从而满足虚拟机对于计算资源的弹性调整要求,使得虚拟机可以灵活的调整所占资源的大小,以及提高虚拟机可供支配的资源数量。

现有技术中,对云平台的任务分配方式一般只考虑各个节点的负载情况进行任务的分配,例如:专利文件CN105740077A公开了一种适用于云计算的任务分配方法,具体包括:

S101,建立第一负载表;

S102,计算各个节点的负载,然后按照负载从重到轻的顺序排列各个节点并将排列结果储存在所述第一负载表中;

S103,根据所述第一负载表,将第一个任务分配给第一个节点,将第二个任务分别给第二个节点,……,将第n个任务分配给第n个节点,其中第一个节点、第二个节点……第n个节点按照负载从重到轻的顺序排列;以及

S104,在一个轮询周期T之后更新所述第一负载表。

由于并序化云服务平台的虚拟机会不规则的分布在多个物理节点上,因此在任务分配时不能只考虑单个物理节点的负载情况;进一步的,由于每个物理节点的运算性能可能不一致,如果只单纯参考物理节点的负载情况有可能将对运算需求较大的任务分配到运算性能较差的物理节点上。



技术实现要素:

本发明的目的在于克服现有技术不足,提供一种并序化云服务平台任务分配系统及任务分配方法,在对并序化虚拟机进行任务分配时,会根据虚拟机各部分的负载情况、物理节点的负载情况及物理节点的性能进行任务分割并分配,使得运算任务可以合理的分配个虚拟机的各个部分。

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

第一方面,本发明提供了一种并序化云服务平台任务分配系统,包括:计算集群及云平台控制模块;

其中,所述云平台控制模块与所述计算集群相连,所述计算集群包括至少一个物理节点,所述物理节点上至少运行有一个虚拟机;

所述云平台控制模块用于获取所述物理节点的个数,各所述物理节点的硬件种数、及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及预设的硬件参数评分表构建物理节点硬件评分矩阵;

所述云平台控制模块还用于根据所述物理节点硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

所述云平台控制模块还用于获取所述虚拟机在各物理节点上的硬件参数及虚拟机在各个物理节点上的空闲率;

所述云平台控制模块还用于获取任务,并根据所获得的虚拟机在各物理节点上的硬件参数、所述空闲率、所述各个物理节点的权重评分及所述预设的参数对所获取到的任务进行分割,并将所分割后的任务分配给对应的所述虚拟机。

在本发明一实施例中,所述云平台控制模块包括硬件参数获取模块、物理节点评分模块、虚拟机评分模块、虚拟机负载获取模块;

所述硬件参数获取模块用于获取所述物理节点的个数,各所述物理节点的硬件种数、及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及所述预设的硬件参数评分表构建物理节点硬件评分矩阵;

所述物理节点评分模块用于根据所述物理节点硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

所述虚拟机评分模块用于获取所述虚拟机在各物理节点上的硬件参数,并根据所述预设的硬件参数评分表构建虚拟机硬件总评分矩阵;

所以虚拟机负载获取模块用于获取虚拟机在各个物理节点上的空闲率,并根据所获取到的空闲率构建虚拟机硬件空闲率矩阵;

所述云平台控制模块还用于根据所述物理节点权重评分矩阵、所述虚拟机硬件总评分矩阵及所述虚拟机硬件空闲率矩阵对对所获取到的任务进行分割,并将所分割后的任务分配给对应的所述虚拟机。

具体的,在本发明一实施例中,记所述物理节点的个数为n,每个物理节点包含的硬件参数种类为m,记所述硬件参数获取模块所构建的物理节点硬件参数矩阵为P,

其中,Pij代表第i个物理节点第j种硬件的参数,i∈[1,n],j∈[1,m]。

进一步的,在本发明一实施例中,所述硬件参数获取模块根据预设的硬件参数评分表获得所述硬件参数矩阵P中各硬件参数Pij对应的评分Psij

所述硬件参数获取模块根据所获得的硬件评分Psij构建物理节点硬件评分矩阵Ps,

其中,Psij代表第i个物理节点第j种硬件的评分,i∈[1,n],j∈[1,m]。

进一步的,在本发明一实施例中,记所述预设的硬件参数权重矩阵为U,

其中,Uj代表第j种硬件参数的权重,j∈[1,m]。

所述物理节点评分模块根据所述硬件评分矩阵Ps及所述硬件参数权重矩阵U构建物理节点权重评分矩阵Pvs,

其中,Pvsi代表第i个物理节点的权重评分,i∈[1,n]。

进一步的,在本发明一实施例中,记所述虚拟机评分模块根据所述预设的硬件参数评分表获得所述虚拟机在各物理节点上的硬件参数VMPij对应的评分为VMPSSij,VMPSSij代表虚拟机在物理节点i上第j种硬件参数的评分;

记所述虚拟机评分模块所构建的虚拟机硬件参数评分矩阵为VMPSS,

记所述虚拟机评分模块所构建的虚拟机硬件总评分VMPS,

其中,

进一步的,在本发明一实施例中,所述虚拟机负载获取模块用于获取的虚拟机在第i物理节点上的总负载率VMRi,所述虚拟机负载获取模块还用于根据所述总负载率VMRi构建虚拟机总负载率矩阵为VMR,i∈[1,n],n为物理节点的个数;

所述虚拟机负载获取模块还用于根据所述虚拟机总负载率矩阵VMR构建虚拟机硬件空闲率矩阵VMI,

其中,VMIi代表虚拟机在第i物理节点上的硬件空闲率,i∈[1,n]。

进一步的,在本发明一实施例中,所述虚拟机负载获取模块还用于获取虚拟机在物理节点i上第j种硬件的负载率记为VMRRij

所述虚拟机负载获取模块还用于根据所获取的虚拟机在各物理节点上各种硬件的负载率VMRRij构建虚拟机硬件负载率矩阵VMRR,

其中n为物理节点的个数,m为每个物理节点包含的硬件种类;

所述虚拟机负载获取模块还用于根据所述虚拟机硬件负载率矩阵VMRR及所述预设的硬件参数权重矩阵U构建虚拟机总负载率矩阵VMR,

其中,VMRi代表虚拟机在物理节点i上的硬件总负载率。

进一步的,在本发明一实施例中,所述云平台控制模块还包括任务分配权重计算模块及任务分配模块;

所述任务分配权重计算模块用于根据所述虚拟机硬件总评分矩阵、所述虚拟机硬件空闲率矩阵及所述物理节点权重评分矩阵构建虚拟机空闲硬件得分矩阵;

所述任务分配权重计算模块还用于根据所述虚拟机空闲硬件得分矩阵分别计算虚拟机在各物理节点上的任务分配权重;

所述任务分配模块用于获取任务;

所述任务分配模块还用于根据所述虚拟机在各物理节点上的任务分配权重对获取到的任务进行分割,并将所分割后的任务分配给对应的所述虚拟机。

进一步的,在本发明一实施例中,记所述虚拟机硬件空闲率矩阵为VMI、所述虚拟机硬件总评分矩阵为VMPS及所述物理节点权重评分矩阵为Pvs,记所述任务分配权重计算模块所构建的虚拟机空闲硬件得分矩阵为VMS,

VMS=(VMSi)n×1=VMI*VMPS*Pvs;

记所述任务分配权重计算模块根据所述虚拟机空闲硬件得分矩阵VMS分别计算各虚拟机任务分配权重为VMWi

其中,VMWi为虚拟机在第i物理节点上的任务分配权重,i∈[1,n],n为物理节点的个数;

所述任务分配模块根据所述虚拟机任务分配权重VMWi对任务进行分割;

获取第i物理节点上的虚拟机的物理地址,并根据所述物理地址将分割后的任务发送给对应的虚拟机。

在本发明一实施例中,所述基于负载平衡的并序化云服务系统还包括人机交互模块,所述人机模块交互模块与所述云平台控制模块相连;

所述人机交互模块用于提供预设的参数输入接口,并将所述预设的参数发送给所述云平台控制模块,所述云平台控制模块还用于接收所述预设的参数。

在本发明一实施例中,所述物理节点为计算机,所述物理节点的硬件包括但不限于CPU,内存,硬盘,主板。

在本发明一实施例中,所述基于负载平衡的并序化云服务系统还包括与所述计算集群相连的并序化模块;

所述并序化模块用于获取所述物理节点的个数,各所述物理节点的硬件种数、及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及预设的硬件参数评分表构建物理节点硬件评分矩阵;

所述并序化模块还用于根据所述硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

所述并序化模块还用于获取所述物理节点权重评分矩阵中权重评分最高的物理节点;

所述并序化模块还用于根据所预设的虚拟机的数量、预设的各所述虚拟机的硬件种数以及预设的各所述硬件的硬件参数构建虚拟机初始参数矩阵;

所述并序化模块还用于根据所述虚拟机初始参数矩阵分别计算所有预设的虚拟机的各硬件的初始硬件参数之和,并将所得各硬件的初始硬件参数之和与所述权重评分最高的物理节点对应硬件的硬件参数进行比较;

当所有预设的虚拟机的各硬件的初始硬件参数之和均不大于所述权重评分最高的物理节点对应硬件的硬件参数时,所述并序化模块还用于根据所述虚拟机初始参数矩阵在所述权重评分最高的物理节点上构建所有虚拟机。

具体的,记所述物理节点的个数为n、各所述物理节点的硬件种数m;

所述并序化模块获取的权重评分最高的物理节点为h1,h1∈[1,n];

记所述预设的虚拟机数量为k;记所述各虚拟机的硬件种数为m;记第q个虚拟机预设的第j种硬件参数为VMqj,q∈[1,k],j∈[1,m];

所述并序化模块构建的虚拟机初始参数矩阵为VM,

其中,VMqj代表第q个虚拟机第j种硬件的参数,q∈[1,k],j∈[1,m];

所述并序化模块计算的k个虚拟机预设的第j种硬件初始硬件参数之和为

记第h1个物理节点上第j种硬件参数为

当均满足时,

所述并序化模块根据所述虚拟机初始参数矩阵VM在权重评分最高的物理节点h1上构建k个虚拟机。

进一步的,在本发明一实施例中,当需要构建的所有所述虚拟机预设的其中一种初始硬件参数之和大于所述权重评分最高的物理节点上对应的硬件参数时;

所述并序化模块还用于根据所述虚拟机初始参数矩阵计算所述权重评分最高的物理节点上能够架设的最大虚拟机数量;

所述并序化模块还用于根据所述虚拟机初始参数矩阵及所述最大虚拟机数量在物理节点上构建相应数量的虚拟机。

具体的,在本发明一是实例中,当时;

记所述并序化模块计算物理节点h1上最多可构建的虚拟机个数为L1,L1∈[1,k);

其中,记L1个虚拟机预设的第j种硬件初始硬件参数之和为

L1满足

所述并序化模块根据所述虚拟机初始参数矩阵VM将第1个到第L1个虚拟机架设在物理节点h1上。

更进一步的,在本发明一实施例中,所述并序化模块还用于根据所述虚拟机初始参数矩阵及所述最大虚拟机数量在物理节点上构建相应数量的虚拟机后;

所述并序化模块还用于初始化循环次数,所述循环次数的初始值为零;

循环开始:

所述并序化模块还用于记录循环次数,令所述循环次数加一;

所述并序化模块还用于根据所述预设的虚拟机的数量及所述已构建的虚拟机数量计算还需要构建的虚拟机数量;

所述并序化模块还用于在所述物理节点权重评分矩阵中未被选取过的物理节点中选取权重评分最高的物理节点;

所述并序化模块还用于根据接收到的所述还需要构建的虚拟机数量,计算所述还需要构建的虚拟机预设的各种初始硬件参数之和,并与所述权重评分最高的物理节点上对应的硬件参数进行比较;

当需要构建的所有所述虚拟机预设的其中一种初始硬件参数之和大于所述权重评分最高的物理节点上对应的硬件参数时;

所述并序化模块还用于计算所述权重评分最高的物理节点上能够架设的最大虚拟机数量;

所述并序化模块还用于根据所述最大虚拟机数量及所述虚拟机初始参数矩阵在所述权重评分最高的所述物理节点上构建相应数量的虚拟机;

从循环开始处循环上述步骤;

当所述还需要构建的虚拟机的各硬件的初始硬件参数之和均不大于所述权重评分最高的物理节点对应硬件的硬件参数时,所述硬件资源计算模块向所述虚拟机构建模块发送构建指令;

所述并序化模块还用于根据所述虚拟机初始参数矩阵在所述权重评分最高的所述物理节点上构建所述还需构建的虚拟机;

停止循环。

第二方面,本发明还提供了一种并序化云服务平台任务分配方法,包括:

获取物理节点的个数、各所述物理节点的硬件种数,以及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及预设的硬件参数评分表构建物理节点硬件评分矩阵;

根据所述硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

获取虚拟机在各物理节点上的硬件参数,并根据所获得的硬件参数、预设的硬件参数评分表及所述硬件参数权重矩阵构建虚拟机硬件总评分矩阵;

获得虚拟机在各物理节点上的硬件空闲率,并构建虚拟机硬件空闲率矩阵;

根据所述虚拟机硬件总评分矩阵、所述虚拟机硬件空闲率矩阵及所述物理节点权重评分矩阵计算虚拟机的任务分配权重;

获取任务,并根据所述任务分配权重对所获取到任务进行分割,并将所分割后的任务分配给对应的虚拟机。

在本发明一实施例中,记所述物理节点的个数为n,每个物理节点包含的硬件参数种类为m,记所构建的物理节点硬件参数矩阵为P,

其中,Pij代表第i个物理节点第j种硬件的参数,i∈[1,n],j∈[1,m]。

进一步的,在本发明一实施例中,记所构建的物理节点硬件评分矩阵Ps具体为:

其中,Psij代表第i个物理节点第j种硬件的评分,i∈[1,n],j∈[1,m]。

进一步的,所述构建硬件评分矩阵Ps具体包括:

根据预设的硬件参数评分表获得所述硬件参数矩阵P中各硬件参数Pij对应的评分Psij

将所获得的硬件评分Psij构建成硬件评分矩阵Ps。

进一步的,在本发明一实施例中,记所述预设的硬件参数权重矩阵为U,

其中,Uj代表第j种硬件参数的权重,j∈[1,m]。

进一步的,在本发明一实施例中,记所述物理节点权重评分矩阵为Pvs,

其中,

其中,Pvsi代表第i个物理节点的权重评分评分,i∈[1,n]。

在本发明一实施例中,所述获取虚拟机在各物理节点上的硬件参数,并根据所获得的硬件参数、预设的硬件参数评分表及所述硬件参数权重矩阵构建虚拟机硬件总评分矩阵,具体包括:

获取虚拟机在各物理节点上的硬件参数;

根据所述预设的硬件参数评分表获得所述虚拟机在各物理节点上的硬件参数对应的评分,并构建虚拟机硬件参数评分矩阵;

根据所述虚拟机硬件参数评分矩阵构建虚拟机硬件总评分矩阵。

具体的,在本发明一实施例中,记所获取的虚拟机在物理节点i上第j种硬件的参数为VMPij,i∈[1,n],j∈[1,m];

其中,n为物理节点的个数,m为每个物理节点包含的硬件种类;

记根据所述预设的硬件参数评分表获得所述虚拟机在各物理节点上的硬件参数VMPij对应的评分为VMPSSij,VMPSSij代表虚拟机在物理节点i上第j种硬件参数的评分;

记所构建的虚拟机硬件参数评分矩阵为VMPSS,

记所构建的虚拟机硬件总评分VMPS,

其中,

进一步的,在本发明一实施例中,所述获得虚拟机在各物理节点上的硬件空闲率,并构建虚拟机硬件空闲率矩阵,具体包括:

获取虚拟机在各个物理节点上的总负载率,并构建虚拟机总负载率矩阵;

根据所述总负载率矩阵构建虚拟机硬件空闲率矩阵。

具体的,在本发明一实施例中,记第i物理节点上的总负载率VMRi,并根据所述总负载率VMRi构建虚拟机总负载率矩阵VMR;

根据总负载率矩阵VMR构建虚拟机在各物理节点上的硬件空闲率矩阵VMI,

其中,VMIi代表虚拟机在第i物理节点上的硬件空闲率,i∈[1,n],n为物理节点的个数。

进一步的,在本发明一实施例中,获取虚拟机在各个物理节点上的总负载率,并构建虚拟机总负载率矩阵,具体包括:

获取的虚拟机在各物理节点上各种硬件的负载率,并根据所获取的虚拟机在各物理节点上各种硬件的负载率构建虚拟机硬件负载率矩阵;

根据所述虚拟机硬件负载率矩阵及所述预设的硬件参数权重矩阵构建虚拟机总负载率矩阵V。

具体的,在本发明一实施例中,记虚拟机在物理节点i上第j种硬件的负载率为VMRRij

记根据所获取的虚拟机在各物理节点上各种硬件的负载率VMRRij构建虚拟机硬件负载率矩阵为VMRR,

其中n为物理节点的个数,m为每个物理节点包含的硬件种类;

记所述预设的硬件参数权重矩阵为U,

其中,Uj代表第j种硬件参数的权重,j∈[1,m];

记根据所述虚拟机硬件负载率矩阵VMRR及所述预设的硬件参数权重矩阵U构建虚拟机总负载率矩阵为VMR,

其中,VMRi代表虚拟机在物理节点i上的硬件总负载率。

进一步的,在本发明一实施例中,所述根据所述虚拟机硬件总评分矩阵、所述虚拟机硬件空闲率矩阵及所述物理节点权重评分矩阵计算虚拟机的任务分配权重,具体包括:

根据所述虚拟机硬件总评分矩阵、所述虚拟机硬件空闲率矩阵及所述物理节点权重评分矩阵构建虚拟机空闲硬件得分矩阵;

根据所述虚拟机空闲硬件得分矩阵分别计算虚拟机在各物理节点上的任务分配权重。

在本发明一实施例中,记所述虚拟机硬件空闲率矩阵为VMI、所述虚拟机硬件总评分矩阵为VMPS及所述物理节点权重评分矩阵为Pvs,记所构建的虚拟机空闲硬件得分矩阵为VMS,VMS=(VMSi)n×1=VMI*VMPS*Pvs;

根据所述虚拟机空闲硬件得分矩阵VMS计算虚拟机任务分配权重VMWi

其中,VMWi为虚拟机在第i物理节点上的任务分配权重,i∈[1,n],n为物理节点的个数。

在本发明一实施例中,所述获取任务,并根据所述任务分配权重VMWi对获取到任务进行分割,并分配给对应的虚拟机,具体包括:

获取任务,并根据所述任务分配权重VMWi对任务进行分割;

获取第i物理节点上的虚拟机的物理地址,并根据所述物理地址将分割后的任务发送给对应的虚拟机;

其中,i∈[1,n],n为物理节点的个数。

第三方面,本发明还提供了一种并序化云服务平台的构建方法,包括:

获取物理节点的个数、各所述物理节点的硬件种数,以及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及预设的硬件参数评分表构建物理节点硬件评分矩阵;

根据所述硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

获取所述物理节点权重评分矩阵中权重评分最高的物理节点;

根据所预设的虚拟机的数量、预设的各所述虚拟机的硬件种数以及预设的各所述硬件的硬件参数构建虚拟机初始参数矩阵;

根据所述虚拟机初始参数矩阵分别计算所有预设的虚拟机的各硬件的初始硬件参数之和,并将所得各硬件的初始硬件参数之和与所述权重评分最高的物理节点对应硬件的硬件参数进行比较;

当所有预设的虚拟机的各硬件的初始硬件参数之和均不大于所述权重评分最高的物理节点对应硬件的硬件参数时,根据所述虚拟机初始参数矩阵在所述权重评分最高的物理节点上构建所有虚拟机。

具体的,在本发明一实施例中,记所述物理节点的个数为n、各所述物理节点的硬件种数m;

记所述权重评分最高的物理节点为h1,h1∈[1,n];

记所述预设的虚拟机数量为k;记所述各虚拟机的硬件种数为m;记第q个虚拟机预设的第j种硬件参数为VMqj,q∈[1,k],j∈[1,m];

记所构建的虚拟机初始参数矩阵为VM,

其中,VMqj代表第q个虚拟机第j种硬件的参数,q∈[1,k],j∈[1,m];

记k个虚拟机预设的第j种硬件初始硬件参数之和为

记第h1个物理节点上第j种硬件参数为

当均满足时,

根据所述虚拟机初始参数矩阵VM在权重评分最高的物理节点h1上构建k个虚拟机。

进一步的,在本发明一实施例中,当需要构建的所有所述虚拟机预设的其中一种初始硬件参数之和大于所述权重评分最高的物理节点上对应的硬件参数时;

根据所述虚拟机初始参数矩阵计算所述权重评分最高的物理节点上能够架设的最大虚拟机数量;

根据所述虚拟机初始参数矩阵及所述最大虚拟机数量在物理节点h1上构建相应数量的虚拟机。

具体的,在本发明一实施例中,当时,

记所述物理节点负载计算模块计算物理节点h1上最多可构建的虚拟机个数为L1,L1∈[1,k);

记L1个虚拟机预设的第j种硬件初始硬件参数之和为

其中,L1满足

根据所述虚拟机初始参数矩阵VM将第1个到第L1个虚拟机架设在物理节点h1上。

更进一步的,在本发明一实施例中,当需要构建的所有所述虚拟机预设的其中一种初始硬件参数之和大于所述权重评分最高的物理节点上对应的硬件参数时,所述根据所述虚拟机初始参数矩阵及所述最大虚拟机数量在物理节点上构建相应数量的虚拟机后,还包括如下步骤:

初始化循环次数,所述循环次数的初始值为零;

循环开始:

循环次数加一;

根据所述预设的虚拟机的数量及已构建的虚拟机数量计算还需构建的虚拟机数量;

在所述物理节点权重评分矩阵中未被选取过的物理节点中重新选取权重评分最高的物理节点;

根据所述虚拟机初始参数矩阵计算还需构建的虚拟机的各硬件的初始硬件参数之和,并将所得各硬件的初始硬件参数之和与所述权重评分最高的物理节点对应硬件的硬件参数进行比较;

当所述还需要构建的虚拟机预设的其中一种初始硬件参数之和大于所述权重评分最高的物理节点上对应的硬件参数时;

获取所述权重评分最高的物理节点上最多可构建的虚拟机数量;

根据所述虚拟机初始参数矩阵及所述最多可构建的虚拟机数量在所述权重评分最高的物理节点上构建相应数量的虚拟机;

从循环开始处重复上述步骤;

当所述还需要构建的虚拟机预设的初始硬件参数之和均不大于所述权重评分最高的物理节点上对应的硬件参数时;

根据所述虚拟机初始参数矩阵在所述权重评分最高的物理节点上构建所有所述还需构建的虚拟机;

结束循环。

本发明的有益效果:

本发明所提供一种并序化云服务平台任务分配系统及任务分配方法,充分考虑到并序化云服务平台中虚拟机会不规则的分布在各个物理节点的情况,根据虚拟机各部分的负载、虚拟机各部分的硬件性能及对应物理节点的硬件性能,计算任务的分配权重,并按照所述分配权重进行任务分配,使得任务的分配科学合理,保证用户的发布的任务能够及时的获得执行,且尽可能的保证了任务的执行效率与计算资源负载之间的平衡关系。

附图说明

图1为本发明一实施例中的一种并序化云服务平台任务分配系统的结构示意图;

图2为本发明一实施例中的云平台控制模块的机构示意图;

图3为本发明另一实施例中的一种并序化云服务平台任务分配系统的结构示意图;

图4为本发明一实施例中的一种并序化云服务平台任务分配方法的流程图;

图5为本发明一实施例中的虚拟机硬件总评分矩阵构建方法的流程图;

图6为本发明一实施例中的虚拟机硬件空闲率矩阵构建方法的流程图;

图7为本发明一实施例中的总负载率矩阵构建方法的流程图;

图8为本发明一实施例中的任务分配权重计算方法的流程图。

具体实施方式

下面结合附图以及具体实施例对本发明做进一步说明,其中的示意性实施例以及说明仅用来解释本发明,但并不作为对本发明的限定。

第一方面,本发明提供了一种并序化云服务平台任务分配系统,如图1所示,包括:计算集群200及云平台控制模块100;

其中,云平台控制模块100与计算集群200相连,计算集群200包括至少一个物理节点,所述物理节点上至少运行有一个虚拟机;

云平台控制模块100用于获取所述物理节点的个数,各所述物理节点的硬件种数、及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及预设的硬件参数评分表构建物理节点硬件评分矩阵;

云平台控制模块100还用于根据所述物理节点硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

云平台控制模块100还用于获取所述虚拟机在各物理节点上的硬件参数及虚拟机在各个物理节点上的空闲率;

云平台控制模块100还用于获取任务,并根据所获得的虚拟机在各物理节点上的硬件参数、所述空闲率、所述各个物理节点的权重评分及所述预设的参数对所获取到的任务进行分割,并将所分割后的任务分配给对应的所述虚拟机。

在本发明一实施例中,如图2所示,云平台控制模块100包括硬件参数获取模块110、物理节点评分模块120、虚拟机评分模块130、虚拟机负载获取模块140、任务分配权重计算模块150及任务分配模块160;

其中,硬件参数获取模块110用于获取所述物理节点的个数,各所述物理节点的硬件种数、及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及所述预设的硬件参数评分表构建物理节点硬件评分矩阵;

硬件参数获取模块110还用于将所述物理节点硬件评分矩阵发送给物理节点评分模块120;

物理节点评分模块120用于根据所述物理节点硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

物理节点评分模块120还用于将所述物理节点权重评分矩阵发送给任务分配权重计算模块150

虚拟机评分模块130用于获取所述虚拟机在各物理节点上的硬件参数,并根据所述预设的硬件参数评分表构建虚拟机硬件总评分矩阵;

虚拟机评分模块130还用于将所述虚拟机硬件总评分矩阵发送给任务分配权重计算模块150;

虚拟机负载获取模块140用于获取虚拟机在各个物理节点上的空闲率,并根据所获取到的空闲率构建虚拟机硬件空闲率矩阵;

虚拟机负载获取模块140还用于将所述虚拟机硬件空闲率矩阵发送给任务分配权重计算模块150;

任务分配权重计算模块150用于根据所述虚拟机硬件总评分矩阵、所述虚拟机硬件空闲率矩阵及所述物理节点权重评分矩阵构建虚拟机空闲硬件得分矩阵;

任务分配权重计算模块150还用于根据所述虚拟机空闲硬件得分矩阵分别计算虚拟机在各物理节点上的任务分配权重,并将所述任务分配权重发送给任务分配模块160;

任务分配模块160用于获取任务,并根据所述任务分配权重对任务进行分割;

任务分配模块160还用于获取虚拟机的物理地址,并根据所述物理地址将分割后的任务发送给对应的虚拟机。

具体的,在本发明一实施例中,记所述物理节点的个数为n,每个物理节点包含的硬件参数种类为m;

记硬件参数获取模块110所构建的物理节点硬件参数矩阵为P,

其中,Pij代表第i个物理节点第j种硬件的参数,i∈[1,n],j∈[1,m]。

进一步的,在本发明一实施例中,所述构建硬件评分矩阵Ps具体包括:

硬件参数获取模块110根据预设的硬件参数评分表获得所述硬件参数矩阵P中各硬件参数Pij对应的评分Psij

硬件参数获取模块110将所获得的硬件评分Psij构建成硬件评分矩阵Ps;

硬件参数获取模块110所构建的硬件评分矩阵Ps具体为:

其中,Psij代表第i个物理节点第j种硬件的评分,i∈[1,n],j∈[1,m]。

具体的,在本发明一实施例中,记所述预设的硬件参数权重矩阵为U,

其中,Uj代表第j种硬件参数的权重,j∈[1,m];

记物理节点评分模块120根据所述硬件评分矩阵Ps及所构建的硬件参数权重矩阵U构建物理节点权重评分矩阵为Pvs,

其中,Pvsi代表第i个物理节点的权重评分评分,i∈[1,n]。

具体的,在本发明一实施例中,记虚拟机评分模块130获取的虚拟机在物理节点i上第j种硬件的参数为VMPij,i∈[1,n],j∈[1,m];

其中n为物理节点的个数,m为每个物理节点包含的硬件种类;

记虚拟机评分模块130于根据预设的硬件参数评分表获得所述虚拟机在各物理节点上的硬件参数VMPij对应的评分为VMPSSij,VMPSSij代表虚拟机在物理节点i上第j种硬件参数的评分;

记虚拟机评分模块130构建的虚拟机硬件参数评分矩阵为VMPSS,

虚拟机评分模块130还用于根据所述虚拟机硬件参数评分矩阵VMPSS,计算虚拟机在物理节点i上的硬件总评分VMPSi,并构建虚拟机硬件总评分VMPS

其中,

具体的,在本发明一实施例中,记虚拟机负载获取模块140获取的虚拟机在第i物理节点上的总负载率为VMRi,记虚拟机负载获取模块140根据所述总负载率VMRi构建虚拟机总负载率矩阵为VMR;

记虚拟机负载获取模块140根据总负载率矩阵VMR构建的虚拟机硬件空闲率矩阵为VMI,

其中,VMIi代表虚拟机在第i物理节点上的硬件空闲率,i∈[1,n],n为物理节点的个数。

进一步的,在本发明一实施例中,虚拟机负载获取模块140还用于获取的虚拟机在物理节点i上第j种硬件的负载率记为VMRRij

虚拟机负载获取模块140还用于根据所获取的虚拟机在各物理节点上各种硬件的负载率VMRRij构建虚拟机硬件负载率矩阵VMRR,

其中n为物理节点的个数,m为每个物理节点包含的硬件种类;

虚拟机负载获取模块140还用于根据所述虚拟机硬件负载率矩阵VMRR及所述预设的硬件参数权重矩阵U构建虚拟机在各物理节点上的总负载率矩阵VMR,

其中,VMRi代表虚拟机在物理节点i上的硬件总负载率。

具体的,在本发明一实施例中,记任务分配权重计算模块150根据所述虚拟机硬件空闲率VMI、所述虚拟机硬件评分VMPS及所述物理节点权重评分矩阵Pvs构建虚拟机空闲硬件得分矩阵为VMS,

VMS=(VMSi)n×1=VMI*VMPS*Pvs,i∈[1,n],n为物理节点的个数;

任务分配权重计算模块150还用于根据所述虚拟机空闲硬件得分矩阵VMS计算虚拟机任务分配权重VMWi

其中,VMWi为虚拟机在第i物理节点上的任务分配权重。

具体的,在本发明一实施例中,任务分配模块160根据所述虚拟机任务分配权重VMWi对任务进行分割;

获取第i物理节点上的虚拟机的物理地址,并根据所述物理地址将分割后的任务发送给对应的虚拟机。

在本发明另一实施例中,如图3所示,本发明所提供的一种并序化云服务平台任务分配系统还包括人机交互模块300;

人机模块交互模块300与云平台控制模块100相连;

人机交互模块300用于提供预设的参数输入接口,并将所述预设的参数发送给云平台控制模块100,云平台控制模块100还用于接收所述预设的参数;

用户可以通过人机交互模块300输入和/或修改所述预设的参数。

在本发明一实施例中,所述基于负载平衡的并序化云服务系统还包括外部存储模块,计算集群200还可通过网络与所述外部存储模块相连,所述外部存储模块用于存储所述计算集群的数据。

在本发明一实施例中,所述物理节点为计算机,所述物理节点的硬件包括但不限于CPU,内存,硬盘,主板。

第二方面,本发明还提供了一种并序化云服务平台任务分配方法,如图4所示包括:

S100:获取物理节点的个数、各所述物理节点的硬件种数,以及各所述硬件的硬件参数,并根据所获取的硬件参数构建物理节点硬件参数矩阵,并根据所述物理节点硬件参数矩阵及预设的硬件参数评分表构建物理节点硬件评分矩阵;

S200:根据所述硬件评分矩阵及预设的硬件参数权重矩阵构建物理节点权重评分矩阵;

S300:获取虚拟机在各物理节点上的硬件参数,并根据所获得的硬件参数、预设的硬件参数评分表及所述硬件参数权重矩阵构建虚拟机硬件总评分矩阵;

S400:获得虚拟机在各物理节点上的硬件空闲率,并构建虚拟机硬件空闲率矩阵;

S500:根据所述虚拟机硬件总评分矩阵、所述虚拟机硬件空闲率矩阵及所述物理节点权重评分矩阵计算虚拟机的任务分配权重;

S600:获取任务,并根据所述任务分配权重对所获取到任务进行分割,并将所分割后的任务分配给对应的虚拟机。

具体的,在本发明一实施例中,步骤S100由本发明第一方面所提供的系统完成,具体由硬件参数获取模块110完成;

硬件参数获取模块110用于获取物理节点的个数n及物理节点包含的硬件种类m,获取各物理节点中的各种硬件参数,并根据所获取的各物理节点的硬件参数构建物理节点硬件参数矩阵P,

其中,Pij代表第i个物理节点第j种硬件的参数,i∈[1,n],j∈[1,m];

硬件参数获取模块110根据预设的硬件参数评分表获得所述硬件参数矩阵P中各硬件参数Pij对应的评分Psij

硬件参数获取模块110将所获得的硬件评分Psij构建成硬件评分矩阵Ps,

其中,Psij代表第i个物理节点第j种硬件的评分,i∈[1,n],j∈[1,m]。

具体的,在本发明一实施例中,记所述预设的硬件参数权重矩阵为U,

其中,Uj代表第j种硬件参数的权重,j∈[1,m]。

具体的,在本发明一实施例中,步骤200由本发明第一方面所提供的系统完成,具体由物理节点评分模块120完成;

物理节点评分模块120根据所述硬件评分矩阵Ps及所述的预设的硬件参数权重矩阵U构建物理节点权重评分矩阵Pvs,

其中,Pvsi代表第i个物理节点的权重评分评分,i∈[1,n]。

在本发明一实施例中,如图5所示,步骤300还包括:

S310:获取虚拟机在各物理节点上的硬件参数;

S320:根据所述预设的硬件参数评分表获得所述虚拟机在各物理节点上的硬件参数对应的评分,并构建虚拟机硬件参数评分矩阵;

S330:根据所述虚拟机硬件参数评分矩阵构建虚拟机硬件总评分矩阵。

具体的,在本发明一实施例中,步骤300由本发明第一方面所提供的系统完成,具体由虚拟机评分模块130完成;

虚拟机评分模块130用于获取所述虚拟机在各物理节点上的硬件参数,记获取的虚拟机在物理节点i上第j种硬件的参数为VMPij,i∈[1,n],j∈[1,m];

其中n为物理节点的个数,m为每个物理节点包含的硬件种类;

虚拟机评分模块130还用于根据预设的硬件参数评分表获得所述虚拟机在各物理节点上的硬件参数VMPij对应的评分VMPSSij,VMPSSij代表虚拟机在物理节点i上第j种硬件参数的评分;

虚拟机评分模块130还用于将所获得的虚拟机硬件参数评分VMPSSij构建虚拟机硬件参数评分矩阵VMPSS,

虚拟机评分模块130还用于根据所述虚拟机硬件参数评分矩阵VMPSS,计算虚拟机在物理节点i上的硬件总评分VMPSi,并构建虚拟机硬件总评分VMPS

其中,

在本发明一实施例中,如图6所示,步骤400还包括:

S410:获取虚拟机在各个物理节点上的总负载率,并构建虚拟机总负载率矩阵;

S420:根据所述总负载率矩阵构建虚拟机硬件空闲率矩阵。

具体的,在本发明一实施例中,步骤400由本发明第一方面所提供的系统完成,具体由虚拟机负载获取模块140完成;

具体的,在本发明一实施例中,虚拟机负载获取模块140用于获得虚拟机在第i物理节点上的总负载率VMRi,并根据所述总负载率VMRi构建虚拟机总负载率矩阵VMR;

虚拟机负载获取模块140还用于根据总负载率矩阵VMR构建虚拟机在各物理节点上的硬件空闲率矩阵VMI,

其中,VMIi代表虚拟机在第i物理节点上的硬件空闲率,i∈[1,n],n为物理节点的个数。

进一步的,在本发明一实施例中,如图7所示,步骤S410还包括:

S411:获取的虚拟机在各物理节点上各种硬件的负载率,并根据所获取的虚拟机在各物理节点上各种硬件的负载率构建虚拟机硬件负载率矩阵;

S412:根据所述虚拟机硬件负载率矩阵及所述预设的硬件参数权重矩阵构建虚拟机总负载率矩阵。

具体的,在本发明一实施例中,虚拟机负载获取模块140获取的虚拟机在物理节点i上第j种硬件的负载率记为VMRRij

虚拟机负载获取模块140还用于根据所获取的虚拟机在各物理节点上各种硬件的负载率VMRRij构建虚拟机硬件负载率矩阵VMRR,

其中n为物理节点的个数,m为每个物理节点包含的硬件种类;

记所述预设的硬件参数权重矩阵为U,

虚拟机负载获取模块140还用于根据所述虚拟机硬件负载率矩阵VMRR及所述硬件参数权重矩阵U构建虚拟机在各物理节点上的总负载率矩阵VMR,

其中,VMRi代表虚拟机在物理节点i上的硬件总负载率。

在本发明一实施例中,如图8所示,步骤500还包括:

S510:根据所述虚拟机硬件总评分矩阵、所述虚拟机硬件空闲率矩阵及所述物理节点权重评分矩阵构建虚拟机空闲硬件得分矩阵;

S520:根据所述虚拟机空闲硬件得分矩阵分别计算虚拟机在各物理节点上的任务分配权重。

具体的,在本发明一实施例中,步骤500由本发明第一方面所提供的系统完成,具体由任务分配权重计算模块150完成;

记所述虚拟机硬件空闲率矩阵为VMI、所述虚拟机硬件总评分矩阵为VMPS及所述物理节点权重评分矩阵为Pvs;

记任务分配权重计算模块150用于根据所述虚拟机硬件空闲率VMI、所述虚拟机硬件评分VMPS及所述物理节点权重评分矩阵Pvs构建虚拟机空闲硬件得分矩阵为VMS,

VMS=(VMSi)n×1=VMI*VMPS*Pvs;

任务分配权重计算模块150还用于根据所述虚拟机空闲硬件得分矩阵VMS,计算虚拟机任务分配权重VMWi

其中,VMWi为虚拟机在第i物理节点上的任务分配权重,i∈[1,n],n为物理节点的个数。

具体的,在本发明一实施例中,步骤600由本发明第一方面所提供的系统完成,具体由任务分配模块160完成;

任务分配模块160用于获取任务,并根据所述任务分配权重VMWi对任务进行分割;

任务分配模块160还用于获取第i物理节点上的虚拟机的物理地址,并根据所述物理地址将分割后的任务发送给对应的虚拟机;其中,i∈[1,n],n为物理节点的个数。

显然,上述实施例仅仅是为了更清楚的表达本发明技术方案所作的举例,而非对本发明实施方式的限定。对于本领域技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,在不脱离本发明构思的前提下,这些都属于本发明的保护范围。因此本发明专利的保护范围应以所附权利要求为准。

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