一种用于计算机性能自调系统的设计的制作方法

文档序号:6398571阅读:151来源:国知局
专利名称:一种用于计算机性能自调系统的设计的制作方法
技术领域
本发明涉及计算机应用技术领域,具体地说是ー种用于计算机性能自调系统的设计。
背景技术
在当今社会,信息化蓬勃发展,云计算越来越被社会各界接受,并逐渐推广。而云计算最为核心的ー个环节就是大型数据中心或者超算中心。因为这些数据中心或超算中心将被大量的客户进行访问,这些访问的请求也是各种各样,有的需要读取数据,有的需要写入数据,而有的有需要这些中心提供相应的计算。这些各种各样的访问请求对计算机的性能要求的偏向也不同,比如写操作比较多,就需要系统对写的IO调度优先级提高,脏页比例进行适当调整。计算压力大的时候,需要cpu,内存进行调优,有的时候还需要更换cpu。总之对于大型超算中心需要面对各种各样的用户访问请求,这些访问所需要的性能要求也不同,而其造成的压カ也会是各方面的,产生的压カ的瓶颈也可能由于请求的不同,瓶颈位置也不同,与性能相关的參数初始设定值不一定能满足所需要的各种应用。针对上面的问题,就会涉及到一个无法逃避的问题——系统调优。系统调优需要解决的最主要的问题就是通过调整系统的某些參数是系统在响应相关请求的时候达到最佳的性能,以便系统更好的响应客户需求。但是系统如何调优,每一台机器都需要调优,而且每一台机器系统调优也不是一次调好了就完事了,因为调好了,当系统如果在另ー个时段要响应其他的ー些访问请求,而这些访问请求与先前用户请求所对系统带来的压カ是不同的,因此对于大型计算中心会面临ー个问题,同一台机器需要经过多次调优,然而计算中心里面的计算设备非常的多,所有的设备都有可能需要调优,这样如果使用人エ去调优的话,将会耗费巨大的人力,而且速度非常的慢。因此对于大型计算中心,如果能使用计算设备自动调优系统,那样就可以省去巨大的人力,也能使计算中心的服务更好。

发明内容
本发明的技术任务是解决现有技术的不足,提供一种用于计算机性能自调系统的设计。本发明的技术方案是按以下方式实现的,包括以下模块:一、系统性能监控某块;ニ、调优启动判断模块;三、调优自动化模块;四、建议及设置系统,其中:
一、系统性能监控模块:
用于对系统的各个部分是否造成系统的瓶颈进行监控,监控内容包括:网络忙碌程度,cpu运行情况,内存使用情况,磁盘IO情况,各个进程的cpu占用情况,各个进程的cpu使用情况,进程的IO速度情况;监控步骤如下:
1)要对系统进行调优,首先需要确定系统运行的瓶颈在什么地方,因此需要建立系统运行各參数的阈值列表;
2)性能瓶颈判断,根据系统监控的ー些工具监控的結果,对系统的各个參数依据參数阈值列表进行诊断,判断该參数是否恶化,诊断的时候,监控工具监控到的參数会有波动,不能因为系统监控到的參数ー超过阈值就认为该參数就已经恶化,判断该參数恶化,是根据參数超出阈值累计的时间;
3)对于监控到的数据应该规划ー个时间窗ロ,对于各个參数时间窗ロ的大小允许不一祥,每当获取到新的监控数据,都把该数据放入该窗ロ中,并把该窗ロ中最老的数据替换掉,如果窗口中数据都超出了阈值规定的累计的时间,则认为该參数已经恶化,并把诊断结果调优启动判断模块传递;
ニ、调优启动判断模块:
调优启动模块,用于判断调优工作是否需要启动,启动的依据是根据上面监控模块传递过来的恶化的參数,在某个模块出现问题时,会有多个參数都出现恶化的情況,有时单ー的參数恶化就能判断出瓶颈,而有时单ー的參数又未必出现瓶颈,因此,调优启动模块需要对监控模块传递过来的參数恶化情况做ー个综合评判,以便确定导致參数恶化情况是否有瓶颈存在,分析到底是哪些模块出现了瓶颈;
三、调优自动化模块:
调优自动化模块,用于对上面的模块传递过来的瓶颈类型相关的内核參数进行调整,并把调整以后的监控的參数与调优启动模块传来的监控參数进行对比,以便确定调优的效果,如果监控到的监控參数比上面模块传递过来的情况更加恶化,则正在调优的内核參数的值应该向反方向调整,如果向反方向调整后,监控參数依然更加恶化,这时应该调整其他參数,直到与该瓶颈的监控參数进入正常范围,如果所有与该瓶颈相关的内核參数都进行了调整,但是仍然不能使监控參数进入正常范围,这就需要升级该模块硬件或者更新模块软件;
四、建议和设置模块
该模块用于相关日志的记录和调优出现失败的时候向管理员提出相关建议,以及修改监控參数的恶化阈值列表,监控的參数与模块的瓶颈关系列表,模块与内核參数关系图的接ロ,该模块还能对自动调优系统是否启动及管理员邮箱相关信息进行设置;如果调优成功,在日志当中记录对那个模块进行了调优,并记录调优成功消息,如果没有调优成功需要向管理员发送邮件,在邮件中说明对那些參数进行了调整,是否有模块老化,是否需要进行相关升级,以及机器的hostname,ip信息,以便管理员做下一歩工作。对于是否需要启动调优启动判断模块,还需要对判断出来的瓶颈经过一定时间的积累,因为时间很短就进行调优,会很容易导致系统频繁调优,这将引起系统的不稳,如果产生的瓶颈时间比较长了,达到预先设定的瓶颈积累时间,则应该启动调优,并把启动调优相关命令下达给调优自动化模块,下达调优命令的时候,需要同时把具体是出现的什么瓶颈,以及判断出瓶颈的监控參数状况ー并下传给调优自动化模块。对于调优自动化模块的关键点是在某模块瓶颈与相关内核參数的对应关系的建立,也就是有哪些内核參数会影响该模块的性能,通过调整内核參数和应用方面的參数设置,达到调优的目的,这样就能建立网络模块与这些參数的关系图.在进行调优的时候,通过遍历与网络模块相关的參数,对这些參数的值进行修改,以便达到改善网络环境的目的,当然在遍历修改的时候需要进行智能相关的控制,对于其他模块也能建立模块与相关内核參数的关系图,当某模块产生瓶颈,对与它相关的内核參数进行遍历调整,最后达到改善模块工作性能的目的。在进行内核參数进行修改之前,需要修改的參数之前的值进行保存,以便一旦调优失败的时候,恢复这些參数,让系统再次调优时从该原先參数进行调整,如果调优完成了,不管成功还是不成功,都需要向建议和设置模块传递相关信息,如果成功,向建议和设置模块发送调优成功消息,如果不成功则向建议和设置模块发送不成功的消息,并提示是否有软硬件模块需要升级,或者模块与内核关系图需要进行改进,以便管理员能及时的发现问题,并采取相关措施。本发明的有益效果:节省人力,提高效率。对于大型计算中心,如果能使用计算设备自动调优系统,那样就可以省去巨大的人力,也能使计算中心的服务更好。


图1是自动调优系统工作流程图。
具体实施例方式下面结合附图对本发明的方法作进ー步详细说明。由于系统调优在具体实施的细节与系统自己特点有很大的相关性,因此为了更好的讲述,本发明使用Iinux系统下实现性能调优为例。一、系统性能监控模块:
系统性能监控模块的任务就是对系统的各个部分是否造成系统的瓶颈进行监控,主要监控的模块包括网络忙碌程度,cpu运行情況,内存使用情况,磁盘IO情况,各个进程的cpu占用情况,各个进程的cpu使用情况,进程的IO速度情况。对于Iinux系统这些运行的參数有专门的工具,如vmstat, iostat, top, sar, tcpdump等工具,而对于其他系统,如果没有的可以做针对性的开发相应的工具,监控步骤如下:
1)要对系统进行调优,首先需要确定系统运行的瓶颈在什么地方,因此需要建立系统运行各參数的阈值列表;
2)性能瓶颈判断,根据系统监控的ー些工具监控的结果对系统的各个參数依据參数阈值列表进行诊断,判断该參数是否恶化。诊断的时候,监控工具监控到的參数一般都会有波动,不能因为系统监控到的參数ー超过阈值就认为该參数就已经恶化。比如在Iinux系统当中使用vmstat监控到的r (等待进程的个数),大于所设定的值,比如1,就认为r參数恶化,因为该參数很快就能变为0,但是怎样判断该參数恶化了呢,应该还需要当參数超出阈值后,有一段时间的积累,比如60秒;
3)因此对于监控到的数据应该规划ー个时间窗ロ,对于各个參数时间窗ロ的大小可以不一样。每当获取到新的监控数据,都把该数据放入该窗ロ中,并把该窗ロ中最老的数据替换掉,如果窗ロ中数据都超出了阈值规定的大小,则认为该參数已经恶化,并把诊断结果调优启动判断模块传递。ニ、调优启动判断模块:
调优启动模块主要需要完成的功能主要是调优工作是否需要启动。主要的依据是根据上面监控模块传递过来的恶化的參数,在很多时候某个模块出现问题时,会有多个參数都出现恶化的情況。有时单ー的參数恶化就可以判断出瓶颈,而有时单ー的參数又未必出现瓶颈。因此该某块需要对监控模块传递过来的參数恶化情况做ー个综合评判,以便确定导致參数恶化情况是否有瓶颈存在,到底是那些模块出现了瓶颈。在该某块需要建立监控的參数与系统各模块的瓶颈关系模型。比如,使用iostat监控的%idle该參数能够判断cpu的压カ是否大,而%iowait可以看出io等待严重程度,如果%iowait太大则表示磁盘io性能低下。因此这个某块建立监控參数与系统各某块的故障关系模型至关重要。有了这样的故障关系模型,根据上个模块传递过来的恶化參数列表,判断出是那些模块出现了问题,出现了什么瓶颈。对于是否需要启动调优,还需要对判断出来的瓶颈经过一定时间的积累,因为时间很短如果进行调优,会很容易导致系统频繁调优,这将引起系统的不稳。如果产生的瓶颈时间比较长了,达到预先设定的瓶颈积累时间,则应该启动调优,并把启动调优相关命令下达给调优自动化模块,下达调优命令的时候,需要同时把具体是出现的什么瓶颈,以及判断出瓶颈的监控參数状况ー并下传给调优自动化模块。三、调优自动化模块:
调优自动化模块主要进行的工作就是对上面的模块传递过来的瓶颈类型相关的ー些内核參数进行调整。并把调整以后的监控的參数与调优启动模块传来的监控參数进行对比,以便确定调优的效果,如果监控到的监控參数比上面模块传递过来的情况更加恶化,则正在调优的内核參数的值应该向方向调整。如果向反方向调整后,监控參数依然更加恶化,这时应该调整其他參数,直到与该瓶颈的监控參数进入正常范围。如果所有与该瓶颈相关的内核參数都进行了调整,但是仍然不能使监控參数进入正常范围,这是可能需要升级该模块硬件或者更新模块软件。对于这个模块的关键点是在某模块瓶颈与相关内核參数的对应关系的建立,也就是有哪些内核參数会影响该模块的性能。比如网络性能相关的參数有tcp_Sack,tcp_window—scaling,net.core, rmem—default,net.core, rmem—max,net.core, wmem—default,net.core, wmem—max,net.1pv4.tcp_sack,net.1pv4.tcp_timestamps, net.1pv4.tcp_window_scaling等參数(还有其他參数),通过调整内核參数(也许还有其他应用方面的參数设置)达到调优的目的。这样就可以建立网络模块与这些參数的关系图。在进行调优的时候,通过遍历与网络模块相关的參数,对这些參数的值进行修改,以便达到改善网络环境的目的,当然在遍历修改的时候需要进行智能相关的控制。对于其他模块也可以建立模块与相关内核參数的关系图,当某模块产生瓶颈,对与它相关的内核參数进行遍历调整,最后达到改善模块工作性能的目的。在进行内核參数进行修改之前,需要修改的參数之前的值进行保存,以便一旦调优失败的时候,恢复这些參数,让系统再次调优时从该原先參数进行调整。如果调优完成了,不管成功还是不成功,都需要向建议和设置模块传递相关信息。如果成功,可以向建议和设置模块发送调优成功消息,如果不成功则向建议和设置模块发送不成功的消息,并提示是否有软硬件模块需要升级,或者模块与内核关系图需要进行改进,以便管理员能及时的发现问题,并采取相关措施。四、建议和设置模块
该模块主要是用于相关日志的记录和调优出现失败的时候向管理员提出相关建议,以及修改监控參数的恶化阈值列表,监控的參数与模块的瓶颈关系列表,模块与内核參数关系图(可能不止内核參数,有可能还有其他參数)的接ロ。该模块还能对自动调优系统是否启动及管理员邮箱相关信息进行设置。如果调优成功,在日志当中记录对那个模块进行了调优,并记录调优成功消息。如果没有调优成功需要向管理员发送邮件,在邮件中说明对那些參数进行了调整,是否有模块老化,是否需要进行相关升级,以及机器的hostname,ip等信息,以便管理员做下ー步エ作。除本发明的说明书公开的技术特征外均为本专业技术人员的公职技木。
权利要求
1.一种用于计算机性能自调系统的设计方法,其特征在于,系统调优包括系统性能监控模块、调优启动判断模块、调优自动化模块、建议和设置模块,其中: 一、系统性能监控模块: 用于对系统的各个部分是否造成系统的瓶颈进行监控,监控内容包括:网络忙碌程度,cpu运行情况,内存使用情况,磁盘IO情况,各个进程的cpu占用情况,各个进程的cpu使用情况,进程的IO速度情况;监控步骤如下: 1)要对系统进行调优,首先需要确定系统运行的瓶颈在什么地方,因此需要建立系统运行各參数的阈值列表; 2)性能瓶颈判断,根据系统监控的ー些工具监控的結果,对系统的各个參数依据參数阈值列表进行诊断,判断该參数是否恶化,诊断的时候,监控工具监控到的參数会有波动,不能因为系统监控到的參数ー超过阈值就认为该參数就已经恶化,判断该參数恶化,是根据參数超出阈值累计的时间; 3)对于监控到的数据应该规划ー个时间窗ロ,对于各个參数时间窗ロ的大小允许不一祥,每当获取到新的监控数据,都把该数据放入该窗ロ中,并把该窗ロ中最老的数据替换掉,如果窗口中数据都超出了阈值规定的累计的时间,则认为该參数已经恶化,并把诊断结果调优启动判断模块传递; ニ、调优启动判断模块: 调优启动模块,用于判断调优工作是否需要启动,启动的依据是根据上面监控模块传递过来的恶化的參数,在某个模块出现问题时,会有多个參数都出现恶化的情况,有时单ー的參数恶化就能判断出瓶颈,而有时单ー的參数又未必出现瓶颈,因此,调优启动模块需要对监控模块传递过来的參数恶 化情况做ー个综合评判,以便确定导致參数恶化情况是否有瓶颈存在,分析到底是哪些模块出现了瓶颈; 三、调优自动化模块: 调优自动化模块,用于对上面的模块传递过来的瓶颈类型相关的内核參数进行调整,并把调整以后的监控的參数与调优启动模块传来的监控參数进行对比,以便确定调优的效果,如果监控到的监控參数比上面模块传递过来的情况更加恶化,则正在调优的内核參数的值应该向反方向调整,如果向反方向调整后,监控參数依然更加恶化,这时应该调整其他參数,直到与该瓶颈的监控參数进入正常范围,如果所有与该瓶颈相关的内核參数都进行了调整,但是仍然不能使监控參数进入正常范围,这就需要升级该模块硬件或者更新模块软件; 四、建议和设置模块 该模块用于相关日志的记录和调优出现失败的时候向管理员提出相关建议,以及修改监控參数的恶化阈值列表,监控的參数与模块的瓶颈关系列表,模块与内核參数关系图的接ロ,该模块还能对自动调优系统是否启动及管理员邮箱相关信息进行设置;如果调优成功,在日志当中记录对那个模块进行了调优,并记录调优成功消息,如果没有调优成功需要向管理员发送邮件,在邮件中说明对那些參数进行了调整,是否有模块老化,是否需要进行相关升级,以及机器的hostname,ip信息,以便管理员做下一歩工作。
2.根据权利要求1所述的设计方法,其特征在于对于是否需要启动调优启动判断模块,还需要对判断出来的瓶颈经过一定时间的积累,因为时间很短就进行调优,会很容易导致系统频繁调优,这将引起系统的不稳,如果产生的瓶颈时间比较长了,达到预先设定的瓶颈积累时间,则应该启动调优,并把启动调优相关命令下达给调优自动化模块,下达调优命令的时候,需要同时把具体是出现的什么瓶颈,以及判断出瓶颈的监控參数状况ー并下传给调优自动化模块。
3.根据权利要求1所述的设计方法,其特征在于对于调优自动化模块的关键点是在某模块瓶颈与相关内核參数的对应关系的建立,也就是有哪些内核參数会影响该模块的性能,通过调整内核參数和应用方面的參数设置,达到调优的目的,这样就能建立网络模块与这些參数的关系图。
4.根据权利要求1所述的设计方法,其特征在于在进行调优的时候,通过遍历与网络模块相关的參数,对这些參数的值进行修改,以便达到改善网络环境的目的,当然在遍历修改的时候需要进行智能相关的控制,对于其他模块也能建立模块与相关内核參数的关系图,当某模块产生瓶颈,对与它相关的内核參数进行遍历调整,最后达到改善模块工作性能的目的。
5.根据权利要求1所述的设计方法,其特征在于在进行内核參数进行修改之前,需要修改的參数之前的值进行保存,以便一旦调优失败的时候,恢复这些參数,让系统再次调优时从该原先參数进行调整,如果调优完成了,不管成功还是不成功,都需要向建议和设置模块传递相关信息,如果成功,向建议和设置模块发送调优成功消息,如果不成功则向建议和设置模块发送不成功的消息,并提示是否有软硬件模块需要升级,或者模块与内核关系图需要进行改进,以便管 理员能及时的发现问题,并采取相关措施。
全文摘要
本发明提供一种用于计算机性能自调系统的设计,系统调优包括系统性能监控模块、调优启动判断模块、调优自动化模块、建议和设置模块,其中统性能监控模块用于对系统的各个部分是否造成系统的瓶颈进行监控,监控内容包括网络忙碌程度,cpu运行情况,内存使用情况,磁盘IO情况,各个进程的cpu占用情况,各个进程的cpu使用情况,进程的IO速度情况。
文档编号G06F11/30GK103116538SQ20131002900
公开日2013年5月22日 申请日期2013年1月25日 优先权日2013年1月25日
发明者肖健明 申请人:浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1