G06F9/50 G06F9/455
1.一种跨虚拟机的资源感知方法,其特征在于,包括:
接受虚拟机发送的系统资源申请请求;
根据所述系统资源申请请求向所述虚拟机分配容器实例,通过所述容器实例动态从操 作系统中获取系统资源或者释放系统资源,并生成申请记录;
根据所述申请记录确定系统资源剩余量,并向其他虚拟机共享系统资源剩余量,以使 其他虚拟机根据系统资源剩余量动态调整系统资源申请请求。
2.根据权利要求1所述的资源感知方法,其特征在于,所述接受虚拟机发送的系统资源 申请请求,包括:
接受虚拟机发送的CPU资源申请请求;或者,
接受虚拟机发送的内存资源申请请求;或者,
接受虚拟机发送的存储资源申请请求。
3.根据权利要求1或2所述的资源感知方法,其特征在于,还包括:
若根据申请记录监测到目标虚拟机的资源使用量超过预定阈值,则发出告警信息。
4.根据权利要求3所述的资源感知方法,其特征在于,所述发出告警信息之后,还包括:
生成与所述目标虚拟机对应的日志记录。
5.一种跨虚拟机的资源感知系统,其特征在于,包括:
管理模块,用于接受虚拟机发送的系统资源申请请求,根据所述系统资源申请请求向 所述虚拟机分配容器实例,并根据申请记录确定系统资源剩余量;
容器模块,用于通过所述容器实例动态从操作系统中获取系统资源或者释放系统资 源,并生成申请记录;
通信模块,用于向其他虚拟机共享系统资源剩余量,以使其他虚拟机根据系统资源剩 余量动态调整系统资源申请请求。
6.根据权利要求5所述的资源感知系统,其特征在于,所述系统资源申请请求包括:CPU 资源申请请求;或者,内存资源申请请求;或者,存储资源申请请求。
7.根据权利要求5或6所述的资源感知系统,其特征在于,还包括:
告警信息发出模块,用于根据申请记录监测到目标虚拟机的资源使用量超过预定阈值 时,发出告警信息。
8.根据权利要求7所述的资源感知系统,其特征在于,还包括:
日志记录生成模块,用于生成与所述目标虚拟机对应的日志记录。
本发明涉及操作系统虚拟化领域,更具体地说,涉及一种跨虚拟机的资源感知方 法及系统。
随着信息化时代的到来,计算机的高速发展,各个互联网公司、IT企业承担的数据 中心建设规模和成本日益增高。为了能够充分使用服务器、存储设备的性能,降低单位应用 的物理资源使用成本,虚拟化技术快速兴起。各大虚拟化厂商推出一系列针对裸机(硬件) 的虚拟化解决方案。IT应用部署也由“物理机+操作系统+应用”的模式转化为“物理资源池+ 虚拟化平台+虚拟机+操作系统+应用”。针对目前普遍使用的“虚拟机+操作系统”部署方式, 虚拟机之间是完全隔离的,即没有任何一台虚拟机知道(或者依赖)相同系统当中的另外一 台虚拟机的存在,这就造成了物理资源只能以虚拟机为“单位粒度”进行划分。同一物理资 源池上的虚拟机承载的应用负载并不均衡,例如有的虚拟机剩余空闲CPU资源、有的虚拟机 空闲内存资源、有的虚拟机剩余空闲存储空间。
因此,如何动态调整系统资源,解决多个虚拟机间不能动态共享物理资源的问题, 是本领域技术人员需要解决。
本发明的目的在于提供一种跨虚拟机的资源感知方法及系统,以实现多个虚拟机 间动态共享物理资源。
为实现上述目的,本发明实施例提供了如下技术方案:
一种跨虚拟机的资源感知方法,包括:
接受虚拟机发送的系统资源申请请求;
根据所述系统资源申请请求向所述虚拟机分配容器实例,通过所述容器实例动态 从操作系统中获取系统资源或者释放系统资源,并生成申请记录;
根据所述申请记录确定系统资源剩余量,并向其他虚拟机共享系统资源剩余量, 以使其他虚拟机根据系统资源剩余量动态调整系统资源申请请求。
其中,述接受虚拟机发送的系统资源申请请求,包括:
接受虚拟机发送的CPU资源申请请求;或者,
接受虚拟机发送的内存资源申请请求;或者,
接受虚拟机发送的存储资源申请请求。
其中,本方案还包括:
若根据申请记录监测到目标虚拟机的资源使用量超过预定阈值,则发出告警信 息。
其中,所述发出告警信息之后,还包括:
生成与所述目标虚拟机对应的日志记录。
一种跨虚拟机的资源感知系统,包括:
管理模块,用于接受虚拟机发送的系统资源申请请求,根据所述系统资源申请请 求向所述虚拟机分配容器实例,并根据申请记录确定系统资源剩余量;
容器模块,用于通过所述容器实例动态从操作系统中获取系统资源或者释放系统 资源,并生成申请记录;
通信模块,用于向其他虚拟机共享系统资源剩余量,以使其他虚拟机根据系统资 源剩余量动态调整系统资源申请请求。
其中,所述系统资源申请请求包括:CPU资源申请请求;或者,内存资源申请请求; 或者,存储资源申请请求。
其中,本方案还包括:
告警信息发出模块,用于根据申请记录监测到目标虚拟机的资源使用量超过预定 阈值时,发出告警信息。
其中,本方案还包括:
日志记录生成模块,用于生成与所述目标虚拟机对应的日志记录。
通过以上方案可知,本发明实施例提供的一种跨虚拟机的资源感知方法及系统, 包括:接受虚拟机发送的系统资源申请请求;根据所述系统资源申请请求向所述虚拟机分 配容器实例,通过所述容器实例动态从操作系统中获取系统资源或者释放系统资源,并生 成申请记录;根据所述申请记录确定系统资源剩余量,并向其他虚拟机共享系统资源剩余 量,以使其他虚拟机根据系统资源剩余量动态调整系统资源申请请求;可见,在本方案中, 通过虚拟机的容器化可以实现跨虚拟机的物理资源感知与共享,使虚拟机间能够互相感知 资源占用情况、动态流转资源,解决多个虚拟机间不能动态共享物理资源的问题。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
图1为本发明实施例公开的一种跨虚拟机的资源感知方法流程示意图;
图2为本发明实施例公开的一种跨虚拟机的资源感知系统结构示意图;
图3为本发明实施例公开的跨虚拟机资源感知系统流程图。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
本发明实施例公开了一种跨虚拟机的资源感知方法及系统,以实现多个虚拟机间 动态共享物理资源。
参见图1,本发明实施例提供的一种跨虚拟机的资源感知方法,包括:
S101、接受虚拟机发送的系统资源申请请求;
其中,所述接受虚拟机发送的系统资源申请请求,包括:接受虚拟机发送的CPU资 源申请请求;或者,接受虚拟机发送的内存资源申请请求;或者,接受虚拟机发送的存储资 源申请请求。
具体的,参见图2,为本实施例提供的系统结构示意图,本系统一共分三大模块,管 理模块100、容器模块200、通信模块300,其中容器模块200的主要功能是对虚拟机运行提供 必要的API,使虚拟机能够动态申请/释放资源;通信模块200负责向其他虚拟机共享资源占 用情况;管理模块300负责缓存、调度各虚拟机资源占用及日志告警。
S102、根据所述系统资源申请请求向所述虚拟机分配容器实例,通过所述容器实 例动态从操作系统中获取系统资源或者释放系统资源,并生成申请记录;
其中,本方案还包括:
若根据申请记录监测到目标虚拟机的资源使用量超过预定阈值,则发出告警信 息。其中,所述发出告警信息之后,还包括:生成与所述目标虚拟机对应的日志记录。
具体的,在本实施例中通过管理模块缓存各虚拟机的资源消耗及请求数据,转发 虚拟机间的交互请求,同时提供容器的创建、修改、销毁功能及日志告警功能。
具体的,参见图3,操作系统启动后自动运行容器化服务,检测到系统中有虚拟机 创建时自动为其分配一个容器实例。容器实例从操作系统中动态申请/释放CPU、内存或存 储资源,并向管理服务中报告当前占用的资源量。管理模块实时监测各虚拟机容器的资源 使用情况,对超出阈值的情况进行告警和日志记录。
S103、根据所述申请记录确定系统资源剩余量,并向其他虚拟机共享系统资源剩 余量,以使其他虚拟机根据系统资源剩余量动态调整系统资源申请请求。
具体的,在本方案中,通信模块通过容器实例将当前虚拟机的资源消耗情况进行 汇总,并以共享内存的方式快速提交数据并获取其他虚拟机的资源消耗情况。本方案中的 容器模块对上层提供虚拟机运行所需的API,对下层将虚拟机硬件指令转换为操作系统调 用,它自身是运行在宿主操作系统上的一个进程实例,能够动态地申请/释放CPU、内存、存 储资源。
具体的,在本实施例中虚拟机通过容器模块动态申请系统资源,容器模块将申请 结果报告到管理模块,其他虚拟机从管理模块获取到系统资源剩余量并动态申请自己所需 系统资源,而传统虚拟化平台只能预先静态配置各虚拟机资源占用,实际运行过程中会闲 置部分物理资源。
具体的,在本方案中,通过对虚拟机加入容器功能,使其成为运行在操作系统之上 的容器化虚拟机。由于所有虚拟机都运行在同一操作系统环境下并且是通过容器技术获取 的操作系统资源,虚拟机所能使用的资源会随着负载的变化而动态获取、释放。这种情况 下,操作系统管理的所有物理资源能够在各虚拟机之间动态流转,可提高物理资源的利用 率、节约IT基础设施建设投资成本。
下面对本发明实施例提供的资源感知系统进行介绍,下文描述的资源感知系统与 上文描述的资源感知方法可以相互参照。
参见图2,本发明实施例提供的一种跨虚拟机的资源感知系统,包括:
管理模块100,用于接受虚拟机发送的系统资源申请请求,根据所述系统资源申请 请求向所述虚拟机分配容器实例,并根据申请记录确定系统资源剩余量;
容器模块200,用于通过所述容器实例动态从操作系统中获取系统资源或者释放 系统资源,并生成申请记录;
通信模块300,用于向其他虚拟机共享系统资源剩余量,以使其他虚拟机根据系统 资源剩余量动态调整系统资源申请请求。
其中,所述系统资源申请请求包括:CPU资源申请请求;或者,内存资源申请请求; 或者,存储资源申请请求。
其中,本方案还包括:
告警信息发出模块,用于根据申请记录监测到目标虚拟机的资源使用量超过预定 阈值时,发出告警信息。
其中,本方案还包括:
日志记录生成模块,用于生成与所述目标虚拟机对应的日志记录。
本发明实施例提供的一种跨虚拟机的资源感知方法及系统,包括:接受虚拟机发 送的系统资源申请请求;根据所述系统资源申请请求向所述虚拟机分配容器实例,通过所 述容器实例动态从操作系统中获取系统资源或者释放系统资源,并生成申请记录;根据所 述申请记录确定系统资源剩余量,并向其他虚拟机共享系统资源剩余量,以使其他虚拟机 根据系统资源剩余量动态调整系统资源申请请求;可见,在本方案中,通过虚拟机的容器化 可以实现跨虚拟机的物理资源感知与共享,使虚拟机间能够互相感知资源占用情况、动态 流转资源,解决多个虚拟机间不能动态共享物理资源的问题。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他 实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。 对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的 一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明 将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一 致的最宽的范围。
本文发布于:2023-04-13 14:00:32,感谢您对本站的认可!
本文链接:https://patent.en369.cn/patent/2/85595.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |