基于应用负载感知的虚拟cpu调度方法与流程

文档序号:12463478阅读:590来源:国知局
基于应用负载感知的虚拟cpu调度方法与流程

本发明涉及计算机系统的云计算和虚拟化技术领域,特别是涉及到一种基于应用负载感知的虚拟cpu调度方法。



背景技术:

系统虚拟化使得多个虚拟机能同时安全地运行在同一台物理机上,充分利用了物理资源,有效地防止了数据中心的服务器蔓延并节省了能源。多核处理器的出现扩大了虚拟化技术的优势,在基于多核物理平台的虚拟机系统中,处于虚拟机与硬件层之间的虚拟机监视器能采用灵活的策略将物理CPU分配给上面的虚拟机,从而有效地满足虚拟机的资源需求。随着工作负载的动态变化,它还能动态地重新分配物理CPU。虚拟机中的VCPU可以分时复用所有的PCPU,也可以指定特定的物理CPU,这给虚拟机系统的资源分配带来更大弹性和可管理性。虚拟机VCPU调度器主要负责PCPU在各个虚拟机之间的分配与调度,本质上即把各个虚拟机中的VCPU 按照一定的策略和机制调度在PCPU上。由于虚拟机系统中的各个虚拟机所运行的负载呈现多样化的特性,如何满足各个虚拟机的性能要求,同时提高系统的整体性能,是虚拟机VCPU调度重点关注的问题.虚拟机VCPU调度是影响虚拟机系统性能的一个关键因素。



技术实现要素:

本发明的目的是提供一种基于应用负载感知的虚拟cpu调度方法。该方法依据地震资料处理和解释生成中不同应用软件资源需求特点,对应用程序进行类别划分,在应用类别划分的基础上,依据负载感知对虚拟机或者增加VCPU的数量,或者按照增量递增按需减少的原则再配置VCPU,调整VCPU的资源。

本发明的目的可通过如下技术措施来实现:

虚拟桌面管理云管理平台将物理cpu资源作为云服务提供给用户使用,虚拟桌面在实例化过程中要将cpu资源按照初始配置策略部署到虚拟机,当虚拟机运行应用时,动态调度虚拟机的VCPU,这使是一种基于应用负载感知的虚拟cpu调度方法。

该方法包括:

步骤1,采集虚拟机VM应用性能参数;

步骤2,依据虚拟机VM应用参数,对VM进行评价,依据评价结果,对虚拟机应用类型进行推断;

步骤3,依据应用负载能耗感知方式,对VCPU进行公平调度,组合VCPU和PCPU映射关系;

步骤4,依据调度结果对VCPU进行绑定和热添加。

其中:

在步骤1中,根据应用分类及资源在VM工作过程中的作用,选择以下3个参数进行VM应用类型划分:

(1)CPU:考察VM的CPU的利用率;

(2)DiskIO:考察VM的磁盘IO吞吐率;

(3)NetworkIO:考察VM的网络IO吞吐率,用网卡的速度来度量。

在步骤1中,根据各参数在划分过程中的权重和不同资源在虚拟机应用中的作用,分派不同的权值,上述3类资源的权值分别表示如下:

(1)CPU:P1;

(2)DiskIO:P2;

(3)NetworkIO:P3;其中,P1+P2+P3=1。

在步骤2中,参数数据的评价方法是:通过下式计算得出VM当前的资源值,资源值=CPU*P1+DiskIO*P2+Network*P3,根据资源值评价推断VM应用类型,进行划分,实现虚拟机VM应用类型推断。

在步骤3中,首先依据应用负载,确定是增加VCPU的数量或增加单个VCPU的资源;然后依据应用负载能耗感知方式,对VCPU进行公平调度,组合VCPU和PCPU映射关系。

本发明的目的还可通过如下技术措施来实现:

在步骤1中,根据应用分类及资源在VM工作过程中的作用,选择以下3个参数进行VM应用类型划分。

本发明方法依据依据地震资料处理和解释生成中不同应用软件资源需求特点,根据应用分类及资源在VM工作过程中的作用,选择以下3个参数进行VM应用类型划分:CPU,考察VM的CPU的利用率;DiskIO,考察VM的磁盘IO吞吐率;NetworkIO,考察VM的网络IO吞吐率对应用程序进行类别划分,在此基础上,依据负载感知对虚拟机或者增加VCPU的数量,或者按照增量递增按需减少的原则再配置VCPU,调整VCPU的资源。按应用划分虚拟桌面的场景,采用虚拟桌面cpu资源动态分配技术有效提升主机的资源使用效率,提升用户应用性能。经实际部署测试,能有效提升CPU使用率10%-20%。

附图说明

图1为本发明的基于应用负载感知的虚拟cpu调度方法的一具体实施例的流程图;

图2是虚拟机运行的VCPU由4个变为6个状态截图;

图3是当应用负载降低时,VCPU由4个缩减为3个状态截图。

具体实施方式

为使本发明的上述和其他目的、特征和优点能更明显易懂,下文特举出较佳实施例,并配合所附图式,作详细说明如下。

如图1所示,本发明的基于应用负载感知的虚拟cpu调度方法的流程图。

在步骤101,进行虚拟机VM应用性能参数采集,作为应用类型评价的依据。流程进入到步骤102。

在步骤102,根据一段时间内采集的虚拟机VM性能信息平均值,计算虚拟机VM资源值。(1)CPU:P1;(2)DiskIO:P2;(3)NetworkIO:P3;其中,P1+P2+P3=1。资源值=CPU*P1+DiskIO*P2+NetworkIO*P3。依据应用参数和评价方法对VM进行评价。依据评价结果对虚拟机应用类型进行推断,流程进入到步骤103。

在步骤103,依据应用负载,确定是增加VCPU的数量或增加单个VCPU的资源。流程进入到步骤104。

在步骤104,依据应用负载能耗感知策略,对VCPU进行公平调度。流程进入到步骤105。

在步骤105,依据应用负载能耗感知策略增加单个VCPU资源。流程进入到步骤106。

在步骤106,依据调度结果对VCPU进行绑定和热添加。

应用效果

在实际的生产环境中,经过应用负载感知调度算法调度后,虚拟机运行的VCPU由4个变为6个,如图3所示。当应用负载降低时,由4个VCPU缩减为3个。

适应了应用程序的需求。该方法依据地震资料处理和解释生成中不同应用软件资源需求特点,对应用程序进行类别划分,在应用类别划分的基础上,依据负载感知对虚拟机或者增加VCPU的数量,或者按照增量递增按需减少的原则再配置VCPU,调整VCPU的资源。按应用划分虚拟桌面的场景,采用虚拟桌面cpu资源动态分配技术有效提升主机的资源使用效率,提升用户应用性能。经实际部署测试,能有效提升CPU使用率10%-20%。针对某个应用桌面,当它的cpu使用率、网络IO、磁盘IO达到了设置的阀值或触发了某种条件,可以通过应用负载感知策略给该桌面动态热添加cpu,或增加单个cpu资源提高用户的应用性能。给某个桌面分配cpu时,应当遵循最低配额和最高配额原则。初始分配时遵循最低配额,动态扩展时遵循最高配额原则。通过应用负载感知算法,可以解决多个VM公平,高效共享多个物理cpu的问题。应用类型划分为网络IO密集型虚拟机应用、磁盘IO密集型虚拟机应用、CPU密集型虚拟机应用、异构型虚拟机应用;对于单种虚拟机应用,只考虑单种负载因素,对虚拟机应用性能进行评价。对于异构型虚拟机应用,根据资源各参数在虚拟机应用中的作用,分派不同的权值,在一定时间段内,对虚拟机应用性能进行组合评价。依据评价结果,调度VCPU共享PCPU。

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