一种计算资源调度方法及装置制造方法及图纸

技术编号:14591587 阅读:84 留言:0更新日期:2017-02-08 19:57
本发明专利技术公开了一种计算资源调度方法及装置,用以解决由于服务器虚拟化技术引入的性能开销较大,导致虚拟机处理部分应用的数据时造成数据丢包的问题。该方法为:在虚拟机启动第一应用后,虚拟机会判断在设定应用集合中是否包含该第一应用;在确定包含时,虚拟机直接将能够直通第一物理CPU的第一VCPU配置给该第一应用;在确定不包含时,虚拟机通过VMM为所述第一应用进行硬件计算资源调度。这样,在虚拟机启动设定应用集合中的第一应用时,虚拟机可以将能够与物理CPU直通的第一VCPU直接配置给该第一应用,而无需进行VMM调度,降低了由于服务器虚拟化技术引入的性能开销,保证虚拟机对该第一应用的数据处理效率。

Computing resource scheduling method and device

The invention discloses a computing resource scheduling method and device, is used to solve the performance overhead due to the introduction of server virtualization technology, data packet loss caused by cause the virtual machine processing application data problem. The method is as follows: in the first application of virtual machine, virtual application in setting the opportunity to determine whether the collection contains the first application; in determining contains, the first application for the virtual machine will be able to directly through the first physical CPU first VCPU configuration; not included in determining when the virtual machine with VMM for the first application the hardware computing resource scheduling. So, in the virtual machine to start setting application set in the first application, the virtual machine can be directly with the physical configuration for the first VCPU through CPU to the first application, without the need for VMM scheduling, reduce the performance overhead due to the introduction of server virtualization technology, virtual machine to ensure the efficiency of processing the first application data.

【技术实现步骤摘要】

本专利技术涉及计算机
,尤其涉及一种计算资源调度方法及装置。
技术介绍
随着计算机技术的飞速发展,计算机的能耗和资源利用率引起了研发人员的关注。云计算作为计算机技术中关键的计算模式,需要将所有的计算机抽象成特定的计算资源,然后将这些计算资源提供给用户,而不是像以前传输的计算模式那样,直接为用户提供一台或多台计算机。这种计算模式最大的好处就是用户可以根据自己的需要来申请资源,避免不必要的资源的浪费,提高资源利用率。服务器虚拟化技术是云计算中基于基础设施层的关键技术,即通过对物理服务器进行虚拟化,实现在单台物理服务器上部署多个虚拟机(VirtualMachine,VM),来提高物理服务器的资源利用率,降低使用成本。由于服务器虚拟化技术是基于虚拟机监视器(VirtualMachineMonitor,VMM)实现的,因此,需要在物理服务器的硬件和各虚拟机的虚拟操作系统(即客户操作系统(GuestOperatingSystem,GuestOS))中加入了一层抽象硬件层,所以不可避免的会带来一定的性能开销。例如:在物理服务器是多核操作系统的环境下,虚拟机中运行的应用(Application,APP)被配置到哪个中央处理器(CentralProcessingUnit,CPU)上运行,对该应用最终的性能影响非常大(尤其是在非一致性内存访问(Non-UniformMemoryAccess,NUMA)架构下),而由于部署VMM增加了虚拟硬件层,因此,针对该应用的进行计算资源调度时,需要进行双重调度,即该虚拟机中的客户操作系统的内核(kernel)调度和VMM调度。根据测试,由于上述就算资源调度造成的性能开销并不稳定,可能导致该应用的性能下降50%以上。对于一些对性能要求不高的应用来说,由于服务器虚拟化技术引入的性能开销是可以接受的,对用户体验影响不大。但是,对于一些对性能要求比较严苛的应用来说,上述性能开销可能会对用户体验起到严重的影响。例如,对于视频通信应用,虚拟机可能要非常快速的转发数据,但是由于上述性能开销不稳定,会导致瞬间的转发不及时,造成数据丢包,进而导致视频通信断断续续,严重影响客户体验。
技术实现思路
本专利技术提供一种计算资源调度方法及装置,用以解决现有技术中由于服务器虚拟化技术引入的性能开销较大,导致虚拟机处理部分应用的数据时造成数据丢包,进而影响客户体验的问题。本专利技术提供的具体技术方案如下:一方面,本专利技术实施例提供了一种计算资源调度方法,该方法应用于物理服务器中,其中,在所述物理服务器中的物理CPU包含能够与VCPU直通的物理CPU和不能与VCPU直通的物理CPU,该方法包括以下步骤:在所述物理服务器中的一个虚拟机启动第一应用时,所述虚拟机判断在设定应用集合中是否包含所述第一应用;在所述虚拟机确定所述设定应用集合中包含所述第一应用的情况下,所述虚拟机将能够直通第一物理CPU的第一VCPU配置给所述第一应用;在所述虚拟机确定所述设定应用集合中不包含所述第一应用的情况下,所述虚拟机将不能物理CPU直通的第二VCPU配置给所述第一应用,以使后续所述物理服务器中的VMM将所述第二VCPU调度给不能与VCPU直通的第二物理CPU。通过上述方法,所述虚拟机可以将对性能要求比较严苛的应用配置在设定应用集合中进行维护,当所述虚拟机启动一个应用时,在判定该设定应用集合中存在该应用(即确定该应用为对性能要求严苛的应用)后,可以不通过所述物理服务器中的VMM进行计算资源调度,即所述虚拟机将直通所述第一物理CPU的第一VCPU配置给所述第一应用,而无需进行VMM调度,降低了由于服务器虚拟化技术引入的性能开销,保证所述虚拟机对所述第一应用的数据处理效率,提高了客户体验。在一个可能的设计中,在所述虚拟机启动所述第一应用之前,所述虚拟机确定所述物理服务器中设置的能够与VCPU直通的所述第一物理CPU,并将所述第一物理CPU与所述第一VCPU绑定。在上述方法中,所述虚拟机将所述第一物理CPU与所述虚拟机中的第一VCPU绑定,这样,当所述虚拟机将所述第一VCPU配置给所述第一应用后,所述虚拟机可以直接确定所述第一应用的硬件计算资源为所述第一物理CPU,所述虚拟机可以不通过所述物理机服务器中的VMM进行硬件计算资源调度,而是通过所述虚拟机的客户操作系统的内核调度,实现硬件计算资源调度。在一个可能的设计中,所述设定应用集合中包含的所述多个应用中任一个应用的调度优先级高于不属于所述设定集合的应用的调度优先级。这样,所述虚拟机可以确保在同时启动多个应用时,优先为所述设定应用集合中的应用进行计算资源调度,保证所述设定应用集合中的应用的性能要求。在一个可能的设计中,所述虚拟机可以通过应用对应的服务质量(QualityofService,QoS)参数确定的所述应用的调度优先级。在一个可能的设计中,在所述虚拟机启动所述第一应用之前,所述虚拟机将所述第一VCPU添加到非虚拟化调度列表中;在上述情况下,所述虚拟机通过以下步骤实现将所述第一VCPU配置给所述第一应用:所述虚拟机在所述非虚拟化调度列表中选择所述第一VCPU,并将所述第一VCPU配置给所述第一应用。通过上述方法,所述虚拟机包含的所述非虚拟化调度列表中包含能够直通物理CPU的VCPU,这样,当所述虚拟机启动一个对性能要求严苛的应用后,将非虚拟化调度列表中包含的VCPU配置给所述第一应用。在一个可能的设计中,在所述虚拟机将所述第一VCPU配置给所述第一应用之前,所述虚拟机的内核创建所述第一应用对应的内核线程,所述内核线程为所述第一VCPU在实现所述第一应用的业务时执行的。通过上述方法,后续所述虚拟机将所述第一VCPU配置给所述第一应用后,所述第一VCPU可以执行所述第一应用的业务。这样,该方法可以保证与所述第一VCPU直通的所述第一物理CPU有一个对应的内核线程来维护所述第一应用的运行环境,并保证所述第一应用不通过虚拟化层运行的运行环境。在一个可能的设计中,在所述虚拟机将所述第一VCPU配置给所述第一应用之后,当所述第一VCPU在执行所述内核线程过程中出现异常切换时,所述虚拟机的内核执行所述内核线程直至将所述异常切换处理完成,继续转由所述第一VCPU继续执行所述内核线程。通过上述方法,在所述第一物理CPU运行所述第一应用出现异常切换问题时,所述虚拟机的内核可以保证跳过VMM,直接进行处理,保证所述虚拟机运行所述第一应用的安全性。在一个可能的设计中,所述虚拟机可以解除所述第一VCPU与所述第一物理CPU的绑定,即所述虚拟机将所述第一物理CPU还原为不能与VCPU直通的物理CPU。通过上述方法,所述虚拟机可以实现对能够与VCPU直通和不能与VCPU直通的两种物理CPU进行动态切换迁移,保证物理服务器的计算资源调度的灵活性。又一方面,本专利技术实施例还提供了一种计算资源调度装置,该装置具有实现上述方法实例中虚拟机行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。在一种可能的设计中,所述装置的结构中包括判断单元和处理单元,这些单元可以执行上述方法示例中的相应功能,具体参见方法示例中的详细描述,此处不做赘述。再一方面,本专利技术实施本文档来自技高网
...

【技术保护点】
一种计算资源调度方法,其特征在于,包括:在虚拟机启动第一应用时,所述虚拟机判断在设定应用集合中是否包含所述第一应用,其中,所述设定应用集合中包含多个应用;当所述虚拟机确定在所述设定应用集合中包含所述第一应用时,所述虚拟机将第一虚拟中央处理器VCPU配置给所述第一应用,所述第一VCPU能够直通第一物理中央处理器CPU;当所述虚拟机确定在所述设定应用集合中不包含所述第一应用时,所述虚拟机将第二VCPU配置给所述第一应用,并通过所述虚拟机所属的物理服务器中的虚拟机监视器VMM将所述第二VCPU调度给第二物理CPU,所述第二VCPU不能直通所述第二物理CPU;其中,所述第一物理CPU和所述第二物理CPU均为所述物理服务器中的物理CPU。

【技术特征摘要】
1.一种计算资源调度方法,其特征在于,包括:在虚拟机启动第一应用时,所述虚拟机判断在设定应用集合中是否包含所述第一应用,其中,所述设定应用集合中包含多个应用;当所述虚拟机确定在所述设定应用集合中包含所述第一应用时,所述虚拟机将第一虚拟中央处理器VCPU配置给所述第一应用,所述第一VCPU能够直通第一物理中央处理器CPU;当所述虚拟机确定在所述设定应用集合中不包含所述第一应用时,所述虚拟机将第二VCPU配置给所述第一应用,并通过所述虚拟机所属的物理服务器中的虚拟机监视器VMM将所述第二VCPU调度给第二物理CPU,所述第二VCPU不能直通所述第二物理CPU;其中,所述第一物理CPU和所述第二物理CPU均为所述物理服务器中的物理CPU。2.如权利要求1所述的方法,其特征在于,在所述虚拟机启动所述第一应用之前,所述方法还包括:所述虚拟机确定所述物理服务器中的所述第一物理CPU;所述虚拟机将所述第一物理CPU与所述第一VCPU绑定。3.如权利要求1或2所述的方法,其特征在于,所述设定应用集合中包含的所述多个应用中任一个应用的调度优先级高于不属于所述设定集合的应用的调度优先级。4.如权利要求1-3任一项所述的方法,其特征在于,在所述虚拟机启动所述第一应用之前,所述方法还包括:所述虚拟机将所述第一VCPU添加到非虚拟化调度列表中;所述虚拟机将所述第一VCPU配置给所述第一应用,包括:所述虚拟机在所述非虚拟化调度列表中选择所述第一VCPU,并将所述第一VCPU配置给所述第一应用。5.如权利要求1-4任一项所述的方法,其特征在于,在所述虚拟机将所述第一VCPU配置给所述第一应用之前,所述方法还包括:所述虚拟机的内核创建所述第一应用对应的内核线程,所述内核线程为所述第一VCPU在实现所述第一应用的业务时执行的。6.如权利要求5所述的方法,其特征在于,在所述虚拟机将所述第一VCPU配置给所述第一应用之后,所述方法还包括:当所述第一VCPU在执行所述内核线程过程中出现异常切换时,所述虚拟机的内核执行所述内核线程直至将所述异常切换处理完成。7.如权利要求2所述的方法,其特征在于,所述方法还包括:所述虚拟机解除所述第一VCPU与所述第一物理CPU的绑定。8.一种计算资源调度装置,其特征在于,包括:判断单元,用于在所述装置启动第一应用时,判断在设定应用集合中是否包含所述第一应用,其中,所述设定应用集合中包括多个应用;处理单元,用于当所述判断单元确定在所述设定应用集合中包含所述第一应用时,将第一虚拟中央处理器VCPU配置给所述第一应用,所述第一VCPU能够直通第一物理中央处理器CPU;以及当所述判断单元确定在所述设...

【专利技术属性】
技术研发人员:李瑞联保罗·梦迪特刘力力
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1