预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN109885381A(43)申请公布日2019.06.14(21)申请号201910116994.6(22)申请日2019.02.15(71)申请人合肥谐桐科技有限公司地址230031安徽省合肥市望江西路69号西湖国际A1307(72)发明人花志强(74)专利代理机构上海智信专利代理有限公司31002代理人王洁郑暄(51)Int.Cl.G06F9/455(2006.01)G06F9/50(2006.01)权利要求书3页说明书7页附图1页(54)发明名称基于KVM虚拟化实现内存份额调度管理的方法及其系统(57)摘要本发明涉及一种基于KVM虚拟化实现内存份额调度管理的方法,包括以下步骤:(1)初始化虚拟机及虚拟机内存管理服务模块;(2)通过份额算法计算虚拟机对应的份额内存;(3)判断系统剩余内存是否达到配置系统预留内存阈值,如果是,则虚拟机内存管理模块按照内存份额值的比例进行分配,降低虚拟机的已使用内存;否则,退出步骤。本发明还涉及一种基于KVM虚拟化实现内存份额调度管理的系统。采用了本发明的基于KVM虚拟化实现内存份额调度管理的方法及其系统,在主机内存资源足够的情况下,虚拟机可以使用到配置的最大内存;在主机内存资源紧张的情况下,虚拟机可以使用到按照配置内存份额值对应比例的内存,保证了承载关键业务的虚拟机的稳定性。CN109885381ACN109885381A权利要求书1/3页1.一种基于KVM虚拟化实现内存份额调度管理的方法,其特征在于,所述的方法包括以下步骤:(1)初始化虚拟机及虚拟机内存管理服务模块;(2)通过份额算法计算虚拟机对应的份额内存;(3)判断系统剩余内存是否达到配置系统预留内存阈值,如果是,则虚拟机内存管理模块按照内存份额值的比例进行分配,降低虚拟机的已使用内存;否则,退出步骤。2.根据权利要求1所述的基于KVM虚拟化实现内存份额调度管理的方法,其特征在于,所述的步骤(1)具体包括以下步骤:(1.1)为虚拟机增加配置项内存份额和用于查询虚拟机内存份额值的接口;(1.2)在每个计算节点上启动虚拟机内存管理服务模块。3.根据权利要求1所述的基于KVM虚拟化实现内存份额调度管理的方法,其特征在于,所述的步骤(2)具体包括以下步骤:(2.1)虚拟机内存管理服务模块配置系统内存的阈值;(2.2)虚拟机内存管理服务模块根据份额算法计算虚拟机的对应的份额内存。4.根据权利要求1所述的基于KVM虚拟化实现内存份额调度管理的方法,其特征在于,所述的步骤(3)具体包括以下步骤:(3.1)判断主机剩余内存是否到达阈值,如果是,则继续步骤(3.2);否则,退出步骤;(3.2)判断主机剩余内存是否达到阈值的70%,如果是,则继续步骤(3.3);否则,使用virtioballoon方式并根据份额计算调整虚拟机内存,继续步骤(3.1);(3.3)判断主机剩余内存是否达到阈值的40%,如果是,则使用pause虚拟机以及cgroupmemory方式并根据份额计算调整虚拟机内存,继续步骤(3.1);否则,使用cgroupmemory方式并根据份额计算调整虚拟机内存,继续步骤(3.1)。5.根据权利要求1所述的基于KVM虚拟化实现内存份额调度管理的方法,其特征在于,所述的份额算法包括第n个虚拟机的份额内存计算步骤,具体包括以下步骤:(a-1)根据以下公式计算对应第n个虚拟机的份额内存:其中,n为虚拟机的数量,Memsharen为第n个虚拟机配置的内存份额,Memtotal为系统内存,Memreserve为系统预留内存;(a-2)判断第n个虚拟机配置的最大内存值是否低于第n个虚拟机的份额内存值,如果是,则所述的第n个虚拟机无法完全使用份额内存,将第n个虚拟机的份额内存修改为第n个虚拟机配置的最大内存值;否则,不作修改。6.根据权利要求1所述的基于KVM虚拟化实现内存份额调度管理的方法,其特征在于,所述的份额算法还包括第n-1个虚拟机的份额内存计算步骤,具体包括以下步骤:(a-3)根据以下公式计算第n-1个虚拟机的份额内存:其中,n为虚拟机的数量,Memshare为第n-1个虚拟机配置的内存份额,Memtotal为系统内存,Memreserve为系统预留内存;2CN109885381A权利要求书2/3页(a-4)判断第n-1个虚拟机配置的最大内存值是否低于第n-1个虚拟机的份额内存值,如果是,则所述的第n-1个虚拟机无法完全使用份额内存,将第n-1个虚拟机的份额内存修改为第n-1个虚拟机配置的最大内存值;否则,不作修改。7.一种基于KVM虚拟化实现内存份额调度管理的系统,其特征在于,所述的系统包括:虚拟机内存管理服务模块,与外部虚拟机相连接,用于实现虚拟机的内存资源调度;内存