[发明专利]一种虚拟机CPU的限额处理方法和装置有效
申请号: | 201611041074.5 | 申请日: | 2016-11-11 |
公开(公告)号: | CN106775925B | 公开(公告)日: | 2020-08-04 |
发明(设计)人: | 解琰;曾鹏;庞慷宇 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/50 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟机 cpu 限额 处理 方法 装置 | ||
本申请公开了一种虚拟机CPU的限额处理方法和装置,其中,该方法包括:确定虚拟机CPU的数量是否大于绑定的物理CPU的数量;当所述虚拟机CPU的数量大于所述物理CPU的数量时,计算所述物理CPU的数量与所述虚拟机CPU数量的第一比值;利用获取的虚拟机CPU的限额百分比与时间周期的乘积,并乘以所述第一比值,计算所述虚拟机CPU在单位时间内可用CPU的时间;利用libvirt接口设置所述虚拟机CPU在单位时间内可用CPU的时间,对所述虚拟机CPU进行限额。本申请提供的上述虚拟机CPU的限额处理方法和装置,能够采用等比例换算来实现所要达到的CPU限额值,减少了因CPU竞争压力而产生的不利影响,满足了实现此功能的全面性和健壮性,达到了精确管理虚拟机的目的。
技术领域
本发明属于云计算技术领域,特别是涉及一种虚拟机CPU的限额处理方法和装置。
背景技术
Red Hat Enterprise Linux 6提供新的内核功能:控制族群(control group简称C group)。C group可为系统中所运行任务(进程)的用户定义组群分配资源--比如CPU时间、系统内存、网络带宽或者这些资源的组合。Libvirt正是利用这一功能来实现CPU的时间调度,进一步实现虚拟机CPU限额的功能。Libvirt将这一配置作为虚拟机引导时启用,再重启之后重新建立预先定义的C group进而保存CPU的限额配置。
然而,利用上述技术对虚拟机CPU进行限额处理时会出现如下问题:在虚拟机的虚拟CPU数量大于绑定在物理主机逻辑核数量时,所设定的CPU限额值与实际达到的CPU资源额度并不相符。
发明内容
为解决上述问题,本发明提供了一种虚拟机CPU的限额处理方法和装置,能够采用等比例换算来实现所要达到的CPU限额值,减少了因CPU竞争压力而产生的不利影响,满足了实现此功能的全面性和健壮性,达到了精确管理虚拟机的目的。
本发明提供的一种虚拟机CPU的限额处理方法,包括:
确定虚拟机CPU的数量是否大于绑定的物理CPU的数量;
当所述虚拟机CPU的数量大于所述物理CPU的数量时,计算所述物理CPU的数量与所述虚拟机CPU数量的第一比值;
利用获取的虚拟机CPU的限额百分比与时间周期的乘积,并乘以所述第一比值,计算所述虚拟机CPU在单位时间内可用CPU的时间;
利用libvirt接口设置所述虚拟机CPU在单位时间内可用CPU的时间,对所述虚拟机CPU进行限额。
优选的,在上述虚拟机CPU的限额处理方法中,
在所述确定虚拟机CPU的数量是否大于绑定的物理CPU的数量之前还包括:
确定是否已经设定所述虚拟机CPU的份额;
当已经设定所述虚拟机CPU的份额且所述物理CPU资源发生抢占时,根据所述虚拟机CPU的份额来进行资源的调度。
优选的,在上述虚拟机CPU的限额处理方法中,所述根据所述虚拟机CPU的份额来进行资源的调度包括:
利用单个虚拟机已经占有的CPU资源除以所述虚拟机的份额,得到单份额值;
当发生资源抢占时,优先为单份额值小的虚拟机分配所述物理CPU的资源,直至发生资源抢占的所有虚拟机的单份额值全部相等。
优选的,在上述虚拟机CPU的限额处理方法中,所述确定是否已经设定所述虚拟机CPU的份额包括:
查询所述虚拟机的份额值是否为1024,如果是,则确定没有设定所述虚拟机CPU的份额,如果否,则确定设定了所述虚拟机CPU的份额。
本发明提供的一种虚拟机CPU的限额处理装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611041074.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:虚拟机启动方法和装置
- 下一篇:虚拟机的监控方法和系统