CN106325999A - 一种分配宿主机资源的方法和装置 - Google Patents

一种分配宿主机资源的方法和装置 Download PDF

Info

Publication number
CN106325999A
CN106325999A CN201510374813.1A CN201510374813A CN106325999A CN 106325999 A CN106325999 A CN 106325999A CN 201510374813 A CN201510374813 A CN 201510374813A CN 106325999 A CN106325999 A CN 106325999A
Authority
CN
China
Prior art keywords
virtual machine
resource specification
weights
resource
value
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.)
Pending
Application number
CN201510374813.1A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510374813.1A priority Critical patent/CN106325999A/zh
Priority to PCT/CN2016/080255 priority patent/WO2017000645A1/zh
Publication of CN106325999A publication Critical patent/CN106325999A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Abstract

本发明提供了一种分配宿主机资源的方法和一种管理服务器,包括:获取应用所需多个虚拟机的资源规格;根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;按照虚拟机权值从大到小的顺序申请分配宿主机资源。本发明通过应用所需虚拟机按照权值统一排序后再进行分配,大大提高了宿主机的资源利用率。

Description

一种分配宿主机资源的方法和装置
技术领域
本发明涉及信息技术领域,尤其涉及一种分配宿主机资源的方法及装置。
背景技术
云计算技术实现了对业务对底层资源的屏蔽。业务运行在宿主机中的虚拟机上,在多个宿主机、虚拟机的情况下,宿主机的资源利用率是跟虚拟机的分配算法密切相关的。
例如,有两个宿主机hostA和hostB,他们的资源规格都是8核CPU,8G字节内存,需要在这两个宿主机上运行3个虚拟机VM1、VM2和VM3,其中VM1和VM2的资源规格为4核CPU、4G字节内存,VM3的资源规格为8核CPU、8G字节内存。显然运行利用率最高的分配方式为:VM1和VM2运行在一个宿主机上,VM3运行在另一个宿主机上。这样,资源利用率达到了100%。
现有技术中,管理系统分配宿主机资源时,对上层应用提供了创建虚拟机(Virtual Machine)的接口,若上层需创建多个虚拟机,则需要调用多次。例如,根据上面的例子,第一次调用接口创建VM1,则管理系统分配hostA上创建VM1。第二次调用接口创建VM2,管理系统将因为hostB上剩余资源更多而把VM2创建在hostB上。当第三次调用接口创建VM3时,由于HostA、HostB上剩余资源均不能满足VM3所需资源,创建失败。由此导致系统资源利用率只有50%。可见,管理系统在进行资源分配时存在资源利用率不足的问题。
发明内容
为克服现有技术的缺陷,本发明实施例提供了一种分配宿主机资源的方法。所述方法的技术方案如下:
第一方面,本发明实施例提供了一种分配宿主机资源的方法,包括:
获取应用所需多个虚拟机的资源规格;
根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;
按照虚拟机权值从大到小的顺序申请分配宿主机资源。
在第一方面的第一种可能的实现方式中,所述资源规格包括虚拟机的CPU值,虚拟机的内存值,或者虚拟机外部存储器值。
在第一方面的第二种可能的实现方式中,所述排序规则包括各资源规格所占的权重,所述虚拟机的权值为各资源规格的权值所占权重的和。
在第一方面的第三种可能的实现方式中,所述资源规格的权值为归一化的值,所述资源规格的归一化值为虚拟机的资源规格值除以资源规格的最小值。
在第一方面的第四种可能的实现方式中,所述应用所需多个虚拟机的资源规格是通过一次性调用接口获取的,或者是通过读取应用信息获取的。
第二方面,本发明实施例提供了一种管理服务器,包括获取模块,排序模块,以及分配模块,其中:
所述获取模块,用于获取应用所需多个虚拟机的资源规格;
所述排序模块,用于根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;
所述分配模块,用于按照虚拟机权值从大到小的顺序申请分配宿主机资源。
在第二方面的第一种可能的实现方式中,所述资源规格包括虚拟机的CPU值,虚拟机的内存值,或者虚拟机外部存储器值。
在第二方面的第二种可能的实现方式中,所述排序规则包括各资源规格所占的权重,所述虚拟机的权值为各资源规格的权值所占权重的和。
在第二方面的第三种可能的实现方式中,所述资源规格的权值为归一化的值,所述资源规格的归一化值为虚拟机的资源规格值除以资源规格的最小值。
在第二方面的第四种可能的实现方式中,所述应用所需多个虚拟机的资源规格是所述获取模块通过一次性调用接口获取的,或者是通过读取应用信息获取的。
本发明实施例提供的上述技术方案通过应用所需虚拟机按照权值统一排序后再进行分配,大大提高了宿主机的资源利用率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获取其他的附图。
图1为本发明实施例提供的一种系统架构图;
图2为本发明实施例提供的一种分配宿主机资源的方法流程图;
图3为本发明实施例提供的一种管理服务器的结构示意图;
图4为本发明实施例提供的另一种管理服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下获取的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种分配宿主机资源的系统,如图1所示,系统包括上层应用、管理服务器、宿主机。
上层应用是提供业务的应用程序。而管理服务器用于获取应用所需多个虚拟机的资源规格;根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;按照虚拟机权值从大到小的顺序申请分配宿主机资源。宿主机用于运行分配的虚拟机。
本发明实施例还提供一种分配宿主机资源的方法,应用于如图1所示的系统,特别是其中的管理服务器中。该方法如图2所示,包括下列步骤:
201,获取应用所需多个虚拟机的资源规格;
202,根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;
203,按照虚拟机权值从大到小的顺序申请分配宿主机资源。
上述资源规格包括虚拟机的CPU值,虚拟机的内存值,或者虚拟机所需的外部存储器值。而所述排序规则包括各资源规格所占的权重,虚拟机的权值为各资源规格的权值所占权重的和。所述资源规格的权值为归一化的值,所述资源规格的归一化值为虚拟机的资源规格值除以资源规格的最小值。
本发明实施例通过应用所需虚拟机按照权值统一排序后再进行分配,大大提高了宿主机的资源利用率。
下面进一步举例来说明本发明,假设图1所示的系统中的宿主机有两个,hostA和hostB,他们的资源规格都是8核CPU,8G字节内存。分配宿主机资源的实现过程具体包括:
201A,管理服务器获取应用所需多个虚拟机的资源规格。
假设应用需要在这两个宿主机上运行3个虚拟机VM1、VM2和VM3,它们的资源规格需求分别为2核CPU、2G字节内存;3核CPU、4G字节内存;以及5核CPU、6G字节内存。应用可以通过一次性调用接口向管理服务器申请分配这3个虚拟机,也可以由管理服务器读取应用信息获取虚拟机资源规格。一个虚拟机的资源规格还可以包括外部存储器,如硬盘空间等。
202A,管理服务器根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序。
排序规则用于确定虚拟机排序的计算规则,可以预先设置。排序规则包括各资源规格所占的权重。例如,可以设CPU值和内存值的权重各为50%。对于计算量较大的应用,可以提高CPU值的权重。例如,CPU值的权重为70%,内存值的权重为30%。这样更有利于合理安排资源。如果资源规格还包括外部存储器,则CPU值、内存值、外部存储器值的权重的和为100%。
计算虚拟机权值时首先把各资源规格归一化,权值的计算方法为虚拟机的资源规格值除以资源规格的最小值。本实施例中,3个虚拟机VM1、VM2和VM3的CPU值分别为2核、3核、5核,最小的CPU值为2核,则VM1的CPU权值为1,VM2的CPU权值为1.5,VM3的CPU权值为2.5。而VM1、VM2和VM3的内存值分别为2G字节、4G字节、6G字节。最小的内存值为2G字节,则VM1的内存权值为1,VM2的内存权值为2,VM3的内存权值为3。
虚拟机各资源规格的权值计算出来后,各权值乘以权重后得到的总和就是虚拟机的权值。假设本例子中,CPU值的权重为70%,内存值的权重为30%。则各虚拟机权值如下:
VM1的权值=1*70%+1*30%=1;
VM2的权值=1.5*70%+2*30%=1.65;
VM3的权值=2.5*70%+3*30%=2.65;
各虚拟机权值计算出来后,可按照从大到小的顺序进行培训。上述例子中,排序的结果为:VM3、VM2、VM1。
203A,管理服务器按照虚拟机权值从大到小的顺序申请分配宿主机资源。
排序完成后,按照从大到小顺序申请分配宿主机资源。本实施例中,先分配VM3,VM3将分配到宿主机hostA中,再分配VM2,将分配到hostB中,这样宿主机hostA上未分配资源为3核CPU、2G内存,hostB上未分配资源为5核CPU、4G内存。最后分配VM1时,由于hostB上资源更多,可以分配VM1到hostB上。
本发明实施例通过业务所需虚拟机按照权值统一排序后再进行分配,大大提高了宿主机的资源利用率。
本发明实施例还提供一种管理服务器,用于实施上述图2所示的方法实施例。具体如图3所示,本发明实施例提供的一种管理服务器包括:
获取模块301,用于获取应用所需多个虚拟机的资源规格;
排序模块302,用于根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;
分配模块303,用于按照虚拟机权值从大到小的顺序申请分配宿主机资源。
上述资源规格包括虚拟机的CPU值,虚拟机的内存值,或者虚拟机外部存储器值。排序规则可包括各资源规格所占的权重,所述虚拟机的权值为各资源规格的权值所占权重的和。所述资源规格的权值为归一化的值,所述资源规格的归一化值为虚拟机的资源规格值除以资源规格的最小值。所述应用所需多个虚拟机的资源规格是所述获取模块通过一次性调用接口获取的,或者是通过读取应用信息获取的。
本发明实施例提供的上述技术方案通过应用所需虚拟机按照权值统一排序后再进行分配,大大提高了宿主机的资源利用率。
图4所示的是本发明实施例提供的管理服务器的另一种结构示意图,采用通用计算机系统结构,执行本发明方案的程序代码保存在存储器中,并由处理器来控制执行。管理服务器包括:处理器401,存储器402,通信接口403。
处理器可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路application-specific integrated circuit(ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。
计算机系统中包括的一个或多个存储器,可以是一种非易失性的计算机可读存储介质,例如只读存储器read-only memory(ROM)或可存储静态信息和指令的其他类型的静态存储设备,也可以是磁盘存储器。这些存储器可通过总线与处理器相连接。存储器,保存有执行本发明方案的程序代码,例如,执行图2所示实施例的方法的程序。执行本发明方案的程序代码保存在存储器中,并由处理器来控制执行。
通信接口,可以使用任何收发器一类的装置,以便与其他设备或通信网络通信,如以太网,无线接入网(RAN),无线局域网(WLAN)等.
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,各单元具体功能的执行过程参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
总之,以上所述仅为本发明技术方案的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种分配宿主机资源的方法,其特征在于,包括:
获取应用所需多个虚拟机的资源规格;
根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;
按照虚拟机权值从大到小的顺序申请分配宿主机资源。
2.如权利要求1所述的方法,其特征在于:所述资源规格包括虚拟机的CPU值,虚拟机的内存值,或者虚拟机外部存储器值。
3.如权利要求1或2所述的方法,其特征在于:所述排序规则包括各资源规格所占的权重,所述虚拟机的权值为各资源规格的权值所占权重的和。
4.如权利要求3所述的方法,其特征在于:所述资源规格的权值为归一化的值,所述资源规格的归一化值为虚拟机的资源规格值除以资源规格的最小值。
5.如权利要求1-4任一项所述的方法,其特征在于:所述应用所需多个虚拟机的资源规格是通过一次性调用接口获取的,或者是通过读取应用信息获取的。
6.一种管理服务器,其特征在于,包括获取模块,排序模块,以及分配模块,其中:
所述获取模块,用于获取应用所需多个虚拟机的资源规格;
所述排序模块,用于根据排序规则和所述虚拟机的资源规格,对所述多个虚拟机的权值进行排序;
所述分配模块,用于按照虚拟机权值从大到小的顺序申请分配宿主机资源。
7.如权利要求6所述的管理服务器,其特征在于:所述资源规格包括虚拟机的CPU值,虚拟机的内存值,或者虚拟机外部存储器值。
8.如权利要求6或7所述的管理服务器,其特征在于:所述排序规则包括各资源规格所占的权重,所述虚拟机的权值为各资源规格的权值所占权重的和。
9.如权利要求8所述的管理服务器,其特征在于:所述资源规格的权值为归一化的值,所述资源规格的归一化值为虚拟机的资源规格值除以资源规格的最小值。
10.如权利要求6-9任一项所述的管理服务器,其特征在于:所述应用所需多个虚拟机的资源规格是所述获取模块通过一次性调用接口获取的,或者是通过读取应用信息获取的。
CN201510374813.1A 2015-06-30 2015-06-30 一种分配宿主机资源的方法和装置 Pending CN106325999A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510374813.1A CN106325999A (zh) 2015-06-30 2015-06-30 一种分配宿主机资源的方法和装置
PCT/CN2016/080255 WO2017000645A1 (zh) 2015-06-30 2016-04-26 一种分配宿主机资源的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510374813.1A CN106325999A (zh) 2015-06-30 2015-06-30 一种分配宿主机资源的方法和装置

Publications (1)

Publication Number Publication Date
CN106325999A true CN106325999A (zh) 2017-01-11

Family

ID=57607588

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510374813.1A Pending CN106325999A (zh) 2015-06-30 2015-06-30 一种分配宿主机资源的方法和装置

Country Status (2)

Country Link
CN (1) CN106325999A (zh)
WO (1) WO2017000645A1 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106872811A (zh) * 2015-12-10 2017-06-20 中国船舶工业系统工程研究院 一种基于信号特征的测试通道分配方法
CN107748691A (zh) * 2017-10-30 2018-03-02 平安科技(深圳)有限公司 虚拟机部署方法、装置、设备及计算机可读存储介质
CN107861794A (zh) * 2017-11-13 2018-03-30 郑州云海信息技术有限公司 一种在云计算系统中建立虚拟机的方法和装置
CN109753353A (zh) * 2017-11-07 2019-05-14 阿里巴巴集团控股有限公司 虚拟机资源分配方法、装置及电子设备
CN113312150A (zh) * 2021-06-21 2021-08-27 中国电信股份有限公司 边缘云的带宽保障方法及相关设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189556B (zh) * 2018-08-29 2022-08-12 郑州云海信息技术有限公司 一种基于负载均衡的亲和性规则冲突监测方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101449258A (zh) * 2006-05-18 2009-06-03 微软公司 基于工作负载表征将虚拟机部署到主机
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统
CN102096461A (zh) * 2011-01-13 2011-06-15 浙江大学 基于虚拟机迁移和负载感知整合的云数据中心节能方法
US20120179446A1 (en) * 2011-01-07 2012-07-12 International Business Machines Corporation Rapidly determining fragmentation in computing environments
CN102929701A (zh) * 2012-10-17 2013-02-13 北京搜狐新媒体信息技术有限公司 一种批量虚拟机的调度方法及装置
US20130080641A1 (en) * 2011-09-26 2013-03-28 Knoa Software, Inc. Method, system and program product for allocation and/or prioritization of electronic resources
CN103617076A (zh) * 2013-10-31 2014-03-05 中兴通讯股份有限公司 一种虚拟化资源的调度方法和系统及服务端

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102521055B (zh) * 2011-12-15 2013-12-11 广州杰赛科技股份有限公司 一种虚拟机资源分配方法及其系统
CN103336722B (zh) * 2013-07-16 2017-09-26 上海大学 一种虚拟机cpu资源监控和动态分配方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101449258A (zh) * 2006-05-18 2009-06-03 微软公司 基于工作负载表征将虚拟机部署到主机
CN101719082A (zh) * 2009-12-24 2010-06-02 中国科学院计算技术研究所 虚拟化计算平台中应用请求调度的方法及其系统
US20120179446A1 (en) * 2011-01-07 2012-07-12 International Business Machines Corporation Rapidly determining fragmentation in computing environments
CN102096461A (zh) * 2011-01-13 2011-06-15 浙江大学 基于虚拟机迁移和负载感知整合的云数据中心节能方法
US20130080641A1 (en) * 2011-09-26 2013-03-28 Knoa Software, Inc. Method, system and program product for allocation and/or prioritization of electronic resources
CN102929701A (zh) * 2012-10-17 2013-02-13 北京搜狐新媒体信息技术有限公司 一种批量虚拟机的调度方法及装置
CN103617076A (zh) * 2013-10-31 2014-03-05 中兴通讯股份有限公司 一种虚拟化资源的调度方法和系统及服务端

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106872811A (zh) * 2015-12-10 2017-06-20 中国船舶工业系统工程研究院 一种基于信号特征的测试通道分配方法
CN107748691A (zh) * 2017-10-30 2018-03-02 平安科技(深圳)有限公司 虚拟机部署方法、装置、设备及计算机可读存储介质
CN109753353A (zh) * 2017-11-07 2019-05-14 阿里巴巴集团控股有限公司 虚拟机资源分配方法、装置及电子设备
CN109753353B (zh) * 2017-11-07 2023-04-18 阿里巴巴集团控股有限公司 虚拟机资源分配方法、装置及电子设备
CN107861794A (zh) * 2017-11-13 2018-03-30 郑州云海信息技术有限公司 一种在云计算系统中建立虚拟机的方法和装置
CN113312150A (zh) * 2021-06-21 2021-08-27 中国电信股份有限公司 边缘云的带宽保障方法及相关设备

Also Published As

Publication number Publication date
WO2017000645A1 (zh) 2017-01-05

Similar Documents

Publication Publication Date Title
CN106325999A (zh) 一种分配宿主机资源的方法和装置
CN109684065B (zh) 一种资源调度方法、装置及系统
CN103180830B (zh) 中央处理器资源分配方法和计算节点
CN103797462B (zh) 一种创建虚拟机的方法和装置
US9846589B2 (en) Virtual machine placement optimization with generalized organizational scenarios
US8825863B2 (en) Virtual machine placement within a server farm
US9634958B2 (en) Burst capacity for user-defined pools
US9542223B2 (en) Scheduling jobs in a cluster by constructing multiple subclusters based on entry and exit rules
CN104484220B (zh) 虚拟化集群的动态资源调度的方法及装置
CN103051564B (zh) 资源动态调配的方法和装置
US8930957B2 (en) System, method and program product for cost-aware selection of stored virtual machine images for subsequent use
US20140297866A1 (en) User-defined pools
US9483503B2 (en) Placing a database
US10243815B2 (en) Methods and systems to evaluate data center resource allocation costs
CN104598316B (zh) 一种存储资源分配方法及装置
CN109417488A (zh) 虚拟网络功能资源管理的方法和设备
US20190205168A1 (en) Grouping of tasks for distribution among processing entities
CN107968810A (zh) 一种服务器集群的资源调度方法、装置和系统
CN107864211A (zh) 集群资源调度方法及系统
US20170351545A1 (en) Balancing categorized task queues in a plurality of processing entities of a computational device
CN107977773A (zh) 一种管理多个云平台的多项目资源额度的方法
CN112905342A (zh) 资源调度方法、装置、设备及计算机可读存储介质
García et al. An efficient cloud scheduler design supporting preemptible instances
US20240005446A1 (en) Methods, systems, and non-transitory storage media for graphics memory allocation
CN107589980A (zh) 一种云计算资源的调度方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170111

RJ01 Rejection of invention patent application after publication