一种Xen虚拟环境下的虚拟机内存监控方法及其系统与流程

文档序号:12469682阅读:315来源:国知局
一种Xen虚拟环境下的虚拟机内存监控方法及其系统与流程

本发明涉及虚拟化技术领域,特别是涉及一种Xen虚拟环境下的虚拟机内存监控方法及其系统。



背景技术:

随着信息产业的快速发展,云计算技术也就应运而生并开始蓬勃发展,作为实现云计算关键技术的虚拟化技术也越来越受关注。通过在服务器上安装虚拟机,越来越多的应用系统和服务程序被部署在虚拟机环境下,最大限度的提高服务器硬件资源的利用率,降低资源开销。

由于不同虚拟机之间因运行服务不同,所需要的内存资源也就各不相同,有些虚拟机需要较少的内存资源即可满足提供服务需求,而有些虚拟机可能需要更多的资源才能满足更为复杂的服务要求。但是,目前的虚拟机内存分配为静态配置,即一旦分配完成后,不能自动修改,只能通过人为修改虚拟机配置来修改虚拟机的内存资源大小,实时性差,容易出现部分虚拟机内存资源不足的情况,内存资源利用率低。

因此,如何提供一种实时性好、内存资源利用率高的Xen虚拟环境下的虚拟机内存监控方法及其系统是本领域技术人员目前需要解决的问题。



技术实现要素:

本发明的目的是提供一种Xen虚拟环境下的虚拟机内存监控方法及其系统,能够实时自动进行内存资源的动态调整,而不需要等待人为修改配置,实时性强,能够尽可能避免出现虚拟机内存资源不足的情况,内存资源利用率高。

为解决上述技术问题,本发明提供了一种Xen虚拟环境下的虚拟机内存监控方法,用于服务器,所述服务器内设置有若干个虚拟机,所述方法包括:

获取各个所述虚拟机的详细信息;

调用Hypercall模块根据所述详细信息得到各个所述虚拟机的内存资源使用情况;

按照预设监控策略对所述内存资源使用情况进行智能行为分析,得到分析结果;

根据所述分析结果生成动态调整指令并发送至所述服务器的虚拟机监视器;

所述虚拟机监视器依据所述动态调整指令实时动态调整各个所述虚拟机的内存分配情况。

优选的,还包括:

当依据所述分析结果得到,按照所述分析结果进行内存分配调整后仍会有虚拟机在预设时间段后出现内存资源不足的情况时,发送预测报警信息至所述服务器的管理界面。

优选的,得到所述内存资源使用情况之后还包括:

将所述内存资源使用情况发送至所述服务器的管理界面,供所述管理界面以曲线或多重拓扑结构的方式对所述内存资源使用情况进行显示。

优选的,得到所述内存资源使用情况之后还包括:

实时存储所述内存资源使用情况。

优选的,所述预设监控策略具体为通用监控策略或自定义监控策略。

为解决上述技术问题,本发明还提供了一种Xen虚拟环境下的虚拟机内存监控系统,用于服务器,所述服务器内设置有若干个虚拟机,所述系统包括:

分别与各个所述虚拟机相连的Xenstore模块,用于获取各个所述虚拟机的详细信息;

工具模块,用于从所述Xenstore模块内获取所述虚拟机的详细信息,并调用Hypercall模块根据所述详细信息得到各个所述虚拟机的内存资源使用情况;按照预设监控策略对所述内存资源使用情况进行智能行为分析,得到分析结果;根据所述分析结果生成动态调整指令并发送至所述服务器的虚拟机监视器;

所述虚拟机监视器,用于依据所述动态调整指令实时动态调整各个所述虚拟机的内存分配情况。

优选的,所述工具模块通过所述Hypercall模块将所述动态调整指令发送至所述虚拟机监视器。

优选的,所述工具模块还用于:

当依据所述分析结果得到,按照所述分析结果进行内存分配调整后仍会有虚拟机在预设时间段后出现内存资源不足的情况时,发送预测报警信息至所述服务器的管理界面。

优选的,所述工具模块还用于:

得到所述内存资源使用情况后,将所述内存资源使用情况发送至所述服务器的管理界面,供所述管理界面以曲线或多重拓扑结构的方式对所述内存资源使用情况进行显示。

优选的,所述工具模块还用于得到所述内存资源使用情况后,实时存储所述内存资源使用情况。

本发明提供了一种Xen虚拟环境下的虚拟机内存监控方法及其系统,能够依据预设监控策略对实时监测得到的各个虚拟机的内存资源使用情况进行智能行为分析,并依据分析结果,由虚拟机监视器来实现对各个虚拟机的内存分配情况的实时动态调整。可见,本发明能够通过对内存资源使用情况的分析,实时了解各个虚拟机的内存资源需要,进而由虚拟机监视器自动进行内存资源的动态调整,而不需要等待人为修改配置,实时性强,能够尽可能避免出现虚拟机内存资源不足的情况,内存资源利用率高。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种Xen虚拟环境下的虚拟机内存监控方法的过程的流程图;

图2为本发明提供的一种Xen虚拟环境下的虚拟机内存监控系统的结构示意图。

具体实施方式

本发明的核心是提供一种Xen虚拟环境下的虚拟机内存监控方法及其系统,能够实时自动进行内存资源的动态调整,而不需要等待人为修改配置,实时性强,能够尽可能避免出现虚拟机内存资源不足的情况,内存资源利用率高。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供了一种Xen虚拟环境下的虚拟机内存监控方法,用于服务器,服务器内设置有若干个虚拟机,参见图1所示,图1为本发明提供的一种Xen虚拟环境下的虚拟机内存监控方法的过程的流程图;该方法包括:

步骤s101:获取各个虚拟机的详细信息;

步骤s102:调用Hypercall模块根据详细信息得到各个虚拟机的内存资源使用情况;

步骤s103:按照预设监控策略对内存资源使用情况进行智能行为分析,得到分析结果;

步骤s104:根据分析结果生成动态调整指令并发送至服务器的虚拟机监视器;

步骤s105:虚拟机监视器依据动态调整指令实时动态调整各个虚拟机的内存分配情况。

另外,在虚拟机监视器接收到动态调整指令后,还会通过Xenstore模块来获取各个虚拟机的内存信息,进而进行内存分配调整。

作为优选地,该方法还包括:

当依据分析结果得到,按照分析结果进行内存分配调整后仍会有虚拟机在预设时间段后出现内存资源不足的情况时,发送预测报警信息至服务器的管理界面。

可以理解的是,通过该步骤本发明进行了前瞻性主动预测式报警操作,即本发明通过按照预设监控策略对内存资源使用情况进行智能行为分析,可以提前预测得知当按照该分析结果进行内存调整后极有可能会出现某一个或某几个虚拟机内存资源不足的情况,进而进行报警。相比现有的被动式报警方式(即内存资源不足的情况出现后,才进行报警的方式),本发明能够提前告知工作人员,主动性强,且提高了服务器的可靠性。

作为优选地,得到内存资源使用情况之后还包括:

将内存资源使用情况发送至服务器的管理界面,供管理界面以曲线或多重拓扑结构的方式对内存资源使用情况进行显示。

可以理解的是,通过将内存资源使用情况管理界面进行显示,可以使工作人员及时得知此时各个虚拟机的内存分配情况。

作为优选地,得到内存资源使用情况之后还包括:

实时存储内存资源使用情况。

可以理解的是,该操作的目的是将内存资源使用情况作为备份,以供工作人员后续进行查验或分析时使用。

其中,这里的预设监控策略具体为通用监控策略或自定义监控策略。

另外,这里的预设监控策略内具体包括有分别对应于各个虚拟机的监控子策略,具体的,这里的监控子策略可以均为通用监控策略,也可为由工作人员分别根据各个虚拟机的具体情况进行自定义设置得到的自定义监控策略。本发明对此不作限定。

进一步可知,若预设监控策略具体为自定义监控策略,则对预设监控策略进行配置时,需要通过Xenstore模块来获取各个虚拟机的详细信息,这里的详细信息包括虚拟机id,虚拟机名称,虚拟机内存信息等。

本发明提供了一种Xen虚拟环境下的虚拟机内存监控方法,能够依据预设监控策略对实时监测得到的各个虚拟机的内存资源使用情况进行智能行为分析,并依据分析结果,由虚拟机监视器来实现对各个虚拟机的内存分配情况的实时动态调整。可见,本发明能够通过对内存资源使用情况的分析,实时了解各个虚拟机的内存资源需要,进而由虚拟机监视器自动进行内存资源的动态调整,而不需要等待人为修改配置,实时性强,能够尽可能避免出现虚拟机内存资源不足的情况,内存资源利用率高。

本发明还提供了一种Xen虚拟环境下的虚拟机内存监控系统,用于服务器,服务器内设置有若干个虚拟机,参见图2所示,图2为本发明提供的一种Xen虚拟环境下的虚拟机内存监控系统的结构示意图。该系统包括:

分别与各个虚拟机相连的Xenstore模块11,用于获取各个所述虚拟机的详细信息;

工具模块12,用于从Xenstore模块11内获取虚拟机的详细信息,并调用Hypercall模块根据详细信息得到各个虚拟机的内存资源使用情况;按照预设监控策略对内存资源使用情况进行智能行为分析,得到分析结果;根据分析结果生成动态调整指令并发送至服务器的虚拟机监视器(hypervisor)13;

虚拟机监视器13,用于依据动态调整指令实时动态调整各个虚拟机的内存分配情况。

其中,这里的工具模块12具体为XMMDR Tool。

另外,Xenstore模块11以及工具模块12均位于一个控制虚拟机内,该控制虚拟机也位于上述服务器中。

可以理解的是,这里的详细信息包括虚拟机id,虚拟机名称,虚拟机内存信息等。工具模块12和虚拟机监视器13可直接获取Xenstore模块11内的详细信息,可见,Xenstore模块11可视为存储各个虚拟机信息的数据库。

其中,工具模块12通过Hypercall模块将动态调整指令发送至虚拟机监视器13。另外,虚拟机监视器13也通过Hypercall模块来调取Xenstore模块11内的信息。

作为优选地,工具模块12还用于:

当依据分析结果得到,按照分析结果进行内存分配调整后仍会有虚拟机在预设时间段后出现内存资源不足的情况时,发送预测报警信息至服务器的管理界面。

作为优选地,工具模块12还用于:

得到内存资源使用情况后,将内存资源使用情况发送至服务器的管理界面,供管理界面以曲线或多重拓扑结构的方式对内存资源使用情况进行显示。

作为优选地,工具模块12还用于得到监测结果后,实时存储内存资源使用情况。

本发明提供了一种Xen虚拟环境下的虚拟机内存监控系统,能够依据预设监控策略对实时监测得到的各个虚拟机的内存资源使用情况进行智能行为分析,并依据分析结果,由虚拟机监视器来实现对各个虚拟机的内存分配情况的实时动态调整。可见,本发明能够通过对监控结果内存资源使用情况的分析,实时了解各个虚拟机的内存资源需要,进而由虚拟机监视器自动进行内存资源的动态调整,而不需要等待人为修改配置,实时性强,能够尽可能避免出现虚拟机内存资源不足的情况,内存资源利用率高。

需要说明的是,在本说明书中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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