CN102937912B - 虚拟机调度方法和设备 - Google Patents

虚拟机调度方法和设备 Download PDF

Info

Publication number
CN102937912B
CN102937912B CN201210494726.6A CN201210494726A CN102937912B CN 102937912 B CN102937912 B CN 102937912B CN 201210494726 A CN201210494726 A CN 201210494726A CN 102937912 B CN102937912 B CN 102937912B
Authority
CN
China
Prior art keywords
resource pool
virtual machine
objective
source
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
CN201210494726.6A
Other languages
English (en)
Other versions
CN102937912A (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.)
Guangdong Gaohang Intellectual Property Operation Co ltd
Haining hi tech Zone Science and Innovation Center 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 CN201210494726.6A priority Critical patent/CN102937912B/zh
Publication of CN102937912A publication Critical patent/CN102937912A/zh
Priority to PCT/CN2013/077775 priority patent/WO2014082442A1/zh
Application granted granted Critical
Publication of CN102937912B publication Critical patent/CN102937912B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5011Pool

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明提供一种虚拟机调度方法和设备。该方法包括确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为VCPU的数量与物理内核的数量的比值;选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备设定的足够资源;将所述源资源池上的虚拟机迁移到所述目标资源池上。本发明实施例可以保证虚拟机调度时的CPU服务质量。

Description

虚拟机调度方法和设备
技术领域
本发明涉及通信技术,尤其涉及一种虚拟机调度方法和设备。
背景技术
网络中各类业务长时间运行后会造成云计算资源池内各物理计算节点负载不均,从而导致业务效率降低,资源浪费,需要通过负载均衡调度平衡各物理计算节点的负载。目前最常用的负载均衡技术是基于物理计算节点的中央处理器(CentralProcessUnit,CPU)占用率的负载均衡调度。这种调度方式下资源管理系统定期采集各物理计算节点的CPU占用率,通过比对各物理计算节点的CPU占用率和预先设定的重载阈值来判定物理计算节点是否重载从而触发虚拟机调度。调度时系统先选出轻载计算节点,通过比对物理计算节点CPU占用率和预先设定的轻载阈值来判定物理计算节点是否轻载。系统将轻载的物理计算节点作为目标节点,将重载的物理计算节点作为源节点,当触发调度时开始从源节点向目标节点迁移虚拟机,当目标节点的CPU占用率达到均衡阈值且源节点的CPU占用率还高于重载阈值时重新选择目标节点继续迁移虚拟机。源节点CPU占用率低于重载阈值后停止虚拟机迁移。
但是,该调度方案只关注物理计算节点的CPU占用率,不能保证调度后虚拟机的CPU服务质量。
发明内容
有鉴于此,本发明实施例提供了一种虚拟机调度方法和设备,用以解决现有的负载均衡调度方案不能保证CPU服务质量的问题。
第一方面,提供了一种虚拟机调度方法,包括:
确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为VCPU的数量与物理内核的数量的比值;
选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备设定的足够资源;
将所述源资源池上的虚拟机迁移到所述目标资源池上。
结合第一方面,在第一方面的第一种可能的实现方式中,所述目标资源池具备设定的足够资源,包括:
当(X+Y)<=N×(M+K)时,所述目标资源池具备设定的足够资源,其中,X为源资源池的VCPU的数量,Y为目标资源池原有的VCPU的数量,N为源资源池和目标资源池的复用比,M为目标资源池的物理内核的数量,K为目标资源池能够从另外资源池获取的物理内核的数量。
结合第一方面,在第一方面的第二种可能的实现方式中,所述确定源资源池的复用比,包括:
与所述源物理计算节点进行信令交互,获取所述源资源池的资源信息,所述资源信息包括所述源资源池包括的物理内核的数量以及所述源资源池包括的虚拟机列表;
根据所述虚拟机列表确定所述源资源池包括的VCPU的数量;
根据所述VCPU的数量和所述物理内核的数量,确定所述复用比。
结合第一方面,在第一方面的第三种可能的实现方式中,还包括:
获取每个资源池内每个虚拟机的中央处理器CPU占用率,根据每个虚拟机的CPU占用率得到所有虚拟机的CPU占用率总和,以及获取每个资源池的物理内核的数量;
将所述虚拟机的CPU占用率总和与所述物理内核的数量的比值,确定为所述资源池的CPU占用率;
将所述资源池的CPU占用率超过设定的重载阈值的资源池确定为所述源资源池;
所述将所述源资源池上的虚拟机迁移到所述目标资源池上,包括:
在待迁移的虚拟机的CPU占用率与所述目标资源池的原有的CPU占用率之和小于或等于所述重载阈值时,将所述源资源池上的虚拟机迁移到所述目标资源池上。
结合第一方面,在第一方面的第四种可能的实现方式中,还包括:
与每个物理计算节点交互,获取每个资源池的资源信息,所述资源信息包括虚拟机列表,并在虚拟机启动、创建、迁移、停止或删除时,更新每个资源池的虚拟机列表。
结合第一方面或第一方面的第一种至第四种任一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述选取目标资源池,包括:
在所述目标物理计算节点上存在与所述源资源池复用比相同,且具备设定的足够资源的资源池时,将所述资源池选取为所述目标资源池;或者,
在所述目标物理计算节点上不存在与所述源资源池复用比相同的资源池,或者,存在与所述源资源池复用比相同的资源池但所述资源池不具备设定的足够资源时,如果所述目标物理计算节点上存在另外的资源冗余的资源池,则降低所述另外的资源冗余的资源池中的资源,将降低的资源分配给所述目标资源池。
第二方面,提供了一种虚拟机调度设备,包括:
确定模块,用于确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为VCPU的数量与物理内核的数量的比值;
选取模块,用于选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备设定的足够资源;
迁移模块,用于将所述源资源池上的虚拟机迁移到所述目标资源池上。
结合第二方面,在第二方面的第一种可能的实现方式中,所述选取模块选取的目标资源池具备设定的足够资源包括:
当(X+Y)<=N×(M+K)时,所述目标资源池具备设定的足够资源,其中,X为源资源池的VCPU的数量,Y为目标资源池原有的VCPU的数量,N为源资源池和目标资源池的复用比,M为目标资源池的物理内核的数量,K为目标资源池能够从另外资源池获取的物理内核的数量。
结合第二方面,在第二方面的第二种可能的实现方式中,所述确定模块具体用于:
与所述源物理计算节点进行信令交互,获取所述源资源池的资源信息,所述资源信息包括所述源资源池包括的物理内核的数量以及所述源资源池包括的虚拟机列表;
根据所述虚拟机列表确定所述源资源池包括的VCPU的数量;
根据所述VCPU的数量和所述物理内核的数量,确定所述复用比。
结合第二方面,在第二方面的第三种可能的实现方式中,还包括:
处理模块,用于获取每个资源池内每个虚拟机的中央处理器CPU占用率,根据每个虚拟机的CPU占用率得到所有虚拟机的CPU占用率总和,以及获取每个资源池的物理内核的数量;将所述虚拟机的CPU占用率总和与所述物理内核的数量的比值,确定为所述资源池的CPU占用率;将所述资源池的CPU占用率超过设定的重载阈值的资源池确定为所述源资源池;
所述迁移模块具体用于:在待迁移的虚拟机的CPU占用率与所述目标资源池的原有的CPU占用率之和小于或等于所述重载阈值时,将所述源资源池上的虚拟机迁移到所述目标资源池上。
结合第二方面,在第二方面的第四种可能的实现方式中,还包括:
更新模块,用于与每个物理计算节点交互,获取每个资源池的资源信息,所述资源信息包括虚拟机列表,并在虚拟机启动、创建、迁移、停止或删除时,更新每个资源池的虚拟机列表。
结合第二方面或第二方面的第一种至第四种任一种可能的实现方式,在第二方面的第五种可能的实现方式中,所述选取模块具体用于:
在所述目标物理计算节点上存在与所述源资源池复用比相同,且具备设定的足够资源的资源池时,将所述资源池选取为所述目标资源池;或者,
在所述目标物理计算节点上不存在与所述源资源池复用比相同的资源池,或者,存在与所述源资源池复用比相同的资源池但所述资源池不具备设定的足够资源时,如果所述目标物理计算节点上存在另外的资源冗余的资源池,则降低所述另外的资源冗余的资源池中的资源,将降低的资源分配给所述目标资源池。
通过上述技术方案,在虚拟机调度时,将具有相同复用比的资源池作为迁移虚拟机的目标资源池,由于相同复用比的资源池具有相同的CPU服务质量,因此经过虚拟机调度后可以保证CPU服务质量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明虚拟机调度方法一实施例的流程示意图;
图2为本发明实施例中物理计算节点划分资源池的示意图;
图3为本发明实施例中资源池一种更新情况示意图;
图4为本发明实施例中资源池另一种更新情况示意图;
图5为本发明实施例中虚拟机调度的一种示意图;
图6为本发明虚拟机调度方法另一实施例的流程示意图;
图7为本发明实施例中虚拟机调度的另一种示意图;
图8为本发明虚拟机调度设备一实施例的结构示意图;
图9为本发明虚拟机调度设备另一实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明虚拟机调度方法一实施例的流程示意图,包括:
11:调度节点确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为VCPU的数量与物理内核的数量的比值;
12:调度节点选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备用于承载所述源资源池的虚拟机的足够资源;
13:调度节点将所述源资源池上的虚拟机迁移到所述目标资源池上。
每个物理计算节点的CPU都有多个物理内核,底层的操作系统进程与内核绑定技术可以控制虚拟机的虚拟CPU(VirtualCPU,VCPU)进程跑在不同的物理内核上,从而隔离不同虚拟机对CPU资源使用上的冲突。
可以通过将物理计算节点的CPU划分为多个资源池,不同的资源池具有不同的CPU服务质量(QualityofService,QoS)。具体可以根据复用比划分资源池,复用比是指资源池内VCPU的数量与该资源池内物理内核的数量之比。
对于同一个资源池内的虚拟机(VirtualMachine,VM),需要保证在资源池内的所有虚拟机业务最繁忙时都要满足虚拟机的CPU服务质量。根据底层CPU公平调度的算法,每个虚拟机可以获取的CPU资源与资源池内VCPU的数量和物理内核数量相关,当资源池内所有虚拟机都繁忙时每个VCPU可以获取的物理CPU资源为物理内核数/VCPU总数。
基于上述原理,通过控制资源池内物理内核的数量和VCPU的数量即可保证虚拟机的CPU服务质量。
如图2所示,可以根据复用比划分资源池,每个资源池具有各自的复用比。例如,物理计算节点A可以划分为高性能资源池、普通资源池和默认资源池。高性能资源池的复用比为1:1,普通资源池的复用比为2:1,默认资源池的复用比为4:1。也就是说,高性能资源池内的每个VCPU可独占一个物理内核,每个VCPU最繁忙时也可以获得100%计算能力的保障;普通资源池内的一个VCPU可以与另一个VCPU共站一个物理内核,每个VCPU最繁忙时每个VCPU可以获得50%计算能力的保障;默认资源池内的VCPU一个物理内核上可以运行4个VCPU,当每个VCPU都繁忙时,每个VCPU可以获得25%计算能力的保障。
调度节点可以收集每个物理计算节点的资源池的资源信息,资源信息包括每个资源池内的物理内核的数量以及虚拟机列表。例如,调度节点通过信令交互可以获知高性能资源池内的物理内核数量为6,虚拟机列表包括VM1-1、VM1-2、VM2-1、VM2-2、VM2-3和VM2-4。通过该资源信息可以确定资源池的复用比,以便在重载时迁移到相同复用比的资源池。
另外,在虚拟机启动、创建、迁移、停止或删除时,每个资源池还可以进行扩张或者收缩。
如图3所示,在普通资源池内虚拟机启动、创建、迁入时,可以压缩默认资源池,扩张普通资源池。例如,普通资源池内增加一个VM。或者,
如图4所示,在普通资源池内虚拟机停止、删除、迁出时,可以收缩普通资源池,扩张默认资源池。例如,普通资源池内减少一个VM。
本实施例中,在虚拟机迁移时,不仅考虑CPU占用率,而且在具有相同复用比的资源池内迁移。例如,参见图5,存在两个物理计算节点,分别为物理计算节点A和物理计算节点B,左部分为迁移前两个物理计算节点的VM的情况,右部分为迁移后两个物理计算节点的VM的情况。其中,每个物理计算节点分为3个资源池,同一平面的两个资源池具有相同的复用比,即两个物理计算节点的顶部的资源池具有相同的复用比,中部的资源池具有相同的复用比,底部的资源池具有相同的复用比。
在负载均衡时,虚拟机在具有相同的复用比的资源池内迁移,如,物理计算节点A的顶部资源池的一个VM迁移到物理计算节点B的顶部资源池,物理计算节点A的中部资源池的一个VM迁移到物理计算节点B的中部资源池,物理计算节点B的底部资源池的一个VM迁移到物理计算节点A的地部资源池。由于在相同复用比的资源池内迁移,可以保证CPUQoS。
本实施例通过将虚拟机迁移到与其源资源池具有相同复用比的资源池,由于复用比相同,可以保证相同的CPU服务质量,因此,本实施例的虚拟机调度可以实现负载均衡且保证CPU服务质量。
图6为本发明虚拟机调度方法另一实施例的流程示意图,包括:
61:调度节点判断是否存在重载资源池,若是,执行62,否则执行67。
其中,调度节点可以通过与物理计算节点的交互,获取每个资源池的信息,该信息可以包括每个资源池内每个虚拟机的CPU占用率,以及每个资源池内包括的物理内核数量。
根据该信息可以确定每个资源池的CPU占用率,计算公式可以为:
每个资源池的CPU占用率=该资源池内所有虚拟机的CPU占用率总和/该资源池内包括的物理内核数量。
另外,调度节点可以设置重载阈值,当某个资源池的CPU占用率超过该重载阈值,则该资源池为重载资源池。
62:调度节点确定重载资源池的复用比。
上述调度节点与资源池交换的信息中还可以包括虚拟机信息,根据该虚拟机信息可以确定出一个资源池内包括的VCPU的数量,之后可以计算得到一个资源池的复用比=该资源池内包括的VCPU的数量/该资源池内包括的物理内核的数量。
63:调度节点判断在重载资源池内是否选取到待迁移的虚拟机,若是,执行64,否则执行67。
其中,在设置时可能将某些虚拟机绑定,不能进行迁移,因此,选取的待迁移的虚拟机是能够迁移到另外资源池的虚拟机。
64:调度节点判断是否选取到目标资源池,若是,执行65,否则执行67。
其中,目标资源池满足如下条件:
与重载资源池具有相同的复用比,且,资源足够。
资源足够是指:假设待迁移的虚拟机的VCPU的数量为X,目标资源池已有的VCPU的数量为Y,目标资源池的物理内核数量为M,同时通过挤压低等级资源池可获取的物理内核数量为K,目标资源池和重载资源池的复用比为N:1,那么当(X+Y)<=N×(M+K)时则表明资源足够,否则资源不足。其中,可获取的物理内核数量K是指能够被挤压的资源池的物理内核数量,例如,每个物理计算节点上的默认存在默认资源池,其余资源池,如普通资源池和高性能资源池都是在默认资源池的基础上挤压得到的,即,将默认资源池的物理内核分配给其余资源池使用。那么可挤压的资源池的物理内核数量就是当前的默认资源池内包括的物理内核的数量。
可选的,目标资源池可以是目标物理计算节点上原有的,即原有的与源资源池的复用比相同且资源足够的资源池,或者,目标资源池也可以是目标物理计算节点上从其余资源池挤压得到的,例如,目标资源池上原有的资源池仅是默认资源池,而源资源池是普通资源池,那么在默认资源池存在冗余资源时,可以从默认资源池内挤压出部分资源,这些部分资源组成普通资源池,作为目标资源池使用;或者,源资源池是普通资源池,而目标物理计算节点上的原有的普通资源池的资源不足够,而默认资源池的资源冗余时,则也可以从默认资源池内挤压出部分资源,将该部分资源增加到原有的普通资源池内,与原有的资源共同组成目标资源池。
65:调度节点将待迁移的虚拟机迁移到目标资源池。
可选的,在迁移之前,也可以判断目标资源池的负载情况,在判断出目标资源池在增加待迁移的虚拟机后也不超载时再进行迁移,即,在待迁移的虚拟机的CPU占用率与目标资源池的原有的CPU占用率之和小于或等于目标资源池的设定的重载阈值时,将所述源资源池上的虚拟机迁移到所述目标资源池上。
66:调度节点判断迁移出虚拟机的重载资源池是否依然重载,若是,重复执行63及其后续步骤,否则执行67。
67:结束。
本实施例中,例如,参见图7,假设存在物理计算节点A和物理计算节点B,物理计算节点A的复用比为1:1的资源池重载,物理计算节点B的复用比为2:1和4:1的资源池重载,经过上述流程后,可以将物理计算节点A的复用比1:1的资源池的虚拟机迁移到物理计算节点B的复用比1:1的资源池,将物理计算节点B的复用比2:1的资源池的虚拟机迁移到物理计算节点A的复用比2:1的资源池,将物理计算节点B的复用比4:1的资源池的虚拟机迁移到物理计算节点A的复用比4:1的资源池。
可以理解的是,本实施例以物理计算节点A和物理计算节点B之间的负载均衡调度为例,也可以是物理计算节点A将的重载迁移到物理计算节点B,而物理计算节点B将复用比2:1的资源池的虚拟机迁移到物理计算节点C的复用比2:1的资源池。
本实施例通过将虚拟机迁移到具有相同复用比的资源池,可以保证虚拟机CPU的服务质量,实现既可以保证用户体验不受影响,同时达到服务器负载均衡的效果。
图8为本发明虚拟机调度设备一实施例的结构示意图,该设备包括确定模块81、选取模块82和迁移模块83;确定模块81用于确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为VCPU的数量与物理内核的数量的比值;选取模块82用于选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备设定的足够资源;迁移模块83用于将所述源资源池上的虚拟机迁移到所述目标资源池上。
可选的,所述选取模块选取的目标资源池具备设定的足够资源包括:
当(X+Y)<=N×(M+K)时,所述目标资源池具备设定的足够资源,其中,X为源资源池的VCPU的数量,Y为目标资源池原有的VCPU的数量,N为源资源池和目标资源池的复用比,M为目标资源池的物理内核的数量,K为目标资源池能够从另外资源池获取的物理内核的数量。
可选的,所述确定模块具体用于:
与所述源物理计算节点进行信令交互,获取所述源资源池的资源信息,所述资源信息包括所述源资源池包括的物理内核的数量以及所述源资源池包括的虚拟机列表;
根据所述虚拟机列表确定所述源资源池包括的VCPU的数量;
根据所述VCPU的数量和所述物理内核的数量,确定所述复用比。
可选的,该设备还包括:
处理模块,用于获取每个虚拟机的CPU占用率,根据每个虚拟机的CPU占用率得到每个资源池内所有虚拟机的CPU占用率总和,以及获取每个资源池的物理内核的数量;将所述虚拟机的CPU占用率总和与所述物理内核的数量的比值,确定为所述资源池的CPU占用率;将所述资源池的CPU占用率超过设定的重载阈值的资源池确定为所述源资源池;所述迁移模块具体用于:在待迁移的虚拟机的CPU占用率与所述目标资源池的原有的CPU占用率之和小于或等于所述重载阈值时,将所述源资源池上的虚拟机迁移到所述目标资源池上。
可选的,该设备还包括:
更新模块,用于与每个物理计算节点交互,获取每个资源池的资源信息,所述资源信息包括虚拟机列表,并在虚拟机启动、创建、迁移、停止或删除时,更新每个资源池的虚拟机列表。
可选的,所述选取模块具体用于:
在所述目标物理计算节点上存在与所述源资源池复用比相同,且具备设定的足够资源的资源池时,将所述资源池选取为所述目标资源池;或者,
在所述目标物理计算节点上不存在与所述源资源池复用比相同的资源池,或者,存在与所述源资源池复用比相同的资源池但所述资源池不具备设定的足够资源时,如果所述目标物理计算节点上存在另外的资源冗余的资源池,则降低所述另外的资源冗余的资源池中的资源,将降低的资源分配给所述目标资源池。
另外,如图9所示,本发明实施例还提供一种通信设备,该通信设备可以为虚拟机调度服务器,该通信设备90包括发射电路902、接收电路903、功率控制器904、处理器905,存储器906及天线901。处理器905控制设备90的操作,处理器905还可以称为CPU。存储器906可以包括只读存储器和随机存取存储器,并向处理器905提供指令和数据。存储器906的一部分还可以包括非易失行随机存取存储器(NVRAM)。发射电路902和接收电路903可以耦合到天线901,天线可以是无线形式,也可以是有线形式的网线、光纤等。设备90的各个组件通过总线系统9100耦合在一起,其中,总线系统9100除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都标为总线系统9100。
上述本发明实施例揭示的方法可以应用于处理器905中,或者说由处理器905以实现。处理器905可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器905中的硬件的集成逻辑电路或者软件形式的指令完成。用于执行本发明实施例揭示的方法,上述的处理器905可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器906,处理器905读取存储器906中的信息,结合其硬件完成上述方法的步骤。而上述方法中的消息可以通过发射电路902和接收电路903予以发送或者接收。
具体而言,该设备可以包括处理器,处理器具体用于:确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为VCPU的数量与物理内核的数量的比值;选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备设定的足够资源;将所述源资源池上的虚拟机迁移到所述目标资源池上。
可选的,所述目标资源池具备设定的足够资源,包括:
当(X+Y)<=N×(M+K)时,所述目标资源池具备设定的足够资源,其中,X为源资源池的VCPU的数量,Y为目标资源池原有的VCPU的数量,N为源资源池和目标资源池的复用比,M为目标资源池的物理内核的数量,K为目标资源池能够从另外资源池获取的物理内核的数量。
可选的,处理器具体用于:与所述源物理计算节点进行信令交互,获取所述源资源池的资源信息,所述资源信息包括所述源资源池包括的物理内核的数量以及所述源资源池包括的虚拟机列表;根据所述虚拟机列表确定所述源资源池包括的VCPU的数量;根据所述VCPU的数量和所述物理内核的数量,确定所述复用比。
可选的,处理器还用于获取每个资源池内每个虚拟机的CPU占用率,根据每个虚拟机的CPU占用率得到所有虚拟机的CPU占用率总和,以及获取每个资源池的物理内核的数量;将所述虚拟机的CPU占用率总和与所述物理内核的数量的比值,确定为所述资源池的CPU占用率;将所述资源池的CPU占用率超过设定的重载阈值的资源池确定为所述源资源池;以及,具体用于在待迁移的虚拟机的CPU占用率与所述目标资源池的原有的CPU占用率之和小于或等于所述重载阈值时,将所述源资源池上的虚拟机迁移到所述目标资源池上。
可选的,处理器还用于与每个物理计算节点交互,获取每个资源池的资源信息,所述资源信息包括虚拟机列表,并在虚拟机启动、创建、迁移、停止或删除时,更新每个资源池的虚拟机列表。
可选的,处理器具体用于:在所述目标物理计算节点上存在与所述源资源池复用比相同,且具备设定的足够资源的资源池时,将所述资源池选取为所述目标资源池;或者,在所述目标物理计算节点上不存在与所述源资源池复用比相同的资源池,或者,存在与所述源资源池复用比相同的资源池但所述资源池不具备设定的足够资源时,如果所述目标物理计算节点上存在另外的资源冗余的资源池,则降低所述另外的资源冗余的资源池中的资源,将降低的资源分配给所述目标资源池。
本实施例通过将虚拟机迁移到具有相同复用比的资源池,可以保证虚拟机CPU的服务质量,实现既可以保证用户体验不受影响,同时达到服务器负载均衡的效果。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种虚拟机调度方法,其特征在于,包括:
确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为虚拟中央处理器VCPU的数量与物理内核的数量的比值;
选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备设定的足够资源;
将所述源资源池上的虚拟机迁移到所述目标资源池上;
所述目标资源池具备设定的足够资源,包括:
当(X+Y)<=N×(M+K)时,所述目标资源池具备设定的足够资源,其中,X为源资源池的VCPU的数量,Y为目标资源池原有的VCPU的数量,N为源资源池和目标资源池的复用比,M为目标资源池的物理内核的数量,K为目标资源池能够从另外资源池获取的物理内核的数量。
2.根据权利要求1所述的方法,其特征在于,所述确定源资源池的复用比,包括:
与所述源物理计算节点进行信令交互,获取所述源资源池的资源信息,所述资源信息包括所述源资源池包括的物理内核的数量以及所述源资源池包括的虚拟机列表;
根据所述虚拟机列表确定所述源资源池包括的VCPU的数量;
根据所述VCPU的数量和所述物理内核的数量,确定所述复用比。
3.根据权利要求1所述的方法,其特征在于,还包括:
获取每个资源池内每个虚拟机的中央处理器CPU占用率,根据每个虚拟机的CPU占用率得到所有虚拟机的CPU占用率总和,以及获取每个资源池的物理内核的数量;
将所述虚拟机的CPU占用率总和与所述物理内核的数量的比值,确定为所述资源池的CPU占用率;
将所述资源池的CPU占用率超过设定的重载阈值的资源池确定为所述源资源池;
所述将所述源资源池上的虚拟机迁移到所述目标资源池上,包括:
在待迁移的虚拟机的CPU占用率与所述目标资源池的原有的CPU占用率之和小于或等于所述重载阈值时,将所述源资源池上的虚拟机迁移到所述目标资源池上。
4.根据权利要求1所述的方法,其特征在于,还包括:
与每个物理计算节点交互,获取每个资源池的资源信息,所述资源信息包括虚拟机列表,并在虚拟机启动、创建、迁移、停止或删除时,更新每个资源池的虚拟机列表。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述选取目标资源池,包括:
在所述目标物理计算节点上存在与所述源资源池复用比相同,且具备设定的足够资源的资源池时,将所述资源池选取为所述目标资源池;或者,
在所述目标物理计算节点上存在与所述源资源池复用比相同,但不具备设定的足够资源的资源池时,如果所述目标物理计算节点上存在另外的资源冗余的资源池,则通过降低所述另外的资源冗余的资源池中的资源来生成所述目标资源池。
6.一种虚拟机调度设备,其特征在于,包括:
确定模块,用于确定源资源池的复用比,所述源资源池为源物理计算节点上的重载资源池,所述复用比为虚拟中央处理器VCPU的数量与物理内核的数量的比值;
选取模块,用于选取目标资源池,所述目标资源池为目标物理计算节点上的资源池,且所述目标资源池的复用比与所述源资源池的复用比相同,以及所述目标资源池具备设定的足够资源;
迁移模块,用于将所述源资源池上的虚拟机迁移到所述目标资源池上;
所述选取模块选取的目标资源池具备设定的足够资源包括:
当(X+Y)<=N×(M+K)时,所述目标资源池具备设定的足够资源,其中,X为源资源池的VCPU的数量,Y为目标资源池原有的VCPU的数量,N为源资源池和目标资源池的复用比,M为目标资源池的物理内核的数量,K为目标资源池能够从另外资源池获取的物理内核的数量。
7.根据权利要求6所述的设备,其特征在于,所述确定模块具体用于:
与所述源物理计算节点进行信令交互,获取所述源资源池的资源信息,所述资源信息包括所述源资源池包括的物理内核的数量以及所述源资源池包括的虚拟机列表;
根据所述虚拟机列表确定所述源资源池包括的VCPU的数量;
根据所述VCPU的数量和所述物理内核的数量,确定所述复用比。
8.根据权利要求6所述的设备,其特征在于,还包括:
处理模块,用于获取每个资源池内每个虚拟机的中央处理器CPU占用率,根据每个虚拟机的CPU占用率得到所有虚拟机的CPU占用率总和,以及获取每个资源池的物理内核的数量;将所述虚拟机的CPU占用率总和与所述物理内核的数量的比值,确定为所述资源池的CPU占用率;将所述资源池的CPU占用率超过设定的重载阈值的资源池确定为所述源资源池;
所述迁移模块具体用于:在待迁移的虚拟机的CPU占用率与所述目标资源池的原有的CPU占用率之和小于或等于所述重载阈值时,将所述源资源池上的虚拟机迁移到所述目标资源池上。
9.根据权利要求6所述的设备,其特征在于,还包括:
更新模块,用于与每个物理计算节点交互,获取每个资源池的资源信息,所述资源信息包括虚拟机列表,并在虚拟机启动、创建、迁移、停止或删除时,更新每个资源池的虚拟机列表。
10.根据权利要求6-9任一项所述的设备,其特征在于,所述选取模块具体用于:
在所述目标物理计算节点上存在与所述源资源池复用比相同,且具备设定的足够资源的资源池时,将所述资源池选取为所述目标资源池;或者,
在所述目标物理计算节点上存在与所述源资源池复用比相同,但不具备设定的足够资源的资源池时,如果所述目标物理计算节点上存在另外的资源冗余的资源池,则通过降低所述另外的资源冗余的资源池中的资源来生成所述目标资源池。
CN201210494726.6A 2012-11-28 2012-11-28 虚拟机调度方法和设备 Active CN102937912B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210494726.6A CN102937912B (zh) 2012-11-28 2012-11-28 虚拟机调度方法和设备
PCT/CN2013/077775 WO2014082442A1 (zh) 2012-11-28 2013-06-24 虚拟机调度方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210494726.6A CN102937912B (zh) 2012-11-28 2012-11-28 虚拟机调度方法和设备

Publications (2)

Publication Number Publication Date
CN102937912A CN102937912A (zh) 2013-02-20
CN102937912B true CN102937912B (zh) 2016-06-15

Family

ID=47696811

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210494726.6A Active CN102937912B (zh) 2012-11-28 2012-11-28 虚拟机调度方法和设备

Country Status (2)

Country Link
CN (1) CN102937912B (zh)
WO (1) WO2014082442A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102937912B (zh) * 2012-11-28 2016-06-15 华为技术有限公司 虚拟机调度方法和设备
CN103729252B (zh) * 2013-12-20 2017-09-05 杭州华为数字技术有限公司 一种虚拟机调度的方法及调度监控器
CN105094947B (zh) * 2015-07-28 2018-06-12 中国联合网络通信集团有限公司 一种虚拟计算资源的配额管理方法及系统
CN107301092B (zh) * 2016-04-15 2020-11-10 中移(苏州)软件技术有限公司 一种云计算资源池系统节能方法、装置及系统
CN110119301A (zh) * 2018-02-07 2019-08-13 卓望数码技术(深圳)有限公司 一种虚拟机迁移方法及系统
CN113407317A (zh) * 2018-09-11 2021-09-17 华为技术有限公司 一种资源调度方法及装置
CN109491788B (zh) * 2018-11-01 2022-12-09 郑州云海信息技术有限公司 一种虚拟化平台负载均衡实现方法及装置
CN114221962B (zh) * 2021-12-09 2024-02-13 兴业银行股份有限公司 基于峰值使用率的云化资源重分配方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102117226A (zh) * 2011-03-18 2011-07-06 浪潮(北京)电子信息产业有限公司 一种资源调度系统及资源调度方法
CN102724277A (zh) * 2012-05-04 2012-10-10 华为技术有限公司 虚拟机热迁移和部署的方法、服务器及集群系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8434088B2 (en) * 2010-02-18 2013-04-30 International Business Machines Corporation Optimized capacity planning
CN102937912B (zh) * 2012-11-28 2016-06-15 华为技术有限公司 虚拟机调度方法和设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102117226A (zh) * 2011-03-18 2011-07-06 浪潮(北京)电子信息产业有限公司 一种资源调度系统及资源调度方法
CN102724277A (zh) * 2012-05-04 2012-10-10 华为技术有限公司 虚拟机热迁移和部署的方法、服务器及集群系统

Also Published As

Publication number Publication date
WO2014082442A1 (zh) 2014-06-05
CN102937912A (zh) 2013-02-20

Similar Documents

Publication Publication Date Title
CN102937912B (zh) 虚拟机调度方法和设备
US10990431B2 (en) Virtual machine hot migration method and apparatus, and system
CN102567072B (zh) 一种资源分配方法、装置及系统
CN103180830B (zh) 中央处理器资源分配方法和计算节点
CN105740074A (zh) 一种基于云计算的虚拟机负载均衡方法
JP6669961B2 (ja) プロセッサ、再構成可能回路の制御方法及びプログラム
US20140089921A1 (en) Method and system for managing virtual machine disks
US9354826B2 (en) Capacity expansion method and device
CN111614746A (zh) 云主机集群的负载均衡方法、装置及服务器
CN105893113A (zh) 虚拟机的管理系统及管理方法
CN108132827B (zh) 一种网络切片资源映射方法、相关设备及系统
CN103856548A (zh) 动态资源调度方法和动态资源调度器
CN103984602A (zh) 一种vm资源调度方法、装置及系统
CN104283951A (zh) 一种实例迁移的方法、装置及系统
CN104769573A (zh) 动态分配网络地址
US20210216353A1 (en) Host Upgrade Method and Device
JP2016126562A (ja) 情報処理システム、管理装置、及び情報処理システムの制御方法
CN104917784A (zh) 一种数据迁移方法、装置及计算机系统
CN104391656A (zh) 一种存储设备的io资源分配方法、装置及存储设备
CN106020977A (zh) 用于监控系统的分布式任务调度方法及装置
CN108228350B (zh) 一种资源分配方法及装置
CN111722908B (zh) 一种虚拟机的创建方法、系统、设备以及介质
CN105208111A (zh) 一种信息处理的方法及物理机
CN104281587B (zh) 一种建立连接的方法及装置
CN106325972B (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
TR01 Transfer of patent right

Effective date of registration: 20191218

Address after: 314400 No.11, Weisan Road, Nongfa District, Chang'an Town, Haining City, Jiaxing City, Zhejiang Province

Patentee after: Haining hi tech Zone Science and Innovation Center Co.,Ltd.

Address before: 510000 unit 2414-2416, building, No. five, No. 371, Tianhe District, Guangdong, China

Patentee before: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Effective date of registration: 20191218

Address after: 510000 unit 2414-2416, building, No. five, No. 371, Tianhe District, Guangdong, China

Patentee after: GUANGDONG GAOHANG INTELLECTUAL PROPERTY OPERATION Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right