一种资源管理方法及装置制造方法及图纸

技术编号:16662580 阅读:27 留言:0更新日期:2017-11-30 11:48
本发明专利技术提供一种资源管理方法及装置,上述方法包括以下步骤:获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。上述技术方案中,通过为虚拟机的每一个内存块节点分配合理的虚拟机资源,进一步提升了虚拟机处理性能,保证了系统稳定性。

【技术实现步骤摘要】
一种资源管理方法及装置
本专利技术涉及云计算
,尤其涉及一种资源管理方法及装置。
技术介绍
VNuma(VirtualNonUniformMemoryAccessArchitecture,虚拟非统一内存访问)是一种虚拟机内存访问优化方式,在虚拟机开机前可以根据主机的Numa拓扑结构来创建虚拟机的VNuma拓扑。VNuma对需要高性能虚拟机的环境非常有用,利用VNuma可以根据主机的Numa拓扑结构来对虚拟机内存和处理能力进行分配,虚拟机用户可以在虚拟机内部根据该虚拟拓扑结构利用第三方软件(例如:Eclipse)对CPU和内存进行相应的配置,从而使得虚拟机内部业务在运行时可以优先访问近端内存以减小访问延时,达到提升性能的目的。KVM(Kernel-basedVirtualMachine,基于内核的虚拟机)通过libvirt来对VNuma拓扑进行配置,但是如果配置不合理,则会导致虚拟机发生故障,严重影响业务的正常运行。因此,迫切需要一种资源管理方案来解决上述技术问题。
技术实现思路
本专利技术提供一种资源管理方法及装置,以解决上述问题。本专利技术实施例提供一种资源管理方法,包括以下步骤:获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。本专利技术实施例提供一种资源管理装置,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。本专利技术实施例提供的技术方案:获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。上述技术方案中,通过为虚拟机的每一个内存块节点分配合理的虚拟机资源,进一步提升了虚拟机处理性能,保证了系统稳定性。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1所示为本专利技术实施例1的资源管理方法流程图;图2所示为本专利技术实施例2的资源管理装置结构图。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本专利技术实施例利用libvirt来对KVM虚拟机的内存块节点进行配置,为了达到理想的效果,内存块节点需要反映出底层物理服务器的拓扑结构(包括:内存块节点数量、处理器数量、内存大小等),这样才能使得虚拟机在使用内存时不会频繁地跨节点访问,以此提高虚拟机性能;在虚拟机内部,由于虚拟机的内存块节点拓扑是与服务器的内存块节点拓扑保持一致的,可以管理配置第三方软件的CPU和内存使用,从而使得虚拟机内部业务在运行时也可以优先访问近端内存以减少访问延时;其次,在对虚拟机的内存块节点进行配置时,需要对虚拟机的每一个内存块节点的CPU分布以及内存分配进行严格地限制,从而保证配置了内存块节点的虚拟机能够正常运行。具体而言:首先,在虚拟机开机前需要根据服务器的内存块节点拓扑来配置虚拟机的内存块节点拓扑:1)获取服务器的内存块节点数量;2)如果虚拟机的虚拟处理器数量即vCPU数量是服务器的内存块节点数量的n倍(n为整数),则虚拟机的内存块节点数量等于服务器的内存块节点数量,每个内存块节点的vCPU个数为n,最后将vCPU依次分配给虚拟机的各个内存块节点;3)如果虚拟机的vCPU数量除以服务器的内存块节点数量之后余e(e为大于零的整数),则先按照步骤2进行平均分配,之后再将余下的e个vCPU依次分配给虚拟机的各个内存块节点,直至所有vCPU被分配完毕,最后根据每个内存块节点所包含的vCPU数量依次分配vCPU。其次,在完成虚拟机所有内存块节点的vCPU分配之后,还需要将虚拟机的内存分配给虚拟机的各个内存块节点:1)查询虚拟机所拥有的内存配置2)将虚拟机的内存平均分配给虚拟机的各个内存块节点;3)由于部分操作系统内核限制(如centos6.5),虚拟机的各个内存块节点的内存大小必须是32M的整数倍,否则会引发内核崩溃导致虚拟机故障;4)如果平均分配的内存大小不是32M的整数倍,则每一个虚拟机的内存块节点的内存大小向上取整,直至达到条件;之所以向上取整,是为了防止虚拟机内存热插因为内存块节点内存的调整而出现失败的现象;最后,如果KVM虚拟机开启了CPU热插的功能,那么虚拟机会有两个有关vCPU的参数,一个是虚拟机当前CPU数量,一个是虚拟机最大可配置CPU数量,在进行虚拟机的内存块节点配置的时候,虚拟机的vCPU数量应该按照后者(即虚拟机最大可配置CPU数量)来进行设定,否则会导致部分操作系统无法开机。图1所示为本专利技术实施例1的资源管理方法流程图,包括以下步骤:步骤101:获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;进一步地,获取虚拟机的内存块节点数量、虚拟机的资源数据之前,还包括:获取服务器的内存块节点数量;若所述虚拟机的虚拟处理器数量是所述服务器的内存块节点数量的整数倍,则虚拟机的内存块节点数量等于所述服务器的内存块节点数量。步骤102:根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。进一步地,若所述虚拟机的虚拟处理器数量是所述服务器的内存块节点数量的整数倍n,则为所述虚拟机的每一个内存块节点分配的虚拟处理器数量为n。进一步地,若所述虚拟机的虚拟处理器数量除以服务器的内存块节点数量之后,余数为e,其中,所述e为大于零的整数;则将e个虚拟处理器依次分配给虚拟机的内存块节点,直至所述虚拟处理器被分配完毕。进一步地,根据所述虚拟机的内存大小,将内存平均分配至虚拟机的内存块节点。进一步地,所述虚拟机的内存块节点所分配的内存大小为32M的整数倍。图2所示为本专利技术实施例2的资源管理装置结构图,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。进一步地,获取虚拟机的内存块节点数量、虚拟机的资源数据之前,还包括:获取服务器的内存块节点数量;若所述虚拟机的虚拟处理器数量是所述服务器的内存块节点数量的整数倍,则虚拟机的内存块节点数量等于所述服务器的内存块节点数量。进一步地,若所述虚拟机的虚拟处理器数量是所述服本文档来自技高网...
一种资源管理方法及装置

【技术保护点】
一种资源管理方法,其特征在于,包括以下步骤:获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。

【技术特征摘要】
1.一种资源管理方法,其特征在于,包括以下步骤:获取虚拟机的内存块节点数量、虚拟机的资源数据,其中,所述虚拟机的资源数据包括以下至少之一:虚拟机的虚拟处理器数量、虚拟机的内存大小;根据所述虚拟机的内存块节点数量、所述虚拟机的资源数据,为所述虚拟机的每一个内存块节点分配对应的虚拟机资源。2.根据权利要求1所述的方法,其特征在于,获取虚拟机的内存块节点数量、虚拟机的资源数据之前,还包括:获取服务器的内存块节点数量;若所述虚拟机的虚拟处理器数量是所述服务器的内存块节点数量的整数倍,则虚拟机的内存块节点数量等于所述服务器的内存块节点数量。3.根据权利要求2所述的方法,其特征在于,若所述虚拟机的虚拟处理器数量是所述服务器的内存块节点数量的整数倍n,则为所述虚拟机的每一个内存块节点分配的虚拟处理器数量为n。4.根据权利要求3所述的方法,其特征在于,若所述虚拟机的虚拟处理器数量除以服务器的内存块节点数量之后,余数为e,其中,所述e为大于零的整数;则将e个虚拟处理器依次分配给虚拟机的内存块节点,直至所述虚拟处理器被分配完毕。5.根据权利要求2所述的方法,其特征在于,根据所述虚拟机的内存大小,将内存平均分配至虚拟机的内存块节点。6.根据权利要求5所述的方法,其特征...

【专利技术属性】
技术研发人员:解琰曾鹏庞慷宇
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1