CN102521055B - 一种虚拟机资源分配方法及其*** - Google Patents

一种虚拟机资源分配方法及其*** Download PDF

Info

Publication number
CN102521055B
CN102521055B CN201110421298XA CN201110421298A CN102521055B CN 102521055 B CN102521055 B CN 102521055B CN 201110421298X A CN201110421298X A CN 201110421298XA CN 201110421298 A CN201110421298 A CN 201110421298A CN 102521055 B CN102521055 B CN 102521055B
Authority
CN
China
Prior art keywords
virtual machine
overbar
apportioning cost
unit interval
resource
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110421298XA
Other languages
English (en)
Other versions
CN102521055A (zh
Inventor
朱凌峰
何利明
周冠宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GCI Science and Technology Co Ltd
Original Assignee
GCI Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GCI Science and Technology Co Ltd filed Critical GCI Science and Technology Co Ltd
Priority to CN201110421298XA priority Critical patent/CN102521055B/zh
Publication of CN102521055A publication Critical patent/CN102521055A/zh
Application granted granted Critical
Publication of CN102521055B publication Critical patent/CN102521055B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供一种虚拟机资源分配方法及其***,统计主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值。根据单位时间I/O操作次数计算虚拟机的I/O操作资源分配值;根据VCPU单次执行时间计算所述实时响应资源分配值;根据单位时间指令队列深度计算所述运算资源分配值;根据单位时间收发数据包数目,计算所述通信资源分配值。最后获得对各个虚拟机分配资源的总资源分配值,根据所述总资源分配值来调节各个虚拟机占用的计算机资源分配比例。以达到根据虚拟机的应用特征来优化虚拟机性能的目的。

Description

一种虚拟机资源分配方法及其***
技术领域
本发明涉及虚拟机技术领域,尤其涉及一种虚拟机资源分配方法,以及一种虚拟机资源分配***。
背景技术
60年代末期兴起的虚拟机技术与虚拟机,随着存储虚拟化技术,以及一批新产品的涌现,在70年代初期达到了它的第一个高峰。但是,随着硬件价格的下降、性能的大幅上升,以及廉价的小型机、个人电脑和多任务操作***的出现,虚拟机技术开始走向衰落。
90年代,研究者在研究解决大规模并行处理机(MPP,Massively ParallelProcessing)不能运行已有的操作***和编程困难等问题时发现,使用虚拟机技术可以使这些体系结构复杂的机器看起来与已有平台完全相似,从而可以运行现有的操作***。
虚拟化是一种计算机***抽象技术,通过物理平台上的虚拟机逻辑层管理计算机资源,并向运行在其上的客户层提供虚拟的资源。客户机操作***可以通过标准接口访问资源,但是接口并不是与物理的资源直接通信,而是通过虚拟层来对真实资源进行管理,从而使得有限的资源可在多个虚拟机之间复用。直接运行在硬件平台上的虚拟化层称为虚拟机监视器VMM或者Hypervisor,它负责对虚拟机提供硬件资源和软件资源的抽象,为客户操作***提供运行环境。
在虚拟化过程中,虚拟化软件需要实现对硬件的抽象,资源的分配、调度和管理,虚拟机与宿主操作***及多个虚拟机的隔离等功能。VMM对底层的所有硬件资源进行抽象,然后把它们重新组合并集成到多个虚拟机(VirtualMachine)中实现虚拟化,每个虚拟机都能够运行独立的操作***实例。
当前,主流的虚拟化技术产品有Vmware、Xen、Hyper-V和KVM等,它们在服务器的整合、资源的控制与优化,成本与能源的节约上都做出了杰出的贡献。虚拟化技术在虚拟集群领域也用很好的应用前景,并逐渐应用在云计算等高端领域中。
然而,通过虚拟化技术,在一台主机上可以运行着多个虚拟机,在每个虚拟机中运行着不同的操作***和应用,而每个虚拟机都需要占用一定的计算机资源,如CPU资源和I/O资源。
由于各个虚拟机运行的应用是不同的。有些虚拟机中运行的是实时性应用,例如视频会议;有些虚拟机中运行的是I/O密集型应用,例如本地观看高清电影;有些虚拟机中运行着CPU密集应用,例如进行精确的科学计算;还有些虚拟机运行着通信密集的应用,例如下载。还有很多的应用它是几个特征综合的,例如:网上视频点播,它既是实时的、IO密集的,也是通信密集的。当CPU资源充足时,可以保证各种虚拟机的正常运行,但是当CPU负载非常重时,虚拟机进入争夺计算机资源的状态,此时若缺乏适当的优化措施,很容易导致主机上的所有虚拟机的应用相互影响,而使得各个虚拟机的性能下降。
以一个开放源代码虚拟机监视器Xen为例,它的CPU调度和I/O调度算法对运行在其上的虚拟机非常注重公平和一致性,而不考虑虚拟机上运行的应用的具体资源需求。因此从开始到结束,Xen对所有的虚拟机都是按照初始分配给它的份额Weight来同等对待,并按照基本的分时方法依次轮流执行不同的虚拟CPU。但是在不同的虚拟机中运行着不同的应用程序,并且各个应用程序的特征也不尽相同。例如,实时性的应用,它需要I/O处理要及时,且CPU计算要同步,这样才能满足程序响应时间的要求,而使得用户得到真正的实时感受。
如果对各个虚拟机都分配同等份额的I/O处理资源和CPU,则可能导致需要大量I/O处理资源的实时性的应用的响应变慢,影响用户体验。
发明内容
本发明要解决的技术问题在于提供一种能够对同一计算机上运行的各个虚拟机合理地分配计算机资源的虚拟机资源分配方法。
一种虚拟机资源分配方法,包括以下步骤:分别获取在主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值;根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,计算所述虚拟机的I/O操作资源分配值;根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,以及所述虚拟机VCPU单次执行时间的统计值及对应的VCPU单次执行时间的平均值,计算所述虚拟机的实时响应资源分配值;根据各个虚拟机单位时间指令队列深度的统计值及对应的单位时间指令队列深度的平均值,计算所述虚拟机的运算资源分配值;根据各个虚拟机单位时间收发数据包数目的统计值及对应的单位时间收发数据包数目的平均值,计算所述虚拟机的通信资源分配值;根据所述I/O操作资源分配值,所述实时响应资源分配值,所述运算资源分配值,以及所述通信资源分配值,计算所述虚拟机的总资源分配值;根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例。
与现有技术相比较,本发明的虚拟机资源分配方法中,统计主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值。根据单位时间I/O操作次数计算虚拟机的I/O操作资源分配值;根据VCPU单次执行时间计算所述实时响应资源分配值;根据单位时间指令队列深度计算所述运算资源分配值;根据单位时间收发数据包数目,计算所述通信资源分配值。最后获得对各个虚拟机分配资源的总资源分配值,根据所述总资源分配值来调节各个虚拟机占用的计算机资源分配比例。
例如,在统计获得某一虚拟机的单位时间I/O操作次数较多时,其对应的I/O操作资源分配值增大,从而使其对应的总资源分配值也增大,获得更多的计算机资源分配比例,保证所述计算机能够运行顺畅。同样,当其他的统计值增大时,也会相应地增加其对应的资源分配值,因此可以实现同一计算机上运行的各个虚拟机之间的合理资源调配。
进一步地,还可以通过设置各个资源分配值在所述总资源分配值中所占的权重,从而可以对各个虚拟机设定资源分配的优先级,例如,设定所述I/O操作资源分配值在所述总资源分配值中所占的权重较大,则对单位时间I/O操作次数较多的虚拟机,将优先分配更多计算机资源。
本发明要解决的技术问题在于提供一种能够对同一计算机上运行的各个虚拟机合理地分配计算机资源的虚拟机资源分配***。
一种虚拟机资源分配***,包括:监控模块、操作资源分配值计算模块、实时响应资源分配值计算模块、运算资源分配值计算模块、通信资源分配值计算模块、总资源分配值计算模块和资源调度模块。所述监控模块用于获取在主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值。所述操作资源分配值计算模块用于根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,计算所述虚拟机的I/O操作资源分配值。所述实时响应资源分配值计算模块用于根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,以及所述虚拟机VCPU单次执行时间的统计值及对应的VCPU单次执行时间的平均值,计算所述虚拟机的实时响应资源分配值。所述运算资源分配值计算模块用于根据各个虚拟机单位时间指令队列深度的统计值及对应的单位时间指令队列深度的平均值,计算所述虚拟机的运算资源分配值。所述通信资源分配值计算模块用于根据各个虚拟机单位时间收发数据包数目的统计值及对应的单位时间收发数据包数目的平均值,计算所述虚拟机的通信资源分配值。所述总资源分配值计算模块用于根据所述I/O操作资源分配值,所述实时响应资源分配值,所述运算资源分配值,以及所述通信资源分配值,计算所述虚拟机的总资源分配值。所述资源调度模块用于根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例。
与现有技术相比较,本发明的虚拟机资源分配***中,所述监控模块统计主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值。所述操作资源分配值计算模块根据单位时间I/O操作次数计算虚拟机的I/O操作资源分配值;所述实时响应资源分配值计算模块根据VCPU单次执行时间计算所述实时响应资源分配值;所述运算资源分配值计算模块根据单位时间指令队列深度计算所述运算资源分配值;所述通信资源分配值计算模块根据单位时间收发数据包数目,计算所述通信资源分配值。最后由所述总资源分配值计算模块获得对各个虚拟机分配资源的总资源分配值,并由所述资源调度模块根据所述总资源分配值来调节各个虚拟机占用的计算机资源分配比例。
例如,在统计获得某一虚拟机的单位时间I/O操作次数较多时,其对应的I/O操作资源分配值增大,从而使其对应的总资源分配值也增大,获得更多的计算机资源分配比例,保证所述计算机能够运行顺畅。同样,当其他的统计值增大时,也会相应地增加其对应的资源分配值,因此可以实现同一计算机上运行的各个虚拟机之间的合理资源调配。
进一步地,还可以通过设置各个资源分配值在所述总资源分配值中所占的权重,从而可以对各个虚拟机设定资源分配的优先级,例如,设定所述I/O操作资源分配值在所述总资源分配值中所占的权重较大,则对单位时间I/O操作次数较多的虚拟机,将优先分配更多计算机资源。
附图说明
图1是本发明虚拟机资源分配方法的流程示意图;
图2是本发明虚拟机资源分配***的结构示意图。
具体实施方式
请参阅图1,图1是本发明虚拟机资源分配方法的流程示意图。
本发明虚拟机资源分配方法包括以下步骤:
S1,分别获取在主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值;
在本步骤中,通过对各个虚拟机的运行情况的监控,获取上述各项统计值。即通过监控各个虚拟机的I/O操作,获取所述虚拟机的单位时间I/O操作次数的统计值;通过监控各个虚拟机的VCPU单次执行时间,获取所述虚拟机的VCPU单次执行时间的统计值;通过监控各个虚拟机的指令队列,获取所述单位时间指令队列深度的统计值;通过监控各个虚拟机的数据包收发,获取所述单位时间收发数据包数目的统计值。
进一步可设定每隔一个预定周期对各个虚拟机的运行情况发起一次上述监控,以获得最新的统计值数据。
然后对上述各项统计值,在主机上运行的所有虚拟机范围内求取其平均值。例如,根据各个虚拟机的单位时间I/O操作次数的统计值,计算单位时间I/O操作次数的平均值;根据各个虚拟机的VCPU单次执行时间,计算VCPU单次执行时间的平均值;根据各个虚拟机的单位时间指令队列深度,计算单位时间指令队列深度的平均值;根据各个虚拟机的单位时间收发数据包数目,计算单位时间收发数据包数目的平均值。
S2,根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,计算所述虚拟机的I/O操作资源分配值;
在本步骤中,优选按照以下公式计算所述虚拟机的I/O操作资源分配值:
F ( x ) = x &times; 20 x &OverBar; 0 &le; x < 1 2 &times; x &OverBar; 10 + 60 x &OverBar; &times; ( x - 1 2 &times; x &OverBar; ) 1 2 &times; x &OverBar; &le; x < x &OverBar; 40 + 20 ( &alpha; - 1 ) x &OverBar; &times; ( x - x &OverBar; ) x &OverBar; &le; x < &alpha; &times; x &OverBar; 60 + 20 &alpha; x &OverBar; &times; ( x - &alpha; &times; x &OverBar; ) &alpha; &times; x &OverBar; &le; x < 2 &times; &alpha; &times; x &OverBar; min { 80 2 &times; &alpha; &times; x &OverBar; &times; x , 100 } 2 &times; &alpha; &times; x &OverBar; &le; x
其中,F(x)为所述虚拟机的I/O操作资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及
Figure GDA0000365077410000072
为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,α为预先设定的常数,且α>2。
因此可根据不同虚拟机的I/O操作次数来确定其对I/O操作资源的要求。
通常,若某一虚拟机满足
Figure GDA0000365077410000073
则认为此虚拟机的应用是I/O密集型的。进一步可通过调整所述常数α,来调节虚拟机应用是I/O密集型的条件,从而调整各个虚拟机的I/O操作资源分配值。当满足应用是I/O密集型的虚拟机过多时,可提高α的值,使得应用是I/O密集型的虚拟机的层次更加分明,资源分配更加合理。
S3,根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,以及所述虚拟机VCPU单次执行时间的统计值及对应的VCPU单次执行时间的平均值,计算所述虚拟机的实时响应资源分配值;
在本步骤中,优选根据以下公式计算所述虚拟机的实时响应资源分配值:
G ( x , t ) = 100 - 40 &delta; t &OverBar; &times; t 0 < t < &delta; &times; t &OverBar; , &beta; &times; x &OverBar; &le; x 60 - 30 ( 1 - &delta; ) t &OverBar; &times; ( t - &delta; t &OverBar; ) &delta; &times; t &OverBar; &le; t < t &OverBar; , &beta; &times; x &OverBar; &le; x max { 130 - 100 t &OverBar; &times; t , 0 } t &OverBar; &le; t , &beta; &times; x &OverBar; &le; x 0 &beta; &times; x &OverBar; > x
其中,G(x,t)为所述虚拟机的实时响应资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及
Figure GDA0000365077410000075
为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,t为虚拟机VCPU单次执行时间的统计值,
Figure GDA0000365077410000081
为主机上运行的所有虚拟机的VCPU单次执行时间的平均值,β、δ为预先设定的常数,且β>2、 &delta; &le; 1 2 ;
因此,可根据不同虚拟机的I/O操作次数和VCPU单次执行时间来决定其对实时响应资源的要求。
通常,当β<α且
Figure GDA0000365077410000083
时,若某一虚拟机满足
Figure GDA0000365077410000084
Figure GDA0000365077410000085
则认为此虚拟机的应用是实时型的。进一步可通过调整所述常数β和δ的值,来调节虚拟机应用是实时型的条件,从而调整各个虚拟机的实时响应资源分配值。当满足应用是实时型的虚拟机过多时,可提高β的值和/或减低δ的值,使得应用是实时型的虚拟机的层次更加分明,资源分配更加合理。
S4,根据各个虚拟机单位时间指令队列深度的统计值及对应的单位时间指令队列深度的平均值,计算所述虚拟机的运算资源分配值;
在本步骤中,优选根据以下公式计算所述虚拟机的运算资源分配值:
H ( y ) = min { 100,50 + 50 &theta; y &OverBar; &times; ( y - &theta; y &OverBar; ) } &theta; &times; y &OverBar; &le; y 30 + 20 ( &theta; - 1 ) y &OverBar; &times; ( y - y &OverBar; ) y &OverBar; &le; y < &theta; &times; y &OverBar; 30 y &OverBar; &times; y y < y &OverBar; ,
其中,H(y)为所述虚拟机的运算资源分配值,y为虚拟机单位时间指令队列深度的统计值,
Figure GDA0000365077410000087
为主机上运行的所有虚拟机的单位时间指令队列深度的平均值,θ为预先设定的常数,且θ≥2。
若虚拟机具有多个虚拟CPU,则此虚拟机的指令队列深度为各个虚拟CPU的指令队列深度之和。可根据不同虚拟机的单位时间指令队列深度决定其对运算资源的要求。
通常,当θ>2时,若某一虚拟机满足
Figure GDA0000365077410000088
则认为此虚拟机的应用是计算密集型的。进一步可通过调整所述常数θ的值,来调节虚拟机应用是计算密集型的条件,从而调整各个虚拟机的运算资源分配值。当满足应用是计算密集型的虚拟机过多时,可提高θ的值,使得应用是计算密集型的虚拟机的层次更加分明,资源分配更加合理。
S5,根据各个虚拟机单位时间收发数据包数目的统计值及对应的单位时间收发数据包数目的平均值,计算所述虚拟机的通信资源分配值;
在本步骤中,优选根据以下公式计算所述虚拟机的通信资源分配值:
I ( n ) = min { 100,50 + 50 &rho; n - &times; ( n - &rho; n &OverBar; ) &rho; &times; n &OverBar; &le; n 30 + 20 ( &rho; - 1 ) n &OverBar; &times; ( n - n &OverBar; ) n &OverBar; &le; n < &rho; &times; n &OverBar; 30 n &OverBar; &times; n n < n &OverBar; ,
其中,I(n)为所述虚拟机的通信资源分配值,n为虚拟机单位时间收发数据包数目的统计值,
Figure GDA0000365077410000092
为主机上运行的所有虚拟机的单位时间收发数据包数目的平均值,ρ为预先设定的常数,且ρ≥2。
可根据不同虚拟机的单位时间收发数据包数目决定其对通信资源的要求。通常,当ρ>2时,若某一虚拟机满足
Figure GDA0000365077410000093
则认为此虚拟机的应用是通信密集型的。进一步可通过调整所述常数ρ的值,来调节虚拟机应用是通信密集型的条件,从而调整各个虚拟机的通信资源分配值。当满足应用是通信密集型的虚拟机过多时,可提高ρ的值,使得应用是通信密集型的虚拟机的层次更加分明,资源分配更加合理。
S6,根据所述I/O操作资源分配值,所述实时响应资源分配值,所述运算资源分配值,以及所述通信资源分配值,计算所述虚拟机的总资源分配值;
在本步骤中,优选按照以下公式计算所述虚拟机的总资源分配值:
Weight=w1×F(x)+w2×G(x,t)+w3×H(y)+w4×I(n)
其中,Weight是所述虚拟机的总资源分配值,w1、w2、w3和w4分别为预先设定的各种资源分配值的权重,F(x)为所述虚拟机的I/O操作资源分配值,G(x,t)为所述虚拟机的实时响应资源分配值,H(y)为所述虚拟机的运算资源分配值,I(n)为所述虚拟机的通信资源分配值。
进一步地,在上述计算虚拟机的总资源分配值的步骤之前,进一步包括根据用户指令,调整各种资源分配值的权重的步骤。即,根据用户指令来设置不同类型的虚拟机的对计算机资源占用的优先级。
如果用户设定了属于I/O密集型
Figure GDA0000365077410000101
的虚拟机优先分配计算机资源,则增大所述I/O操作资源分配值的权重w1
如果用户设定了属于实时型的虚拟机优先分配计算机资源,则增大所述实时响应资源分配值的权重w2
如果用户设定了属于计算密集型
Figure GDA0000365077410000103
的虚拟机优先分配计算机资源,则增大所述运算资源分配值的权重w3
如果用户设定了属于通信密集型
Figure GDA0000365077410000104
的虚拟机优先分配计算机资源,则增大所述通信资源分配值的权重w4
例如:若需要将IO密集型的应用优先处理,则可以提高w1降低w2、w3和w4。若需要将实时型的应用优先处理,则可以提高w2降低w1、w3和w4。这样可以保证各个虚拟机在资源分配时,考虑到各自的应用特征的优先性。
S7,根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例。
在本步骤中,优选采用以下方法调节各个虚拟机的资源分配比例:计算各个所述虚拟机的总资源分配值的总和;计算各个所述虚拟机的总资源分配值与所述总和的比值;根据所述比值调整各个虚拟机的资源分配比例。
在本步骤中,对虚拟机VCPU的调度,可根据最新修改总资源分配值,进行虚拟CPU运行队列的优化操作,保证总资源分配值高的虚拟机能获得优先处理和更多的CPU运行时间片,从而实现根据虚拟机的应用特征来优化虚拟机性能。
与现有技术相比较,本发明的虚拟机资源分配方法主要是通过周期性的监控和统计虚拟机上运行着的应用的特征,来优化虚拟机对计算机资源的利用。例如:对于实时型、I/O密集型和计算密集型和通信密集型的应用,根据不同的应用需求来分配给虚拟机不同的CPU和I/O资源分配值,所述资源分配值是通过量化得到的。使得在主机负载较重时,拥有高资源分配值的虚拟机能获得更多的CPU和I/O资源,而优先运行。
以下结合具体的例子说明本发明的虚拟机资源分配方法。
首先,通过虚拟机监视器(VMM),对接入主机的虚拟机进行监控,当有新加入的虚拟机时,对新加入的虚拟机分配初始资源分配值w。
然后,判断是否到达虚拟机周期监控发起时间,若未到达,则结束。若已经到达周期发起时间,则开始监控各个虚拟机的单位时间I/O操作次数x、虚拟机的VCPU单次执行时间t、虚拟机的指令队列深度y和虚拟机的接受和发送数据包的数目n,并统计主机上所有虚拟机的平均单位时间I/O操作次数
Figure GDA0000365077410000111
虚拟机的平均VCPU单次执行时间所有虚拟机的平均指令队列深度
Figure GDA0000365077410000113
和所有虚拟机的平均接受和发送数据包的数目
Figure GDA0000365077410000114
再根据获得的统计值数据,调用对应的资源分配值计算函数F(x)、G(x,t)、H(y)和I(n),对各个虚拟机进行资源分配值的量化运算,得到相应的资源分配值f(x)、g(x,t)、h(y)和i(n)。利用这些资源分配值套用以下公式:
Weight=w1×f(x)+w2×g(x,t)+w3×h(y)+w4×i(n)。
其中wi≥0,i=1,2,3,4。wi为虚拟机的各种资源分配值的权重。
最后,根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例。在每次完成虚拟机的总资源分配值的计算之后,进行虚拟CPU运行队列的优化操作,保证高总资源分配值的虚拟CPU能获得优先处理和更多的CPU运行时间片,达到根据虚拟机的应用特征来优化虚拟机性能的目的。
请参阅图2,图2是本发明虚拟机资源分配***的结构示意图。
所述虚拟机资源分配***,包括:监控模块11、操作资源分配值计算模块12、实时响应资源分配值计算模块13、运算资源分配值计算模块14、通信资源分配值计算模块15、总资源分配值计算模块16和资源调度模块17。
所述监控模块11用于获取在主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值;
所述操作资源分配值计算模块12用于根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,计算所述虚拟机的I/O操作资源分配值;
所述实时响应资源分配值计算模块13用于根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,以及所述虚拟机VCPU单次执行时间的统计值及对应的VCPU单次执行时间的平均值,计算所述虚拟机的实时响应资源分配值;
所述运算资源分配值计算模块14用于根据各个虚拟机单位时间指令队列深度的统计值及对应的单位时间指令队列深度的平均值,计算所述虚拟机的运算资源分配值;
所述通信资源分配值计算模块15用于根据各个虚拟机单位时间收发数据包数目的统计值及对应的单位时间收发数据包数目的平均值,计算所述虚拟机的通信资源分配值;
所述总资源分配值计算模块16用于根据所述I/O操作资源分配值,所述实时响应资源分配值,所述运算资源分配值,以及所述通信资源分配值,计算所述虚拟机的总资源分配值;
所述资源调度模块17用于根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例。
与现有技术相比较,本发明的虚拟机资源分配***中,所述监控模块统计主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值。所述操作资源分配值计算模块根据单位时间I/O操作次数计算虚拟机的I/O操作资源分配值;所述实时响应资源分配值计算模块根据VCPU单次执行时间计算所述实时响应资源分配值;所述运算资源分配值计算模块根据单位时间指令队列深度计算所述运算资源分配值;所述通信资源分配值计算模块根据单位时间收发数据包数目,计算所述通信资源分配值。最后由所述总资源分配值计算模块获得对各个虚拟机分配资源的总资源分配值,并由所述资源调度模块根据所述总资源分配值来调节各个虚拟机占用的计算机资源分配比例。
例如,在统计获得某一虚拟机的单位时间I/O操作次数较多时,其对应的I/O操作资源分配值增大,从而使其对应的总资源分配值也增大,获得更多的计算机资源分配比例,保证所述计算机能够运行顺畅。同样,当其他的统计值增大时,也会相应地增加其对应的资源分配值,因此可以实现同一计算机上运行的各个虚拟机之间的合理资源调配。
所述监控模块11可通过对各个虚拟机的运行情况的监控,获取上述各项统计值。即通过监控各个虚拟机的I/O操作,获取所述虚拟机的单位时间I/O操作次数的统计值;通过监控各个虚拟机的VCPU单次执行时间,获取所述虚拟机的VCPU单次执行时间的统计值;通过监控各个虚拟机的指令队列,获取所述单位时间指令队列深度的统计值;通过监控各个虚拟机的数据包收发,获取所述单位时间收发数据包数目的统计值。
所述监控模块11可进一步设定每隔一个预定周期对各个虚拟机的运行情况发起一次上述监控,以获得最新的统计值数据。然后对上述各项统计值,在主机上运行的所有虚拟机范围内求取其平均值。例如,根据各个虚拟机的单位时间I/O操作次数的统计值,计算单位时间I/O操作次数的平均值;根据各个虚拟机的VCPU单次执行时间,计算VCPU单次执行时间的平均值;根据各个虚拟机的单位时间指令队列深度,计算单位时间指令队列深度的平均值;根据各个虚拟机的单位时间收发数据包数目,计算单位时间收发数据包数目的平均值。
所述操作资源分配值计算模块12优选根据以下公式计算所述虚拟机的I/O操作资源分配值:
F ( x ) = x &times; 20 x &OverBar; 0 &le; x < 1 2 &times; x &OverBar; 10 + 60 x &OverBar; &times; ( x - 1 2 &times; x &OverBar; ) 1 2 &times; x &OverBar; &le; x < x &OverBar; 40 + 20 ( &alpha; - 1 ) x &OverBar; &times; ( x - x &OverBar; ) x &OverBar; &le; x < &alpha; &times; x &OverBar; 60 + 20 &alpha; x &OverBar; &times; ( x - &alpha; &times; x &OverBar; ) &alpha; &times; x &OverBar; &le; x < 2 &times; &alpha; &times; x &OverBar; min { 80 2 &times; &alpha; &times; x &OverBar; &times; x , 100 } 2 &times; &alpha; &times; x &OverBar; &le; x
其中,F(x)为所述虚拟机的I/O操作资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及
Figure GDA0000365077410000142
为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,α为预先设定的常数,且α>2;
所述实时响应资源分配值计算模块13优选根据以下公式计算所述虚拟机的实时响应资源分配值:
G ( x , t ) = 100 - 40 &delta; t &OverBar; &times; t 0 < t < &delta; &times; t &OverBar; , &beta; &times; x &OverBar; &le; x 60 - 30 ( 1 - &delta; ) t &OverBar; &times; ( t - &delta; t &OverBar; ) &delta; &times; t &OverBar; &le; t < t &OverBar; , &beta; &times; x &OverBar; &le; x max { 130 - 100 t &OverBar; &times; t , 0 } t &OverBar; &le; t , &beta; &times; x &OverBar; &le; x 0 &beta; &times; x &OverBar; > x
其中,G(x,t)为所述虚拟机的实时响应资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及
Figure GDA0000365077410000144
为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,t为虚拟机VCPU单次执行时间的统计值,
Figure GDA0000365077410000145
为主机上运行的所有虚拟机的VCPU单次执行时间的平均值,β、δ为预先设定的常数,且β>2、 &delta; &le; 1 2 ;
所述运算资源分配值计算模块14优选根据以下公式计算所述虚拟机的运算资源分配值:
H ( y ) = min { 100,50 + 50 &theta; y &OverBar; &times; ( y - &theta; y &OverBar; ) } &theta; &times; y &OverBar; &le; y 30 + 20 ( &theta; - 1 ) y &OverBar; &times; ( y - y &OverBar; ) y &OverBar; &le; y < &theta; &times; y &OverBar; 30 y &OverBar; &times; y y < y &OverBar; ,
其中,H(y)为所述虚拟机的运算资源分配值,y为虚拟机单位时间指令队列深度的统计值,为主机上运行的所有虚拟机的单位时间指令队列深度的平均值,θ为预先设定的常数,且θ≥2;
所述通信资源分配值计算模块15优选根据以下公式计算所述虚拟机的通信资源分配值:
I ( n ) = min { 100,50 + 50 &rho; n - &times; ( n - &rho; n &OverBar; ) &rho; &times; n &OverBar; &le; n 30 + 20 ( &rho; - 1 ) n &OverBar; &times; ( n - n &OverBar; ) n &OverBar; &le; n < &rho; &times; n &OverBar; 30 n &OverBar; &times; n n < n &OverBar; ,
其中,I(n)为所述虚拟机的通信资源分配值,n为虚拟机单位时间收发数据包数目的统计值,
Figure GDA0000365077410000153
为主机上运行的所有虚拟机的单位时间收发数据包数目的平均值,ρ为预先设定的常数,且ρ≥2。
在本实施方式中,所述总资源分配值计算模块16优选根据以下公式计算所述虚拟机的总资源分配值:
Weight=w1×F(x)+w2×G(x,t)+w3×H(y)+w4×I(n)
其中,Weight是所述虚拟机的总资源分配值,w1、w2、w3和w4分别为预先设定的各种资源分配值的权重,F(x)为所述虚拟机的I/O操作资源分配值,G(x,t)为所述虚拟机的实时响应资源分配值,H(y)为所述虚拟机的运算资源分配值,I(n)为所述虚拟机的通信资源分配值。
可以通过设置所述总资源分配值计算模块16中各个资源分配值在所述总资源分配值中所占的权重,从而可以对各个虚拟机设定资源分配的优先级,例如,设定所述I/O操作资源分配值在所述总资源分配值中所占的权重较大,则对单位时间I/O操作次数较多的虚拟机,将优先分配更多计算机资源。
在本实施方式中,所述资源调度模块17计算各个所述虚拟机的总资源分配值的总和,并计算各个所述虚拟机的总资源分配值与所述总和的比值,根据所述比值调整各个虚拟机占用的资源分配比例。
作为一种优选实施方式,本发明的虚拟机资源分配***进一步包括优先级调整模块,所述优先级调整模块用于根据用户指令,调整各种资源分配值的权重。
如果用户需要属于I/O密集型
Figure GDA0000365077410000161
的虚拟机优先分配计算机资源,则可通过所述优先级调整模块增大所述I/O操作资源分配值的权重w1
如果用户需要属于实时型(
Figure GDA0000365077410000165
,且
Figure GDA0000365077410000162
)的虚拟机优先分配计算机资源,则可通过所述优先级调整模块增大所述实时响应资源分配值的权重w2
如果用户需要设定了属于计算密集型
Figure GDA0000365077410000163
的虚拟机优先分配计算机资源,则可通过所述优先级调整模块增大所述运算资源分配值的权重w3
如果用户需要设定了属于通信密集型
Figure GDA0000365077410000164
的虚拟机优先分配计算机资源,则可通过所述优先级调整模块增大所述通信资源分配值的权重w4
与现有技术相比较,本发明的虚拟机资源分配***通过周期性的监控和统计虚拟机上运行着的应用的特征,来优化虚拟机对计算机资源的利用。例如:对于实时型、I/O密集型和计算密集型和通信密集型的应用,根据不同的应用需求来分配给虚拟机不同的CPU和I/O资源分配值,所述资源分配值是通过量化得到的。使得在主机负载较重时,拥有高资源分配值的虚拟机能获得更多的CPU和I/O资源,而优先运行。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。

Claims (10)

1.一种虚拟机资源分配方法,其特征在于,包括以下步骤:
分别获取在主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值;
根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,计算所述虚拟机的I/O操作资源分配值;
根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,以及所述虚拟机VCPU单次执行时间的统计值及对应的VCPU单次执行时间的平均值,计算所述虚拟机的实时响应资源分配值;
根据各个虚拟机单位时间指令队列深度的统计值及对应的单位时间指令队列深度的平均值,计算所述虚拟机的运算资源分配值;
根据各个虚拟机单位时间收发数据包数目的统计值及对应的单位时间收发数据包数目的平均值,计算所述虚拟机的通信资源分配值;
根据所述I/O操作资源分配值,所述实时响应资源分配值,所述运算资源分配值,以及所述通信资源分配值,计算所述虚拟机的总资源分配值;
根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例。
2.如权利要求1所述的虚拟机资源分配方法,其特征在于,根据以下公式计算所述虚拟机的总资源分配值:
Weight=w1×F(x)+w2×G(x,t)+w3×H(y)+w4×I(n)
其中,Weight是所述虚拟机的总资源分配值,w1、w2、w3和w4分别为预先设定的各种资源分配值的权重,F(x)为所述虚拟机的I/O操作资源分配值,G(x,t)为所述虚拟机的实时响应资源分配值,H(y)为所述虚拟机的运算资源分配值,I(n)为所述虚拟机的通信资源分配值。
3.如权利要求2所述的虚拟机资源分配方法,其特征在于,根据以下公式计算所述虚拟机的I/O操作资源分配值:
F ( x ) = x &times; 20 x &OverBar; 0 &le; x < 1 2 &times; x &OverBar; 10 + 60 x &OverBar; &times; ( x - 1 2 &times; x &OverBar; ) 1 2 &times; x &OverBar; &le; x < x &OverBar; 40 + 20 ( &alpha; - 1 ) x &OverBar; &times; ( x - x &OverBar; ) x &OverBar; &le; x < &alpha; &times; x &OverBar; 60 + 20 &alpha; x &OverBar; &times; ( x - &alpha; &times; x &OverBar; ) &alpha; &times; x &OverBar; &le; x < 2 &times; &alpha; &times; x &OverBar; min { 80 2 &times; &alpha; &times; x &OverBar; &times; x , 100 } 2 &times; &alpha; &times; x &OverBar; &le; x
其中,F(x)为所述虚拟机的I/O操作资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及
Figure FDA0000365077400000026
为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,α为预先设定的常数,且α>2;
根据以下公式计算所述虚拟机的实时响应资源分配值:
G ( x , t ) = 100 - 40 &delta; t &OverBar; &times; t 0 < t < &delta; &times; t &OverBar; , &beta; &times; x &OverBar; &le; x 60 - 30 ( 1 - &delta; ) t &OverBar; &times; ( t - &delta; t &OverBar; ) &delta; &times; t &OverBar; &le; t < t &OverBar; , &beta; &times; x &OverBar; &le; x max { 130 - 100 t &OverBar; &times; t , 0 } t &OverBar; &le; t , &beta; &times; x &OverBar; &le; x 0 &beta; &times; x &OverBar; > x
其中,G(x,t)为所述虚拟机的实时响应资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及
Figure FDA0000365077400000023
为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,t为虚拟机VCPU单次执行时间的统计值,
Figure FDA0000365077400000024
为主机上运行的所有虚拟机的VCPU单次执行时间的平均值,β、δ为预先设定的常数,且β>2、 &delta; &le; 1 2 ;
根据以下公式计算所述虚拟机的运算资源分配值:
H ( y ) = min { 100,50 + 50 &theta; y &OverBar; &times; ( y - &theta; y &OverBar; ) } &theta; &times; y &OverBar; &le; y 30 + 20 ( &theta; - 1 ) y &OverBar; &times; ( y - y &OverBar; ) y &OverBar; &le; y < &theta; &times; y &OverBar; 30 y &OverBar; &times; y y < y &OverBar; ,
其中,H(y)为所述虚拟机的运算资源分配值,y为虚拟机单位时间指令队列深度的统计值,
Figure FDA0000365077400000032
为主机上运行的所有虚拟机的单位时间指令队列深度的平均值,θ为预先设定的常数,且θ≥2;
根据以下公式计算所述虚拟机的通信资源分配值:
I ( n ) = min { 100,50 + 50 &rho; n - &times; ( n - &rho; n &OverBar; ) &rho; &times; n &OverBar; &le; n 30 + 20 ( &rho; - 1 ) n &OverBar; &times; ( n - n &OverBar; ) n &OverBar; &le; n < &rho; &times; n &OverBar; 30 n &OverBar; &times; n n < n &OverBar; ,
其中,I(n)为所述虚拟机的通信资源分配值,n为虚拟机单位时间收发数据包数目的统计值,
Figure FDA0000365077400000034
为主机上运行的所有虚拟机的单位时间收发数据包数目的平均值,ρ为预先设定的常数,且ρ≥2。
4.如权利要求2所述的虚拟机资源分配方法,其特征在于,在计算所述虚拟机的总资源分配值之前,进一步包括根据用户指令,调整各种资源分配值的权重的步骤。
5.如权利要求1至4中任一项所述的虚拟机资源分配方法,其特征在于,根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例的步骤包括:
计算各个所述虚拟机的总资源分配值的总和;
计算各个所述虚拟机的总资源分配值与所述总和的比值;
根据所述比值调整各个虚拟机的资源分配比例。
6.一种虚拟机资源分配***,其特征在于,包括:
监控模块,用于获取在主机上运行的各个虚拟机的单位时间I/O操作次数、VCPU单次执行时间、单位时间指令队列深度、以及单位时间收发数据包数目的统计值,并对主机上运行的所有虚拟机计算每一项所述统计值的平均值;
操作资源分配值计算模块,用于根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,计算所述虚拟机的I/O操作资源分配值;
实时响应资源分配值计算模块,用于根据各个虚拟机单位时间I/O操作次数的统计值及对应的单位时间I/O操作次数的平均值,以及所述虚拟机VCPU单次执行时间的统计值及对应的VCPU单次执行时间的平均值,计算所述虚拟机的实时响应资源分配值;
运算资源分配值计算模块,用于根据各个虚拟机单位时间指令队列深度的统计值及对应的单位时间指令队列深度的平均值,计算所述虚拟机的运算资源分配值;
通信资源分配值计算模块,用于根据各个虚拟机单位时间收发数据包数目的统计值及对应的单位时间收发数据包数目的平均值,计算所述虚拟机的通信资源分配值;
总资源分配值计算模块,用于根据所述I/O操作资源分配值,所述实时响应资源分配值,所述运算资源分配值,以及所述通信资源分配值,计算所述虚拟机的总资源分配值;
资源调度模块,用于根据各个所述虚拟机的总资源分配值,调节各个虚拟机的资源分配比例。
7.如权利要求6所述的虚拟机资源分配***,其特征在于,所述总资源分配值计算模块根据以下公式计算所述虚拟机的总资源分配值:
Weight=w1×F(x)+w2×G(x,t)+w3×H(y)+w4×I(n)
其中,Weight是所述虚拟机的总资源分配值,w1、w2、w3和w4分别为预先设定的各种资源分配值的权重,F(x)为所述虚拟机的I/O操作资源分配值,G(x,t)为所述虚拟机的实时响应资源分配值,H(y)为所述虚拟机的运算资源分配值,I(n)为所述虚拟机的通信资源分配值。
8.如权利要求7所述的虚拟机资源分配***,其特征在于,
所述操作资源分配值计算模块根据以下公式计算所述虚拟机的I/O操作资源分配值:
F ( x ) = x &times; 20 x &OverBar; 0 &le; x < 1 2 &times; x &OverBar; 10 + 60 x &OverBar; &times; ( x - 1 2 &times; x &OverBar; ) 1 2 &times; x &OverBar; &le; x < x &OverBar; 40 + 20 ( &alpha; - 1 ) x &OverBar; &times; ( x - x &OverBar; ) x &OverBar; &le; x < &alpha; &times; x &OverBar; 60 + 20 &alpha; x &OverBar; &times; ( x - &alpha; &times; x &OverBar; ) &alpha; &times; x &OverBar; &le; x < 2 &times; &alpha; &times; x &OverBar; min { 80 2 &times; &alpha; &times; x &OverBar; &times; x , 100 } 2 &times; &alpha; &times; x &OverBar; &le; x
其中,F(x)为所述虚拟机的I/O操作资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及
Figure FDA0000365077400000052
为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,α为预先设定的常数,且α>2;
所述实时响应资源分配值计算模块根据以下公式计算所述虚拟机的实时响应资源分配值:
G ( x , t ) = 100 - 40 &delta; t &OverBar; &times; t 0 < t < &delta; &times; t &OverBar; , &beta; &times; x &OverBar; &le; x 60 - 30 ( 1 - &delta; ) t &OverBar; &times; ( t - &delta; t &OverBar; ) &delta; &times; t &OverBar; &le; t < t &OverBar; , &beta; &times; x &OverBar; &le; x max { 130 - 100 t &OverBar; &times; t , 0 } t &OverBar; &le; t , &beta; &times; x &OverBar; &le; x 0 &beta; &times; x &OverBar; > x
其中,G(x,t)为所述虚拟机的实时响应资源分配值,x为虚拟机单位时间I/O操作次数的统计值,及为主机上运行的所有虚拟机单位时间I/O操作次数的平均值,t为虚拟机VCPU单次执行时间的统计值,
Figure FDA0000365077400000055
为主机上运行的所有虚拟机的VCPU单次执行时间的平均值,β、δ为预先设定的常数,且β>2、 &delta; &le; 1 2 ;
所述运算资源分配值计算模块根据以下公式计算所述虚拟机的运算资源分配值:
H ( y ) = min { 100,50 + 50 &theta; y &OverBar; &times; ( y - &theta; y &OverBar; ) } &theta; &times; y &OverBar; &le; y 30 + 20 ( &theta; - 1 ) y &OverBar; &times; ( y - y &OverBar; ) y &OverBar; &le; y < &theta; &times; y &OverBar; 30 y &OverBar; &times; y y < y &OverBar; ,
其中,H(y)为所述虚拟机的运算资源分配值,y为虚拟机单位时间指令队列深度的统计值,
Figure FDA0000365077400000063
为主机上运行的所有虚拟机的单位时间指令队列深度的平均值,θ为预先设定的常数,且θ≥2;
并且,所述通信资源分配值计算模块根据以下公式计算所述虚拟机的通信资源分配值:
I ( n ) = min { 100,50 + 50 &rho; n - &times; ( n - &rho; n &OverBar; ) &rho; &times; n &OverBar; &le; n 30 + 20 ( &rho; - 1 ) n &OverBar; &times; ( n - n &OverBar; ) n &OverBar; &le; n < &rho; &times; n &OverBar; 30 n &OverBar; &times; n n < n &OverBar; ,
其中,I(n)为所述虚拟机的通信资源分配值,n为虚拟机单位时间收发数据包数目的统计值,
Figure FDA0000365077400000065
为主机上运行的所有虚拟机的单位时间收发数据包数目的平均值,ρ为预先设定的常数,且ρ≥2。
9.如权利要求7所述的虚拟机资源分配***,其特征在于,进一步包括优先级调整模块,所述优先级调整模块用于根据用户指令,调整各种资源分配值的权重。
10.如权利要求6至9中任一项所述的虚拟机资源分配***,其特征在于,所述资源调度模块计算各个所述虚拟机的总资源分配值的总和,并计算各个所述虚拟机的总资源分配值与所述总和的比值,根据所述比值调整各个虚拟机占用的资源分配比例。
CN201110421298XA 2011-12-15 2011-12-15 一种虚拟机资源分配方法及其*** Active CN102521055B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110421298XA CN102521055B (zh) 2011-12-15 2011-12-15 一种虚拟机资源分配方法及其***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110421298XA CN102521055B (zh) 2011-12-15 2011-12-15 一种虚拟机资源分配方法及其***

Publications (2)

Publication Number Publication Date
CN102521055A CN102521055A (zh) 2012-06-27
CN102521055B true CN102521055B (zh) 2013-12-11

Family

ID=46291990

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110421298XA Active CN102521055B (zh) 2011-12-15 2011-12-15 一种虚拟机资源分配方法及其***

Country Status (1)

Country Link
CN (1) CN102521055B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103974149A (zh) * 2013-02-01 2014-08-06 鼎点视讯科技有限公司 分配带宽方法及装置
CN103220362A (zh) * 2013-04-23 2013-07-24 深圳市京华科讯科技有限公司 服务器虚拟化一体机
CN103455378A (zh) * 2013-09-05 2013-12-18 华为技术有限公司 一种虚拟化集群的资源分配方法、装置和***
CN105224406B (zh) * 2014-07-03 2019-03-15 深圳市腾讯计算机***有限公司 一种输入输出指令处理的方法及装置
CN105511959B (zh) * 2014-10-16 2021-03-19 腾讯科技(深圳)有限公司 虚拟资源分配方法和装置
CN106170769B (zh) * 2014-12-11 2020-01-21 华为技术有限公司 确定虚拟机资源的方法、装置及程序产品
CN106325999A (zh) * 2015-06-30 2017-01-11 华为技术有限公司 一种分配宿主机资源的方法和装置
CN106533723B (zh) * 2015-09-11 2020-10-23 南京中兴软件有限责任公司 虚拟资源调度方法、装置及***
CN106095554B (zh) * 2016-06-17 2019-08-23 中国银行股份有限公司 在日间联机阶段进行批量数据处理的方法及装置
CN109918192B (zh) * 2017-12-25 2022-02-18 郑州云海信息技术有限公司 一种用于服务器的bmc资源分配方法
CN112579177A (zh) * 2019-09-27 2021-03-30 宝能汽车集团有限公司 Hypervisor的CPU配置方法、***以及车辆、存储介质
CN111078402A (zh) * 2019-12-03 2020-04-28 广州西麦科技股份有限公司 一种快速提供实验环境的资源池***

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8767535B2 (en) * 2007-07-11 2014-07-01 Hewlett-Packard Development Company, L.P. Dynamic feedback control of resources in computing environments
JP5256744B2 (ja) * 2008-01-16 2013-08-07 日本電気株式会社 資源割当てシステム、資源割当て方法及びプログラム
CN101719082B (zh) * 2009-12-24 2013-01-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其***
CN101894047B (zh) * 2010-06-24 2013-11-13 北京航空航天大学 一种基于内核虚拟机调度策略的实现方法
CN102012835B (zh) * 2010-12-22 2013-03-27 北京航空航天大学 一种支持软实时应用的虚拟cpu调度方法
CN102185759A (zh) * 2011-04-12 2011-09-14 田文洪 一种满足需求特性的多物理服务器负载均衡的方法及装置

Also Published As

Publication number Publication date
CN102521055A (zh) 2012-06-27

Similar Documents

Publication Publication Date Title
CN102521055B (zh) 一种虚拟机资源分配方法及其***
CN101488098B (zh) 基于虚拟计算技术的多核计算资源管理***
Vijayakumar et al. Dynamic resource provisioning for data streaming applications in a cloud environment
CN104991830B (zh) 基于服务等级协议的yarn资源分配和节能调度方法及***
CN107003887B (zh) Cpu超载设置和云计算工作负荷调度机构
Boyer et al. Load balancing in a changing world: dealing with heterogeneity and performance variability
CN103605567B (zh) 面向实时性需求变化的云计算任务调度方法
Zhang et al. Integrating resource consumption and allocation for infrastructure resources on-demand
CN102253857B (zh) 一种多核环境下的Xen虚拟机调度控制方法
CN102611622A (zh) 一种弹性云计算平台下工作负载的调度方法
CN104881325A (zh) 一种资源调度方法和资源调度***
CN104503838A (zh) 一种虚拟cpu调度方法
CN104021040A (zh) 基于时间约束条件下的云计算关联任务调度方法和装置
CN103365700A (zh) 一种面向云计算虚拟化环境的资源监测和调整***
Blagodurov et al. Maximizing server utilization while meeting critical SLAs via weight-based collocation management
Abawajy An efficient adaptive scheduling policy for high-performance computing
CN102339233A (zh) 云计算集中管理平台
Ma et al. Dynamic task scheduling in cloud computing based on greedy strategy
Tian et al. An online parallel scheduling method with application to energy-efficiency in cloud computing
Wang et al. Dependency-aware network adaptive scheduling of data-intensive parallel jobs
Li et al. Adaptive priority-based data placement and multi-task scheduling in geo-distributed cloud systems
CN105404549A (zh) 基于yarn架构的虚拟机调度***
CN105607943A (zh) 一种云环境下虚拟机动态部署机制
CN102609316A (zh) 一种网络计算资源的管理***及方法
CN107070965B (zh) 一种虚拟化容器资源下的多工作流资源供给方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant