一种服务器健康度评估方法与流程

文档序号:12464007阅读:736来源:国知局
一种服务器健康度评估方法与流程

本发明涉及计算机领域,尤其涉及一种服务器健康度评估方法。



背景技术:

不同的服务器工作内容大不相同,很多服务器经常连续不停运转,加上负载不均衡等原因,使得服务器故障层出不穷。较早的服务器监控方法非常简单:针对每台服务器分别下达指令以采集相关指标来判断其运行状况。然而,随着服务器规模的急剧扩大,针对单个服务器通过指令判断故障的方法已经无法满足需求。

为了能有效监控大量服务器,市场上出现了各种服务器性能监控软件。这些软件能够对各个指标进行有效监控,如cpu,内存,磁盘,网络流量等。通过了解各个监控指标的性能以及状态信息,可以快速了解服务器各个部分的运行情况。如果事先为各个指标设立监控指标阈值,当性能值超过指标阈值即可触发告警,并及时发送告警信息通知网管人员维修。这也是目前服务器监控中最普遍的做法。然而,对服务器整体性能做出评估的软件却少之甚少。主要原因在于服务器各有分工,不同的工作任务使得各个指标对不同服务器的重要性也各不相同。对一些服务器而言cpu是一个重要指标,但是对其他服务器而言cpu可能不及内存更重要,因此,在对服务器做整体评估时,不能同一地对待各个指标对服务器总的影响力。这也是很难对整个服务器性能评估的主要原因之一。尽管如此,对服务器整体的性能评估依然很重要,因为只有这样我们才能知道这台服务器是否健康。例如,一些服务器虽未触发告警,但可能各项指标均接近指标阈值,如果不能及时检测出来,很有可能出现服务器运行不稳定,甚至出现系统崩溃的情况。因此,及时了解服务器各项指标的运行情况和服务器整体健康状况是非常重要的。

目前的服务器健康度评估方法中,对各个组件的健康度评估比较武断,服务器健康度量化结果不够细分,且健康度分段过程中指标阈值设定同一化,难以将不同业务下的指标进行有效区分,例如:很多文献直接按照一特定指标阈值将其分为健康、不健康、亚健康。一方面,统一地将组件分为健康、不健康、亚健康太过笼统,很难进一步将评估结果细分。另一方面,这里面的指标阈值设定对少量服务器而言还可操作,但是,面对大量服务器,如何设定合适的指标阈值就是一个难题了。相当多的做法是为各个指标,如cpu占用率,按照经验设定指标阈值,超出90%为不健康,超出80%亚健康,低于80%为健康。这么做虽然操作简单,但是,不同的服务器业务不同,对指标的要求也各不相同,设定同一的指标阈值显然会使结果出现较大误差。当然,有的文献结合告警事件来确定网元指标在触发告警后产生的健康度下降程度,但是也只是将超出指标阈值而触发告警的情况考虑进去,却没有考虑未触发告警的情况下网元指标的健康度问题。即,服务器健康度衡量中普遍认为未触发告警时的服务器是健康的,从而将未触发告警的情况忽略掉。事实上,未触发告警时的健康度问题更为重要。这是因为,大多服务器并未触发告警,如果均不考虑的话,很难将其中接近告警范围却并未触发告警的服务器识别出来。

大多数文献在利用网元指标(或组件)加权求取系统的整体健康度时,要么采用专家经验定权,要么利用图的广度优先遍历算法定权,但是,这样得出的健康度结果很难直接和告警分析结合起来。无论上述哪种权重判定方法,且不管权重设定是否准确,由于未结合告警分析的目标,得出的评估结果很难直接用来辅助告警分析。服务器健康度的评估结果需要直接来判定服务器在告警分析中的严重程度,上述权重均难以达到此种目的。



技术实现要素:

针对现有技术的缺点,本发明的目的是提供一种服务器健康度评估方法。

为了实现上述目的,本发明提供了一种服务器健康度评估方法。包括如下步骤:

S1:获取服务器的网元指标;

S2:通过网管的指标阈值监控信息获取每一网元指标的告警等级以及每一告警等级的指标阈值,指标阈值包括指标阈值上限或/和指标阈值下限;

S3:实时获取每一网元指标性能值;当网元指标性能值未超出指标阈值上限或未低于指标阈值下限时,根据每一告警等级、每一告警等级的指标阈值以及每一网元指标性能值计算每一网元指标的健康度损减分数;

S4:根据每一网元指标的健康度损减分数以及每一网元指标的权重计算服务器的健康度。

本发明提供的服务器健康度评估方法,通过获取服务器的网元指标,通过网管的指标阈值监控信息获取每一网元指标的告警等级以及每一告警等级的指标阈值,数据来源更精确;通过判断网元指标性能值是否超过指标阈值,综合分析网元指标性能值未超过指标阈值及超过指标阈值时服务器的健康度,有效的填补了现有技术仅仅分析网元指标超过指标阈值,发生告警时服务器的健康度的空白,结合每一网元指标的健康度损减分数以及每一网元指标的权重评估服务器的健康度,能够更科学,更真实有效的反映服务器的健康度,并且,通过本发明得出的服务器健康度评估结果,将辅助告警分析,能够帮助网管人员快速找出更可能出现告警或者告警严重的服务器。

根据本发明另一具体实施方式,网元指标包括:CPU占用率、内存占用率、磁盘繁忙度、分区占用率、虚拟内存占用率。

根据本发明另一具体实施方式,告警等级包括四个等级,分别为0、1、2、3,其中:0等级的告警严重程度最高,1等级次之,2等级再次之,3等级的告警严重程度最低。

根据本发明另一具体实施方式,步骤S3还包括步骤S31:

所述步骤S3还包括步骤S31:

当所述网元指标性能值超出所述指标阈值上限或低于指标阈值下限时,将所述告警等级对应的所述网元指标的健康度减损分数设定为SL,触发0等级时,SL=40;触发1等级时,SL=30;触发2等级时,SL=20;触发3等级时,SL=10。

根据本发明另一具体实施方式,当网元指标只设置了一个告警等级,且告警等级的指标阈值包括指标阈值上限和指标阈值下限时,在步骤S3中,通过以下公式计算网元指标未超出阈值范围时的健康度损减分数:

S=(rrd-td)2/(tu-td)2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,td为指标阈值下限,wl为告警等级。

根据本发明另一具体实施方式,当网元指标只设置了一个告警等级,且告警等级的指标阈值仅包括指标阈值上限时,在步骤S3中,通过以下公式计算网元指标未超出阈值范围时的健康度损减分数:

SL=(rrd)2/(tu)2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,wl为告警等级。

根据本发明另一具体实施方式,当网元指标设置了多个告警等级,且每一告警等级的指标阈值包括指标阈值上限和指标阈值下限时,在步骤S3中,通过以下公式计算网元指标未超出阈值范围时的健康度损减分数:

SL=(rrd-max(td))2/(min(tu)-max(td))2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,td为指标阈值下限,wl为告警严重程度最低的告警等级。

根据本发明另一具体实施方式,当网元指标设置了多个告警等级,且每一告警等级的指标阈值仅包括指标阈值上限时,在步骤S3中,通过以下公式计算网元指标未超出阈值范围时的健康度损减分数:

SL=(rrd)2/(min(tu))2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,wl为告警严重程度最低的告警等级。

根据本发明另一具体实施方式,在步骤S4中,通过以下步骤确定每一网元指标的权重:

S41:根据网元指标性能值是否超出指标阈值上限或低于指标阈值下限,将网元指标分为A类网元指标、B类网元指标,其中,A类网元指标超出指标阈值上限或低于指标阈值下限,B类网元指标未超出指标阈值上限或未低于指标阈值下限;

S42:将A类网元指标权重均设置为1;

S43:在B类网元指标中,将网元指标损减分数最大的权重设置为1,损减分数次之的权重设置为1/2,损减分数大小第3的权重设置为1/3,以此类推;

S44:根据公式S=100-∑SLA-∑SLB/n计算服务器的健康度,其中SLA为A类网元指标健康度损减分数,SLB为B类网元指标健康度损减分数,B类网元指标损减分数最大者n为1,损减分数次之者n为2,损减分数再次之者n为3,以此类推。

与现有技术相比,本发明具备如下有益效果:

本发明通过网管的指标阈值监控信息获取网元指标的告警等级以及每一告警等级的指标阈值范围,数据来源更精确;通过判断网元指标性能值是否超过指标阈值范围,综合分析网元指标性能值未超过指标阈值,及超过指标阈值上限或低于指标阈值下限时服务器的健康度,有效的填补了现有技术仅仅分析网元指标超过指标阈值,发生告警时服务器的健康度的空白,提出了更科学,更能真实反映服务器的健康度的评估方法。本发明在设置网元指标的权重时,将权重的设定与告警分析结合,通过将对服务器健康度影响较大的网元指标,也就是对健康度损减严重的网元指标赋予较大权重,而健康度损减小的赋予较小权重,通过该权重设置方法,能够更准确的反映服务器的告警程度,使得对服务器健康度的评估更加准确。通过本发明得出的服务器健康度评估结果,将辅助告警分析,能够帮助网管人员快速找出更可能出现告警或者告警严重的服务器。

下面结合附图对本发明作进一步的详细说明。

附图说明

图1是实施例1的一种服务器健康度评估方法的流程图;

图2是图1中步骤S4的具体流程图。

具体实施方式

实施例1

本实施例提供了一种服务器健康度评估方法,包括如下步骤:

S1:获取服务器的网元指标。

该步骤用于获取服务器的网元指标。具体实施时,根据实际情况获取服务器的网元指标,网元指标包括但不限于CPU占用率、内存占用率、磁盘繁忙度、分区占用率、虚拟内存占用率,网元指标信息来源于网管监控信息。

S2:通过网管的指标阈值监控信息获取每一网元指标的告警等级以及每一告警等级的指标阈值,所述指标阈值包括指标阈值上限或/和指标阈值下限。

该步骤用于获取每一网元指标的告警等级以及每一告警等级的指标阈值。具体的,告警等级包括四个等级,分别为0、1、2、3,其中:0等级的告警严重程度最高,1等级次之,2等级再次之,3等级的告警严重程度最低。指标阈值包括指标阈值上限或/和指标阈值下限。

每一网元指标的告警等级以及每一告警等级的指标阈值信息均来自于网管的指标阈值监控信息。具体实施时,网管的指标阈值监控信息根据实际情况设置告警等级,例如:有的网元指标分别设置了0、1、2、3四个告警等级,但是也有很多只设置了2一个告警等级,或者设置了2,3两个告警等级;此外,根据监控需要,部分指标阈值设置了指标阈值上限和指标阈值下限,而更多情况下只设置指标阈值上限。为了更好的理解告警等级和指标阈值的设置情况,现举例说明:假设某一服务器的网元指标为CPU占用率、内存占用率、磁盘繁忙度,CPU占用率的告警等级设置了0、1、2、3四个等级,其中:告警等级0、1、2均设置了指标阈值上限和指标阈值下限,告警等级3只设置了指标阈值上限;内存占用率的告警等级设置了2、3两个等级,其中:告警等级2设置了指标阈值上限和指标阈值下限,告警等级3只设置了指标阈值上限,磁盘繁忙度的告警等级设置了2一个等级,其中:告警等级2只设置了指标阈值上限。

S3:实时获取每一网元指标性能值;当网元指标性能值未超出指标阈值上限或未低于指标阈值下限时,根据每一告警等级、每一告警等级的指标阈值以及每一网元指标性能值计算每一网元指标的健康度损减分数。

该步骤用于计算当前网元指标性能值未超过指标阈值上限或未低于指标阈值下限时,该网元指标的健康度损减分数。

具体的,当网元指标只设置了一个告警等级,且告警等级的指标阈值包括指标阈值上限和指标阈值下限时,通过以下公式计算网元指标未超出阈值范围时的健康度损减分数:

S=(rrd-td)2/(tu-td)2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,td为指标阈值下限,wl为告警等级。

例如:当网元指标为CPU占用率时,设置的告警等级为2,则此时wl=2,该告警等级设置的指标阈值上限为90,指标阈值下限为5,获取到的当前网元指标性能值为83,即通过上述公式计算网元指标未超过阈值范围时的健康度损减分数。

当网元指标只设置了一个告警等级,且告警等级的指标阈值仅包括指标阈值上限时,在步骤S3中,通过以下公式计算网元指标未超出阈值范围时的健康度损减分数:

SL=(rrd)2/(tu)2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,wl为告警等级。

当网元指标设置了多个告警等级,且每一告警等级的指标阈值包括指标阈值上限和指标阈值下限时,在步骤S3中,通过以下公式计算网元指标未超出阈值时的健康度损减分数:

SL=(rrd-max(td))2/(min(tu)-max(td))2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,td为指标阈值下限,wl为告警严重程度最低的告警等级。

例如:当网元指标为CPU占用率时,设置的告警等级为0、2、3,告警等级为0时,指标阈值上限为95、指标阈值下限为1;告警等级为2时,指标阈值上限为85,指标阈值下限为10;告警等级为3时,指标阈值上限为80、指标阈值下限为15。假设获取到的当前网元指标(CPU占用率)性能值rrd=78,即获取到的CPU占用率性能值未超过告警严重程度最低的告警等级对应的指标阈值上限,或高于告警严重程度最低的告警等级对应的指标阈值下限(即未触发告警),则wl=3,max(td)=15,min(tu)=80。

当网元指标设置了多个告警等级,且告警等级的指标阈值仅包括指标阈值上限时,在步骤S3中,通过以下公式计算网元指标未超出阈值时的健康度损减分数:

SL=(rrd)2/(min(tu))2×(4-wl)×10

其中:rrd为网元指标性能值,tu为指标阈值上限,wl为告警严重程度最低的告警等级。

具体实施时,当网元指标性能值超出指标阈值上限或者低于阈值下限(即触发告警)时,将告警等级对应的网元指标的健康度减损分数设定为SL,触发0等级时,SL=40;触发1等级时,SL=30;触发2等级时,SL=20;触发3等级时,SL=10。

S4:根据每一网元指标的健康度损减分数以及每一网元指标的权重计算服务器的健康度。

该步骤用于计算服务器的健康度。具体的,参见图2,该步骤通过如下步骤实现:

S41:根据网元指标性能值是否超出指标阈值上限或低于指标阈值下限,将网元指标分为A类网元指标、B类网元指标,其中,A类网元指标超出指标阈值上限或低于阈值下限,B类网元指标未超出指标阈值上限且未低于阈值下限。

具体的,判断实时获取的网元指标性能值是否超出指标阈值上限或低于阈值下限,当网元指标有多个告警等级时,判断实时获取的网元指标性能值是否超过告警严重程度最低的告警等级的指标阈值范围,即判断是否触发告警,将未超出指标阈值,即未触发告警的网元指标设置为A类,将超出指标阈值,即触发告警的网元指标设置为B类。

S42:将A类网元指标权重均设置为1。

具体的,将A类网元指标权重均设置为1的原因是:网元指标性能值超出指标阈值,触发告警对服务器的健康产生的影响是一定存在的。

S43:在B类网元指标中,将网元指标损减分数最大的权重设置为1,损减分数次之的权重设置为1/2,损减分数大小第3的权重设置为1/3,以此类推。

具体的,该步骤中权重设置方法是根据不同损减程度的网元指标对服务器健康度影响不同,损减分数最大的网元指标,虽然暂时没有超出指标阈值范围、触发告警,但是相对其他网元指标而言,它对服务器健康的威胁最大,因此权重也最大。损减分数较小的网元指标,既未超出阈值范围,而且对服务器造成的影响也小,因此权重也较小。

S44:根据公式S=100-∑SLA-∑SLB/n计算服务器的健康度,其中SLA为A类网元指标健康度损减分数,SLB为B类网元指标健康度损减分数,B类网元指标损减分数最大者n为1,损减分数次之者n为2,损减分数再次之者n为3,以此类推。

具体的,分别根据A类网元指标健康度损减分数和B类网元指标健康度损减分数计算服务器的健康度。

本实施例通过网管的指标阈值监控信息获取网元指标的告警等级以及每一告警等级的指标阈值,数据来源更精确;通过判断网元指标性能值是否超过指标阈值,综合分析网元指标性能值未超过指标阈值及超过指标阈值时服务器的健康度,有效的填补了现有技术仅仅分析网元指标超过指标阈值,发生告警时服务器的健康度的空白,提出了更科学,更能真实反映服务器的健康度的评估方法。本实施例在设置网元指标的权重时,将权重的设定与告警分析结合,通过将对服务器健康度影响较大的网元指标,也就是对健康度损减严重的网元指标赋予较大权重,而健康度损减小的赋予较小权重,能够更准确的反映服务器的告警程度,使得对服务器健康度的评估更加准确。通过本实施例得出的服务器健康度评估结果,将辅助告警分析,能够帮助网管人员快速找出更可能出现告警或者告警严重的服务器。

虽然本发明以较佳实施例揭露如上,但并非用以限定本发明实施的范围。任何本领域的普通技术人员,在不脱离本发明的发明范围内,当可作些许的改进,即凡是依照本发明所做的同等改进,应为本发明的范围所涵盖。

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