一种动态调整内存监控阀值的方法

文档序号:9826189阅读:212来源:国知局
一种动态调整内存监控阀值的方法
【技术领域】
[0001]本发明涉及服务器内存监控,具体涉及一种动态调整内存监控阀值的方法。
【背景技术】
[0002]随着各内存厂家的颗粒制程的减小,电容储存电荷的能力变小,影响和干扰变大,MOS管控制力弱,漏电流容易发生。尤其是单内存颗粒容量的不断增加,颗粒中的CELL电容电平判断更易受到扰动,近年来ECC问题显现越来越明显。
[0003]少量的可纠正ECC错误不会影响系统的稳定运行,不会引起系统宕机。但是当发生频繁的可纠正ECC错误时,如果不根据监控阀值将其更换,就会影响系统的稳定运行。
[0004]当发生ECC错误时,需要CPU进行纠正,可能会带来一定的性能损失。对于一般的应用场景而言,可以适当提高内存ECC监控阀值,减少停机次数和维护成本。但是对于一些高性能等应用,就要降低阀值,以保证运算性能。
[0005]内存ECC监控阀值一般是写入B1S中,或者通过B1Ssetup选项来调整,不方便灵活地根据业务场景来调整。

【发明内容】

[0006]本发明的技术任务是针对现有技术的不足,提供一种动态调整内存监控阀值的方法。本方法可以通过BMC带外来获取实时的可纠正ECC错误数量,根据设定的阀值触发报警,提示系统管理员采取相应措施。
[0007 ]本发明解决其技术问题所采用的技术方案是:
一种动态调整内存监控阀值的方法,通过BMC(Baseboard Management Controller)基板管理控制器,获取CPU记录的内存可纠EECC(Error-Correcting Code)错误的数量;根据业务对内存可纠正ECC错误的要求,设定监控阀值,当监控到内存可纠正ECC错误的数量超过阀值时,自动触发报警,并提示系统管理员采取相应措施;其实施步骤为:I)、设定参数;
2)、执行脚本;3)、开始监控;4)、判断是否超过阀值;5)、故障处理。
[0008]进一步的,该方法通过PECI(PlatformEnvironment Control Interface)接口,获取CPU记录的内存可纠正ECC错误的数量。
[0009]根据实际的网络环境,修改IP为被监控服务器BMC的管理IP。
[0010]根据业务要求,修改threshold为监控阀值,修改interval为监控周期。
[0011 ] 设定参数时,将MemoryMonitor.sh拷贝至系统/opt目录下,并赋予执行权限。
[0012]执行脚本对服务器内存进行监控,当发现内存可纠正ECC错误数量超过阀值时,自动发邮件报警。
[0013]本发明的一种动态调整内存监控阀值的方法与现有技术相比,所产生的有益效果是,本发明可以通过BMC带外来获取实时的可纠正ECC错误数量,根据设定的阀值触发报警,提示系统管理员采取相应措施。以便其及时将有隐患内存更换,避免对业务产生不良影响。
【附图说明】
[0014]附图1是本发明一种动态调整内存监控阀值的方法流程图。
【具体实施方式】
[0015]下面结合附图对本发明的一种动态调整内存监控阀值的方法作以下详细地说明。[00^6] 一种动态调整内存监控阀值的方法,通过BMC(Baseboard ManagementControlIer)基板管理控制器,获取CPU记录的内存可纠正ECC(Error_Correcting Code)错误的数量;根据业务对内存可纠正ECC错误的要求,设定监控阀值,当监控到内存可纠正ECC错误的数量超过阀值时,自动触发报警,并提示系统管理员采取相应措施;其实施步骤为:1)、设定参数;2)、执行脚本;3)、开始监控;4)、判断是否超过阀值;5)、故障处理。
[0017]进一步的,该方法通过PECI(PlatformEnvironment Control Interface)接口,获取CPU记录的内存可纠正ECC错误的数量。
[0018]根据实际的网络环境,修改IP为被监控服务器BMC的管理IP^
[0019]根据业务要求,修改threshold为监控阀值,修改interval为监控周期D
[0020]设定参数时,将MemoryMonitor.sh拷贝至系统/opt目录下,并赋予执行权限。
[0021]执行脚本对服务器内存进行监控,当发现内存可纠正ECC错误数量超过阀值时,自动发邮件报警。
[0022]本发明包含一个shell脚本MemoryMonitor.sh,内容如下:
#!/bin/bash
threshold=1024interval=3600IP=192.168.100.100while truedo
ecc_count='ipmitool -1 lanplus -H $IP -U 〃admin〃 -P 〃admin〃 _t 0x2c _bOxO raw 0x2e 0x40 0x57 OxOl OxOO 0x30 0x06 0x05 0x61 0x0 0x04 0x21 0xf8 0x03if [ 〃$ecc_count〃 -gt 〃$threshold〃 ]then
echo "Memory on $IP has too many ECC errors!" | mail -s 〃ECC errorwarning detected on $IP〃 admin@xxx.comfi
sleep $intervaldone
本发明通过BMC带外来获取实时的可纠正ECC错误数量,根据设定的阀值触发报警,提示系统管理员采取相应措施,以便其及时将有隐患内存更换,避免对业务产生不良影响。
【主权项】
1.一种动态调整内存监控阀值的方法,其特征在于通过BMC(Baseboard ManagementController)基板管理控制器,获取CPU记录的内存可纠正ECC(Error-Correcting Code)错误的数量;根据业务对内存可纠正ECC错误的要求,设定监控阀值,当监控到内存可纠正ECC错误的数量超过阀值时,自动触发报警,并提示系统管理员采取相应措施;其实施步骤为:I)、设定参数;2)、执行脚本;3)、开始监控;4)、判断是否超过阀值;5)、故障处理。2.根据权利要求1所述的一种动态调整内存监控阀值的方法,其特征在于通过PECI(Platform Environment Control Interface)接口,获取CPU记录的内存可纠正ECC错误的数量。3.根据权利要求1所述的一种动态调整内存监控阀值的方法,其特征在于根据实际的网络环境,修改IP为被监控服务器BMC的管理IP。4.根据权利要求1所述的一种动态调整内存监控阀值的方法,其特征在于设定参数,根据业务要求,修改threshold为监控阀值,修改interval为监控周期。5.根据权利要求1所述的一种动态调整内存监控阀值的方法,其特征在于设定参数时,将MemoryMonitor.sh拷贝至系统/opt目录下,并赋予执行权限。6.根据权利要求1所述的一种动态调整内存监控阀值的方法,其特征在于执行脚本对服务器内存进行监控,当发现内存可纠正ECC错误数量超过阀值时,自动发邮件报警。
【专利摘要】本发明提供一种动态调整内存监控阀值的方法,通过BMC(Baseboard?Management?Controller)基板管理控制器,获取CPU记录的内存可纠正ECC(Error-Correcting?Code)错误的数量;根据业务对内存可纠正ECC错误的要求,设定监控阀值,当监控到内存可纠正ECC错误的数量超过阀值时,自动触发报警,并提示系统管理员采取相应措施。本方法可以通过BMC带外来获取实时的可纠正ECC错误数量,根据设定的阀值触发报警,提示系统管理员采取相应措施,以便其及时将有隐患内存更换,避免对业务产生不良影响。
【IPC分类】G06F11/30
【公开号】CN105589789
【申请号】CN201510984888
【发明人】李双星
【申请人】浪潮电子信息产业股份有限公司
【公开日】2016年5月18日
【申请日】2015年12月25日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1