基于虚拟化平台的细粒度资源调度系统及方法_2

文档序号:8922441阅读:来源:国知局
;并跳转到步骤S03。
[0037]S03、判断收集的时间点是否小于预设次数m,如果是表示记录的历史数据不够,等待预设时间T后跳转到步骤SOl ;否则跳转到步骤S04。
[0038]S04、保留最近m个时间点的负载差值数据,其他负载差值数据删除,此时共m个时间点下η个虚拟机的负载差值数据组成一个m行η列的负载差值矩阵。该矩阵如图2所示,矩阵的行对应每个时间点,该矩阵的列对应每个虚拟机。跳转到步骤S05。
[0039]S05、对当前时间点的负载差值矩阵进行逐列分析。
[0040]S06、判断所有虚拟机都是否分析了一遍,是则当前时间点的负载分析已经完成,跳到步骤S07 ;否则跳转到步骤S08。
[0041]S07、对每个虚拟机的负载调度值进行异常分析。如果虚拟机负载调度值为正,则调查该虚拟机负载为什么负载超标,如果该虚拟机为“正在启动”、“正在测试”或其他允许情况,则将该虚拟机的负载调度值置0,并将该虚拟机当前时间点的负载差值置O (以免影响下一个时间点的负载分析)。跳转到步骤S14。
[0042]S08、分析判断当前时间点的负载差值矩阵的列数据的绝对值是否都不大于某一个固定的负载波动幅值r,并跳转到步骤S09。
[0043]S09、判断该虚拟机近段时间(T*m)的负载都在允许的波动范围内,是跳转到步骤S16,否则跳转到步骤S10。
[0044]S10、如果当前时间点负载差值矩阵的列数据存在大于r,则表示该虚拟机的负载曾经过大且超过了允许的波动范围,跳转到步骤S11。
[0045]S11、判断大于r的次数是否小于第一预设次数kl次,如果是表示该虚拟机负载差值虽然多次大于r,但仍然未趋于稳定,不足以触发调度该虚拟机的资源,跳转到步骤S12,否则表示该虚拟机的负载差值多次大于r,并且趋于稳定,可以触发调度该虚拟机的资源跳转到步骤S17。可选地,第一预设次数值kl的范围为m/2 < kl彡m。
[0046]S12、如果当前时间点负载差值矩阵的列数据存在小于-r,则表示该虚拟机的负载曾经过小且超过了允许的波动范围,跳转到步骤S13。
[0047]S13、判断小于-r的次数是否小于第二预设次数k2次,是表示该虚拟机负载差值虽然多次小于-r,但仍然未趋于稳定,不足以触发调度该虚拟机的资源,则跳转到步骤S16,否则表示该虚拟机的负载差值多次小于-r,并且趋于稳定,可以触发调度该虚拟机的资源,跳转到步骤S17。可选地,第二预设次数值k2的范围为m/2 < k2彡m。
[0048]S14、判断虚拟机的负载调度值中还同时存在正值和负值,是则跳到步骤S15,否则跳转到步骤S01。
[0049]S15、开启新线程,开始细粒度资源重配置,从负载调度值中选择一个最大值(正值)和最小值(负值)的虚拟机,增加负载调度值最大的虚拟机的资源配置,减少负载调度值最小的虚拟机的资源配置。比如,对于CPU资源,对于最大值的虚拟机,增加该虚拟机的权重值和能力值,对于最小值的虚拟机,减少该虚拟机的权重值和能力值。并跳转到步骤SOlo
[0050]S16、将该虚拟机的负载调度值置为0,并跳转到步骤S05。
[0051]S17、计算最近超过可控范围的kl次(或k2次)负载差值平均值,作为该虚拟机的负载调度值,并跳转到步骤S05。
[0052]由于虚拟机应用负载具有动态波动性,在初始配置虚拟机资源时,若根据峰值负载为虚拟机分配资源,则资源浪费较多;若根据波谷负载分配资源,则可能会影响虚拟机及应用业务的性能。
[0053]本发明通过收集服务器节点内各个虚拟机的负载值,设计资源调度分析模型,裁决各个虚拟机应分得的资源量,在资源配置不符合要求的情况下,调用细粒度资源调度方式为虚拟机动态增减资源。具有以下有益效果:
[0054]1、资源调度粒度小,不对虚拟机进行迀移,对服务器负载影响较小,并可根据虚拟机资源负载情况按需配置相应资源;
[0055]2、可根据系统应用业务的特点,设定有关资源分析模块的参数信息,决定资源负载的波动范围、以及资源调度的激进程度;
[0056]3、资源调度不设置固定的负载上下限阈值,采取加权计算平均负载和累计历史性数据的方式,当虚拟机的整体负载上升或下降时,服务器内各个虚拟机仍然可以处于动态平衡状态;
[0057]4、资源调度模型综合考虑了虚拟机负载抖动、正在开机、正在进行负载测试等异常现象,并且待虚拟机负载趋于稳定时,才对虚拟机资源进行重配置。
[0058]结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机储存器、内存、只读存储器、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其他形式的存储介质中。
[0059]可以理解的是,对于本领域的普通技术人员来说,可以根据本发明的技术构思做出其它各种相应的改变与变形,而所有这些改变与变形都应属于本发明权利要求的保护范围。
【主权项】
1.一种基于虚拟化平台的细粒度资源调度系统,其包括如下单元: 负载信息获取单元,用于收集当前时间点服务器内η个虚拟机的负载值,获取服务器内所有虚拟机的平均负载值,并计算各虚拟机的负载值与平均负载值的负载差值; 矩阵生成单元,用于记录当前时间点η个虚拟机的负载差值,并判断总共记录的时间点个数是否小于预设次数m,如果是则启动负载信息获取单元的功能,否则保留最近m个时间点的负载差值,形成共m个时间点下η个虚拟机的负载差值数据组成一个m行η列的负载差值矩阵,并启动矩阵分析单元的功能; 矩阵分析单元,用于对当前时间点的负载差值矩阵进行逐列分析,并判断所有虚拟机都是否分析了一遍,是则当前时间点的负载分析已经完成,启动资源配置单元的功能;否则启动负载波动判断单元的功能; 负载波动判断单元,用于判断当前时间点的负载差值矩阵的列数据的绝对值是否均小于或等于某一个预设固定的负载波动幅值r,如果是将该虚拟机的负载调度值置为O,并启动矩阵分析单元的功能,否则启动负载调度值调整单元的功能; 负载调度值调整单元,用于判断当前时间点的负载差值矩阵的列数据大于r的次数是否大于或等于第一预设次数kl,如果是则将计算该虚拟机最近kl次大于r的负载差值的平均值,作为该虚拟机的负载调度值,并启动矩阵分析单元的功能,否则继续判断当前时间点的负载差值矩阵的列数据小于_r的次数是否大于或等于第二预设次数k2,如果是将计算该虚拟机最近k2次小于-r的负载差值的平均值,作为该虚拟机的负载调度值,并启动矩阵分析单元的功能,否则将该虚拟机的负载调度值置为O,并启动矩阵分析单元的功能; 资源配置单元,用于修正各虚拟机的负载调度值,并判断虚拟机的负载调度值是否同时存在正值和负值,如果是则从负载调度值中选择一个最大值和最小值的虚拟机,增加负载调度值最大的虚拟机的资源配置,减少负载调度值最小的虚拟机的资源配置,否则等待预设时间T后启动负载信息获取单元的功能。2.如权利要求1所述的基于虚拟化平台的细粒度资源调度系统,其特征在于, 第一预设次数值kl的范围为m/2 < kl ^ m03.如权利要求1所述的基于虚拟化平台的细粒度资源调度系统,其特征在于, 第二预设次数值k2的范围为m/2 < k2 ^ m?4.一种基于虚拟化平台的细粒度资源调度方法,其包括如下步骤: 51、收集当前时间点服务器内η个虚拟机的负载值,获取服务器内所有虚拟机的平均负载值,并计算各虚拟机的负载值与平均负载值的负载差值; 52、记录当前时间点η个虚拟机的负载差值,并判断总共记录的时间点个数是否小于预设次数m,如果是则跳转到步骤SI,否则保留最近m个时间点的负载差值,形成共m个时间点下η个虚拟机的负载差值数据组成一个m行η列的负载差值矩阵; 53、对当前时间点的负载差值矩阵进行逐列分析,并判断所有虚拟机都是否分析了一遍,是则当前时间点的负载分析已经完成,跳到步骤S6 ;否则跳转到步骤S4 ; 54、判断当前时间点的负载差值矩阵的列数据的绝对值是否均小于或等于某一个预设固定的负载波动幅值r,如果是将该虚拟机的负载调度值置为0,并跳到步骤S3,否则跳转到步骤S5 ; 55、判断当前时间点的负载差值矩阵的列数据大于r的次数是否大于或等于第一预设次数kl,如果是将计算该虚拟机最近kl次大于r的负载差值的平均值,作为该虚拟机的负载调度值,跳到步骤S3 ;否则继续判断当前时间点的负载差值矩阵的列数据小于_r的次数是否大于或等于第二预设次数k2,如果是将计算该虚拟机最近k2次小于-r的负载差值的平均值,作为该虚拟机的负载调度值,跳到步骤S3 ;否则将该虚拟机的负载调度值置为O,并跳到步骤S3 ; S6、修正各虚拟机的负载调度值,并判断虚拟机的负载调度值是否同时存在正值和负值,如果是则从负载调度值中选择一个最大值和最小值的虚拟机,增加负载调度值最大的虚拟机的资源配置,减少负载调度值最小的虚拟机的资源配置,否则等待预设时间T后跳到步骤SI。5.如权利要求4所述的基于虚拟化平台的细粒度资源调度方法,其特征在于, 第一预设次数值kl的范围为m/2 < kl ^ m06.如权利要求4所述的基于虚拟化平台的细粒度资源调度方法,其特征在于, 第二预设次数值k2的范围为m/2 < k2 ^ m?
【专利摘要】一种基于虚拟化平台的细粒度资源调度系统,其包括负载信息获取单元;矩阵生成单元;矩阵分析单元;负载波动判断单元;负载调度值调整单元;资源配置单元。本发明通过收集服务器节点内各个虚拟机的负载值,设计资源调度分析模型,裁决各个虚拟机应分得的资源量,在资源配置不符合要求的情况下,调用细粒度资源调度方式为虚拟机动态增减资源。本发明还提供一种基于虚拟化平台的细粒度资源调度方法。
【IPC分类】G06F9/50, G06F9/455
【公开号】CN104899072
【申请号】CN201510222110
【发明人】伍华风, 龚恋, 何龙, 王攀攀, 戴新发
【申请人】中国船舶重工集团公司第七0九研究所
【公开日】2015年9月9日
【申请日】2015年5月5日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1