本发明专利技术实施例提供一种热点域虚拟机CPU调度方法及虚拟机系统。热点域虚拟机的每个vCPU分别绑定有不同的物理CPU,该方法包括:根据获取到的热点域虚拟机的vCPU的使用信息,确定热点域虚拟机的vCPU综合使用率;根据vCPU综合使用率和为热点域虚拟机分配的vCPU的最大个数,确定为热点域虚拟机增加或减少至少一个在线vCPU;增加在线vCPU后,调整与在线vCPU绑定的物理CPU的运行队列上普通域虚拟机的vCPU,使热点域虚拟机在线vCPU在物理CPU上调度,并使普通域虚拟机的vCPU不能在该物理CPU上调度;减少在线vCPU后,调整与被下线vCPU绑定的物理CPU的运行队列上热点域虚拟机的vCPU,使普通域虚拟机的vCPU在该物理CPU上调度。
【技术实现步骤摘要】
【国外来华专利技术】
本专利技术实施例涉及计算机技术,尤其涉及一种热点域虚拟机CPU调度方法及虚拟机系统。
技术介绍
虚拟化技术是一种将底层硬件设备与上层操作系统、应用程序分离的去耦合方法,其引入虚拟机监控器(Virtual Machine Monitor,简称VMM)层来直接管理底层硬件资源,并创建与底层硬件无关的虚拟机(Virtual Machine,简称VM)供上层操作系统和应用程序使用。虚拟机可以分成热点域虚拟机和普通域虚拟机,普通域虚拟机是用户自行创建的,运行普通任务的虚拟机,热点域虚拟机是在系统中起关键作用的,并被普通域虚拟机所依赖的。在不同的虚拟化系统中,热点域虚拟机特征各不相同,比如在有些系统中存在一个驱动域虚拟化,普通域虚拟化通过该驱动域虚拟化实现与物理硬件的交互。在虚拟机系统中,虚拟机并没有真正的物理资源,分配给虚拟机的CPU并不是真实物理CPU,而是VMM分配给虚拟机的虚拟CPU (Virtual Central Processing Unit, 简称vCPU)。在虚拟化环境中,CPU资源存在双重调度,一方面是虚拟机内部的操作系统 (Operation System,简称OS)调度器把线程调度到vCPU上,另一方面VMM调度器把vCPU调度到物理CPU上。虚拟机内部的OS调度器的实现与具体的OS有关,且无法更改,因此VMM 调度器对整个虚拟机系统的性能有着举足轻重的影响。目前VMM调度器普遍采用的调度策略是将普通域虚拟机和热点域虚拟机的vCPU 平等参与调度,因而可能会出现普通域虚拟机抢占热点域虚拟机CPU时间的现象,导致热点域虚拟机的实时性变差,同时也会使普通域虚拟机的请求得不到及时响应,尤其是当虚拟机数量很多时,可能会导致整体性能急剧下降。另一种调度策略是VMM调度器将固定的物理CPU资源分配给热点域虚拟机,默认的vCPU个数与真实物理CPU个数是相关的。系统中的物理CPU数目比较多时,vCPU数量也很多,一方面系统负载比较轻时会造成资源浪费,另一方面在系统负载比较重时,尤其是普通域的vCPU过多的时候,增加热点域虚拟机的vCPU数量并不能提升系统性能。因此,目前的虚拟机系统CPU资源利用率和系统性能较低。
技术实现思路
本专利技术实施例提供一种热点域虚拟机CPU调度方法及虚拟机系统,用以解决现有技术中虚拟机系统CPU资源利用率和系统性能较低的缺陷。本专利技术实施例提供一种热点域虚拟机CPU调度方法,热点域虚拟机的每个虚拟 CPU分别绑定有不同的物理CPU,所述方法包括根据统计到的热点域虚拟机的虚拟CPU的使用信息,确定所述热点域虚拟机的虚拟CPU综合使用率;所述虚拟CPU的使用信息包括所述热点域虚拟机的虚拟CPU利用率和所述热点域虚拟机的虚拟CPU使用时间占用率;根据所述虚拟CPU综合使用率和为所述热点域虚拟机分配的虚拟CPU的最大个数,确定为所述热点域虚拟机增加或减少至少一个在线虚拟CPU ;增加在线虚拟CPU后,调整与所述在线虚拟CPU绑定的物理CPU的运行队列上普通域虚拟机的虚拟CPU,使所述在线虚拟CPU在所述物理CPU上调度,并使普通域虚拟机的虚拟CPU不能在所述物理CPU上调度;减少在线虚拟CPU后,调整与被下线虚拟CPU绑定的物理CPU的运行队列上所述热点域虚拟机的虚拟CPU,使普通域虚拟机的虚拟CPU恢复在所述物理CPU上调度。本专利技术实施例提供一种虚拟机系统,包括热点域虚拟机、普通域虚拟机和虚拟机监控器;所述虚拟机监控器,用于为热点域虚拟机的每个虚拟CPU分别绑定不同的物理 CPU ;所述热点域虚拟机,用于根据获取到的热点域虚拟机的虚拟CPU的使用信息,热点域虚拟机确定所述热点域虚拟机的虚拟CPU综合使用率;根据所述虚拟CPU综合使用率和为所述热点域虚拟机分配的虚拟CPU的最大个数,所述热点域虚拟机增加或减少至少一个在线虚拟CPU ;所述虚拟CPU的使用信息包括所述热点域虚拟机的虚拟CPU利用率和所述热点域虚拟机的虚拟CPU使用时间占用率;所述虚拟机监控器,还用于增加在线虚拟CPU后,虚拟机调度器调整与所述在线虚拟CPU绑定的物理CPU的运行队列上普通域虚拟机的虚拟CPU,使所述在线虚拟CPU在所述物理CPU上调度,并使普通域虚拟机的虚拟CPU不能在所述物理CPU上调度;所述虚拟机监控器,还用于减少在线虚拟CPU后,虚拟机调度器调整与被下线虚拟CPU绑定的物理CPU的运行队列上所述热点域虚拟机的虚拟CPU,使普通域虚拟机的虚拟 CPU在所述物理CPU上调度。本专利技术实施例的热点域虚拟机CPU调度方法及虚拟机系统,热点域虚拟机根据虚拟CPU的使用信息动态调整该热点域虚拟机的在线虚拟CPU数量。在热点域虚拟机的虚拟 CPU负载较高时,为该热点域虚拟机增加在线虚拟CPU,VMM使增加的在线虚拟CPU独占绑定的物理CPU资源,从而普通域虚拟机的在线虚拟CPU不能在该物理CPU上调度,因此,热点域虚拟机的虚拟CPU可在普通域虚拟机的虚拟CPU之前优先使用该物理CPU资源,使热点域虚拟机的虚拟CPU的请求能及时得到响应,避免了普通域虚拟机的虚拟CPU等待热点域虚拟机现象的出现,提高了虚拟系统的整体性能。在热点域虚拟机的虚拟CPU负载较低时, 为该热点域虚拟机删除在线虚拟CPU后,VMM取消热点域虚拟机的虚拟CPU对物理CPU的独占性,使普通域虚拟机的虚拟CPU可参与物理CPU的调度,提高了普通域虚拟机的性能, 避免了 CPU资源的浪费。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图IA为本专利技术实施例提供的一种热点域虚拟机CPU调度方法流程图IB为本专利技术实施例提供的一种虚拟机架构图;图2为本专利技术实施例提供的另一种热点域虚拟机CPU调度方法流程图;图3为本专利技术实施例提供的一种虚拟机系统结构示意图;图4为本专利技术实施例提供的另一种虚拟机系统结构示意图。具体实施例方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提出的热点域虚拟机CPU调度方法根据系统压力大小动态调整热点域虚拟机的VCPU数目,并为其分配独占的物理CPU资源。图IA为本专利技术实施例提供的一种热点域虚拟机CPU调度方法流程图,图IB为本专利技术实施例提供的一种虚拟机架构图。如图IB所示,VMM直接管理底层碣件资源,并创建了与底层硬件无关的VM供上层操作系统和应用程序使用。每个VM包括APPS (应用程序) 和OS调度器。其中,VM包括一个热点域虚拟机和多个普通域虚拟机,热点域虚拟机为每个普通域虚拟机都依赖的虚拟机。虚拟机的vCPU分为在线和离线两种状态,在线vCPU可以被虚拟机的OS使用,同时VMM将它调度到物理CPU上。分配线程后的在线vCPU为非空闲在线vCP本文档来自技高网...
【技术保护点】
1.一种热点域虚拟机CPU调度方法,其特征在于,热点域虚拟机的每个虚拟CPU分别绑定有不同的物理CPU,所述方法包括:根据统计到的热点域虚拟机的虚拟CPU的使用信息,确定所述热点域虚拟机的虚拟CPU综合使用率;所述虚拟CPU的使用信息包括所述热点域虚拟机的虚拟CPU利用率和所述热点域虚拟机的虚拟CPU使用时间占用率;根据所述虚拟CPU综合使用率和为所述热点域虚拟机分配的虚拟CPU的最大个数,确定为所述热点域虚拟机增加或减少至少一个在线虚拟CPU;增加在线虚拟CPU后,调整与所述在线虚拟CPU绑定的物理CPU的运行队列上普通域虚拟机的虚拟CPU,使所述在线虚拟CPU在所述物理CPU上调度,并使普通域虚拟机的虚拟CPU不能在所述物理CPU上调度;减少在线虚拟CPU后,调整与被下线虚拟CPU绑定的物理CPU的运行队列上所述热点域虚拟机的虚拟CPU,使普通域虚拟机的虚拟CPU在所述物理CPU上调度。
【技术特征摘要】
【国外来华专利技术】
【专利技术属性】
技术研发人员:洪凯星,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:94
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。