一种虚拟机资源动态扩充方法及系统技术方案

技术编号:16427624 阅读:44 留言:0更新日期:2017-10-21 22:07
本发明专利技术涉及一种虚拟机资源动态扩充方法及系统,本发明专利技术的方法包括以下步骤:S1、检测系统资源利用率,判断系统状态,若判断处于正常状态进入S2,若判断处于高负荷状态则进入S3;S2、判断虚拟机当前是否处于扩充状态,若是则进入S2.0,若否则保持现状;S2.0、判断系统是否处于低负荷状态,若是则进入S4,若否则保持现状;S3、进入扩充方案,计算得到扩充目标资源,对系统资源进行变更;S4、进入还原方案,对系统资源进行变更。本发明专利技术能自动根据作业情况扩充虚拟机的计算资源,并在作业完成后,自动释放出扩充资源,可以充分展现了虚拟化的特点和优势,充分地利用了“云”中的空闲资源。

Virtual machine resource dynamic expansion method and system

The invention relates to a virtual machine resource dynamic expansion method and system, the method of the invention comprises the following steps: S1 detection system, resource utilization, judge the state of the system, if the judge is in a normal state to enter the S2, if in a high load state into the S3; S2, judging whether the current virtual machine in the expansion state, if enter the S2.0, if not to maintain the status quo; S2.0, to determine whether the system is in a low load state, if it is to enter the S4, if not to maintain the status quo; S3, enter the expansion scheme, calculated expand target resources, make changes to the system resources; S4, in the reduction scheme, make changes to the system resources. The invention can automatically expand the computing resources of the virtual machine according to the working condition, and the operation is completed, the automatic release of expansion of resources, can fully show the characteristics and advantages of virtualization, full use of idle resources in the cloud \.

【技术实现步骤摘要】
一种虚拟机资源动态扩充方法及系统
本专利技术属于云计算领域,具体涉及一种虚拟机资源动态扩充方法及系统。
技术介绍
随着云计算的引入和发展,越来越多的人开始接触到“云”,并感受到云计算的诸多优势——高可靠性、高可扩展性、按需弹性伸缩、管理使用方便快捷、成本低等。同时也有越来越多的中小型企业开始搭建自己的私有云,云计算的发展已经成了大势所趋。由于云计算是多种技术的综合,有许多服务可以优化和扩充,针对不同的环境和需求,所要求的服务也会不同。对于大多数个人用户来说,常常面临这样一个问题:由于创建给自己使用的虚拟机的计算资源是事先分配好的,当自己需要短时间进行一项计算资源消耗大的作业时,必须重新分配相应资源的虚拟机,这样不但会增加管理员的工作量,而且由于这样消耗资源大的作业并非时刻进行,如果分配给用户虚拟机的计算资源按此标准,当用户不在进行此项作业时,会造成大量计算机资源被分配但并没被充分利用的情况,造成了物理资源的闲置和浪费。如果能设计一个方案解决这个问题,让虚拟机能根据当前应用环境自动扩充资源,并在高消耗进程结束后能智能地恢复虚拟机资源分配的初始状态。这样就能更好地满足应用的适时需求,减少管理员的大量人为工作,并能极大地提高物理机资源的利用效能,也更符合“云计算”的定义。
技术实现思路
要解决的技术问题是提供一种虚拟机资源动态扩充方法及系统。解决上述技术问题的技术方案如下:一种虚拟机资源动态扩充方法,包括以下步骤:步骤S1、检测系统资源利用率,判断系统状态,若判断处于正常状态进入步骤S2,若判断处于高负荷状态则进入步骤S3;步骤S2、判断虚拟机当前是否处于扩充状态,若是则进入步骤S2.0,若否则保持现状;步骤S2.0、判断系统是否处于低负荷状态,若是则进入步骤S4,若否则保持现状;步骤S3、进入扩充方案,计算得到扩充目标资源,对系统资源进行变更;步骤S4、进入还原方案,计算得到还原目标资源,对系统资源进行变更。本专利技术的有益效果为:当单台虚拟机用户要进行一项资源消耗大的作业时,本专利技术的虚拟机资源动态扩充方法能自动根据作业情况扩充虚拟机的计算资源,使其满足该作业的需求,并在作业完成后,自动释放出扩充资源,让其回到资源池中,虚拟机分配的资源恢复到最初的状态。用户在使用过程中完全感受不到计算资源的受限,就好比一直拥有一台高性能计算机,可以充分展现了虚拟化的特点和优势,充分地利用了“云”中的空闲资源。进一步的,步骤S1中,检测系统资源利用率,判断系统状态的具体方法包括以下步骤:步骤S1.1、检测系统资源实时利用率,计算CPU当前利用率平均值C_uti(P)和内存当前利用率平均值M_uti(P);步骤S1.2、每隔t1时间段提取一次C_uti(P)的值,判断连续N次提取的C_uti(P)是否均大于C_lim,若是则判断CPU资源为高负荷状态,每隔t1时间段提取一次M_uti(P)的值,判断连续N次提取的M_uti(P)是否均大于M_lim,若是则判断内存资源为高负荷状态,CPU资源和内存资源中任意一项处于高负荷状态,则判断系统处于高负荷状态,否则判断系统处于正常状态,其中,C_lim为预设CPU阈值,M_lim为预设内存阈值,所述t1为预设第一采样间隔时间,N为预设第一采样次数。采用上述进一步方案的有益效果为:由于计算资源利用率并非一个平稳变化的过程,尤其对于CPU来说,当某一应用程序刚启动时,可能会极大地消耗CPU资源,但当其运行稳定后,则消耗的资源要大大降低,故不能仅凭某一时刻的资源利用率来断定虚拟机是否需要扩充资源,通过计算平均值可以确定计算资源确实因利用率过大需要扩充资源,排除一时虚高造成的误判,同时通过多次连续超过阈值才判断为资源利用率过高可以进一步排除了某时刻资源利用率数据过高的影响。进一步的,所述步骤S1.1中计算CPU当前利用率平均值C_uti(P)的具体步骤为:每隔t2时间段检测CPU资源的实时利用率,第T次的检测结果为At,计算A1-AT之间的T个检测值之间的平均值,为C_uti(1),计算A2-AT+1之间的T个检测值之间的平均值,为C_uti(2),以此类推,计算AP-AT+P之间的T个检测值之间的平均值,为C_uti(P),所述C_uti(P)为t2×P时间对应的资源当前利用率平均值,P为自然数,所述t2为预设第二采样间隔时间,T为预设第二采样次数;所述步骤S1.1中计算内存当前利用率平均值M_uti(P)的方法与计算C_uti(P)的方法相同。采用上述进一步方案的有益效果为:通过计算平均值可以确定计算资源确实因利用率过大需要扩充资源,排除一时虚高造成的误判,采用上述进一步方案的有益效果为:通过多次连续超过阈值才判断为资源利用率过高可以进一步排除了某时刻资源利用率数据过高的影响。进一步的,所述步骤S3的计算扩充目标资源的具体方法为:步骤S3.1、计算扩充目标CPU资源C_new和扩充目标内存资源M_new,则C_new和M_new的计算公式分别为:C_new=C_now*C_uti(P)/C_cuti,M_new=M_now*M_uti(P)/M_cuti,其中,C_now为当前已分配的CPU资源大小,C_uti(P)为CPU当前利用率平均值,C_cuti为扩充后的CPU预设利用率;M_now为当前已分配的内存资源大小,M_uti(P)为内存当前利用率平均值,M_cuti为扩充后的内存预设利用率;步骤S3.2、判断是否C_new小于当前可分配CPU最大资源C_max且M_new小于当前可分配内存最大资源M_max,若否,则转入步骤S3.3,若是,则将系统CPU资源扩充为C_new,将系统内存资源扩充为M_new;所述当前可分配CPU最大资源C_max为利用云资源池的CPU资源总量减去当前已占用的CPU资源总量得到,所述当前可分配内存最大资源M_max为利用云资源池的内存资源总量减去当前已占用的内存资源总量得到;步骤S3.3、向系统控制器发送报警提示信息。采用上述进一步方案的有益效果为:由于现在的虚拟化技术,对虚拟机计算资源的变更必须先使虚拟机进行停机,才能对其进行计算资源变更的操作,因此每次扩充都以固定的数值扩充后再进行试探会影响使用效率,本专利技术根据此时虚拟机的计算资源及计算资源的利用率来决定扩充的量,可以减少对计算资源的变更次数,更合理地对计算资源进行扩充。进一步的,所述步骤S2的判断系统是否处于低负荷状态的方法为,若且则判定系统处于低负荷状态,其中C_now为当前已分配的CPU资源大小,C_uti(P)为CPU当前利用率平均值,C_ori为虚拟机未扩充时的初始状态分配的CPU资源大小,C_lim为预设CPU阈值,M_now为当前已分配的内存资源大小,M_uti(P)为内存当前利用率平均值,M_ori为虚拟机未扩充时的初始状态分配的内存资源大小,M_lim为预设内存阈值,所述步骤S4的还原目标资源为C_ori和M_ori。采用上述进一步方案的有益效果为:在低负荷状态启用还原方案可以有效提高资源利用效率,防止资源的空置和浪费情况。一种虚拟机资源动态扩充系统,包括以下模块:检测模块,用于检测系统资源利用率,判断系统状态,若判断处于正常状态启动扩充状态判断模块,若判断处于高负荷状态则启动扩充本文档来自技高网...
一种虚拟机资源动态扩充方法及系统

【技术保护点】
一种虚拟机资源动态扩充方法,其特征在于,包括以下步骤:步骤S1、检测系统资源利用率,判断系统状态,若判断处于正常状态进入步骤S2,若判断处于高负荷状态则进入步骤S3;步骤S2、判断虚拟机当前是否处于扩充状态,若是则进入步骤S2.0,若否则保持现状;步骤S2.0、判断系统是否处于低负荷状态,若是则进入步骤S4,若否则保持现状;步骤S3、进入扩充方案,计算得到扩充目标资源,对系统资源进行变更;步骤S4、进入还原方案,按照还原目标资源,对系统资源进行变更。

【技术特征摘要】
1.一种虚拟机资源动态扩充方法,其特征在于,包括以下步骤:步骤S1、检测系统资源利用率,判断系统状态,若判断处于正常状态进入步骤S2,若判断处于高负荷状态则进入步骤S3;步骤S2、判断虚拟机当前是否处于扩充状态,若是则进入步骤S2.0,若否则保持现状;步骤S2.0、判断系统是否处于低负荷状态,若是则进入步骤S4,若否则保持现状;步骤S3、进入扩充方案,计算得到扩充目标资源,对系统资源进行变更;步骤S4、进入还原方案,按照还原目标资源,对系统资源进行变更。2.根据权利要求1所述的虚拟机资源动态扩充方法,其特征在于,步骤S1中,检测系统资源利用率,判断系统状态的具体方法包括以下步骤:步骤S1.1、检测系统资源实时利用率,计算CPU当前利用率平均值C_uti(P)和内存当前利用率平均值M_uti(P);步骤S1.2、每隔t1时间段提取一次C_uti(P)的值,判断连续N次提取的C_uti(P)是否均大于C_lim,若是则判断CPU资源为高负荷状态,每隔t1时间段提取一次M_uti(P)的值,判断连续N次提取的M_uti(P)是否均大于M_lim,若是则判断内存资源为高负荷状态,CPU资源和内存资源中任意一项处于高负荷状态,则判断系统处于高负荷状态,否则判断系统处于正常状态,其中,C_lim为预设CPU阈值,M_lim为预设内存阈值,所述t1为预设第一采样间隔时间,N为预设第一采样次数。3.根据权利要求2所述的虚拟机资源动态扩充方法,其特征在于,所述步骤S1.1中计算CPU当前利用率平均值C_uti(P)的具体步骤为:每隔t2时间段检测CPU资源的实时利用率,第T次的检测结果为At,计算A1-AT之间的T个检测值之间的平均值,为C_uti(1),计算A2-AT+1之间的T个检测值之间的平均值,为C_uti(2),以此类推,计算AP-AT+P之间的T个检测值之间的平均值,为C_uti(P),所述C_uti(P)为t2×P时间对应的资源当前利用率平均值,P为自然数,所述t2为预设第二采样间隔时间,T为预设第二采样次数;所述步骤S1.1中计算内存当前利用率平均值M_uti(P)的方法与计算C_uti(P)的方法相同。4.根据权利要求2所述的虚拟机资源动态扩充方法,其特征在于,所述步骤S3的计算扩充目标资源的方法具体包括以下步骤:步骤S3.1、计算扩充目标CPU资源C_new和扩充目标内存资源M_new,则C_new和M_new的计算公式分别为:C_new=C_now*C_uti(P)/C_cuti,M_new=M_now*M_uti(P)/M_cuti,其中,C_now为当前已分配的CPU资源大小,C_...

【专利技术属性】
技术研发人员:史爱武高迪胡志强苏楠
申请(专利权)人:武汉智云方达信息科技有限公司武汉纺织大学
类型:发明
国别省市:湖北,42

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

1