一种基于ipmi协议的bmc管理模块疲劳测试方法

文档序号:8298951阅读:353来源:国知局
一种基于ipmi协议的bmc管理模块疲劳测试方法
【技术领域】
[0001]本发明涉及计算机测试技术领域,特别涉及一种基于IPMI协议的BMC管理模块疲劳测试方法。
【背景技术】
[0002]随着IT领域技术的不断发展,传统信息化服务以及日趋强大的云计算服务对服务器BMC管理模块的稳定性要求越来越高。服务器的远程管理,集群管理都依赖于服务器的BMC管理模块。多数用户甚至在产品已有BMC管理模块作为底层接口,在其基础上进行二次开发,开发更适用于不同用户自身的管理软件。BMC管理模块一旦出现故障,机器的传感器信息、在位信息等无法读取,便无法判断服务器健康状态。
[0003]作为服务器产品提供商,一款服务器无论是在研发阶段还是生产阶段都需要对产品进行系统疲劳测试,而BMC管理模块的疲劳测试也是必不可少的。以往多数产品只是确保BMC管理模块的各种功能是否实现了,很少测试BMC的稳定性,也因为BMC的稳定性测试尚无一种很有效、可执行性高的方法。采用手动管理页面操作或命令操作来进行BMC测试,无法达到频繁持续的加压,并且手动测试太浪费人力。
[0004]因此基于IPMI协议规范,本发明提出了一种实用性强、基于IPMI协议的BMC管理模块疲劳测试方法,既能节省人力又能保持BMC的频繁持续通信,进而实现BMC管理模块的压力测试。

【发明内容】

[0005]本发明为了弥补现有技术的缺陷,提供了一种简单有效的基于IPMI协议的BMC管理模块疲劳测试方法。
[0006]本发明是通过如下技术方案实现的:
一种基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于包括以下步骤:
(1)根据产品支持的IPMI协议规范版本制定标准化常用命令集;
(2)设置BMC管理模块疲劳测试程序的执行时间;
(3)测试程序循环调用执行命令集文本中的每行命令并判断是否执行成功;
(4)将测试记录重定向输出至运行日志,并将错误另行记录在错误日志中。
[0007]所述步骤(I)中,首先确认产品支持的IPMI协议规范版本,然后根据不同的协议版本,将常用命令输入至.txt文本中;疲劳测试程序读取所述命令集文本中的所有命令为后面的测试做准备。
[0008]所述IPMI 协议规范版本包括 IPMI1.1、IPMI1.5、IPMI2.0 等。
[0009]所述步骤(2)中,手动输入执行时间后,BMC管理模块疲劳测试程序根据所设置的执行时间自动计时,计时结束后将终止测试程序并显示错误日志。
[0010]所述步骤(3)中,测试程序循环调用执行命令集文本中的每行命令并判断是否执行成功,当有执行失败时将失败的命令及输出保存至错误日志中;判断结束后继续执行下一行命令,则将疲劳程序执行记录保存到执行日志中,然后继续下一个循环测试。
[0011]所述步骤(4)中,疲劳测试程序循环运行IPMI命令,运行测试的同时使用tee命令将所有执行过程保存到指定路径下的文件中,程序默认设置为/tmp/records:实现实时监控程序执行情况,并保存相关日志文件;当有异常发生时,通过保存的错误日志文件查看运行在哪个命令出现何种故障。
[0012]所述疲劳测试程序采用命令集调用方式,可根据当前支持的IPMI协议规范版本灵活调整命令进行疲劳测试,同时重定向输出,保留程序所有循环执行的情况并在运行结束后将错误日志显示到终端窗口。
[0013]本发明的有益效果是:该基于IPMI协议的BMC管理模块疲劳测试方法,使手动执行不可能达到的疲劳测试程度变成了可能,完全实现了应用于服务器的BMC管理模块稳定性测试,可验证BMC管理模块在长期频繁反复的高利用率情况下的从硬件到软件的稳定性,大大提升了传感器信息间歇性无法读取、机器状态无法读取、BMC运行过程中无响应等相关问题的发现率。
【附图说明】
[0014]附图1为本发明BMC管理模块疲劳测试流程示意图。
【具体实施方式】
[0015]参照说明书附图对本发明进行详细说明。
[0016]该基于IPMI协议的BMC管理模块疲劳测试方法,包括以下步骤:
(1)根据产品支持的IPMI协议规范版本制定标准化常用命令集;
(2)设置BMC管理模块疲劳测试程序的执行时间;
(3)测试程序循环调用执行命令集文本中的每行命令并判断是否执行成功;
(4)将测试记录重定向输出至运行日志,并将错误另行记录在错误日志中。
[0017]所述步骤(I)中,首先确认产品支持的IPMI协议规范版本,然后根据不同的协议版本,将常用命令输入至.txt文本中;疲劳测试程序读取所述命令集文本中的所有命令为后面的测试做准备。
[0018]所述IPMI 协议规范版本包括 IPMI1.1、IPMI1.5、IPMI2.0 等。
[0019]所述步骤(2)中,手动输入执行时间后,BMC管理模块疲劳测试程序根据所设置的执行时间自动计时,计时结束后将终止测试程序并显示错误日志。
[0020]所述步骤(3)中,测试程序循环调用执行命令集文本中的每行命令并判断是否执行成功,当有执行失败时将失败的命令及输出保存至错误日志中;判断结束后继续执行下一行命令,则将疲劳程序执行记录保存到执行日志中,然后继续下一个循环测试。
[0021]所述步骤(4)中,疲劳测试程序循环运行IPMI命令,运行测试的同时使用tee命令将所有执行过程保存到指定路径下的文件中,程序默认设置为/tmp/records:实现实时监控程序执行情况,并保存相关日志文件;当有异常发生时,通过保存的错误日志文件查看运行在哪个命令出现何种故障。
[0022]所述疲劳测试程序采用命令集调用方式,可根据当前支持的IPMI协议规范版本灵活调整命令进行疲劳测试,同时重定向输出,保留程序所有循环执行的情况并在运行结束后将错误日志显示到终端窗口。
[0023]根据该脚本程序此前读到的循环时间来循环执行疲劳测试程序,对系统运行指定时长的BMC压力测试。通过长时间反复调用执行IPMI命令,达到BMC管理模块的疲劳测试目的,测试产品的稳定性。直到循环结束,完成了程序运行的所有流程。
[0024]该方法的整个过程主要是利用shell脚本对系统进行自动化重启并检测每次重启后的存储设备信息,与初始信息进行对比判断是否有错误,免去人机交互过程,可根据设定的循环次数自动运行测试程序并重定向输出到文本中。通过设置循环时间,达到多循环反复疲劳测试。脚本程序自动调用运行IPMI命令集并自动判断命令是否执行成功,而无需再手动检测。该脚本程序根据此前输入的循环时间执行程序开始测试,直至脚本判断已按指定时间完成。在所有安装、执行的过程中,除了执行窗口会有输出显示外,同时脚本程序中的重定向设置会将所有过程记录到指定文件中,以便后续查看分析。
[0025]本发明基于IPMI协议的BMC管理模块疲劳测试方法,不同版本的IPMI协议进行BMC管理模块的疲劳测试,测试程序执行时会在调用每条IPMI指令时判断指令是否执行成功并记录所有日志,可清楚的查看每一次每条IPMI指令执行的情况。与此同时,执行失败的命令和结果会自动保存到错误日志中,可查看运行哪个命令出现了什么异常。该脚本使用方便,操作简单,实现自动循环执行,并可根据需求自动运行BMC疲劳测试并进行记录,无需进行人工交互。该方法丰富了以往仅手动检测BMC基本功能的测试方法,完全实现了BMC管理模块反复循环的压力测试,可验证BMC管理模块在长期频繁反复的高利用率情况下的从硬件到软件的稳定性,大大提升了传感器信息间歇性无法读取、机器状态无法读取、BMC运行过程中无响应等相关问题的发现率,避免问题流出。
[0026]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种于IPMI协议的BMC管理模块疲劳测试方法的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【主权项】
1.一种基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于包括以下步骤: (1)根据产品支持的IPMI协议规范版本制定标准化常用命令集; (2)设置BMC管理模块疲劳测试程序的执行时间; (3)测试程序循环调用执行命令集文本中的每行命令并判断是否执行成功; (4)将测试记录重定向输出至运行日志,并将错误另行记录在错误日志中。
2.根据权利要求1所述的基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于:所述步骤(I)中,首先确认产品支持的IPMI协议规范版本,然后根据不同的协议版本,将常用命令输入至.txt文本中;疲劳测试程序读取所述命令集文本中的所有命令为后面的测试做准备。
3.根据权利要求2所述的基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于:所述IPMI协议规范版本包括IPMI1.1、IPMI1.5、IPMI2.0等。
4.根据权利要求1所述的基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于:所述步骤(2)中,手动输入执行时间后,BMC管理模块疲劳测试程序根据所设置的执行时间自动计时,计时结束后将终止测试程序并显示错误日志。
5.根据权利要求1所述的基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于:所述步骤(3)中,测试程序循环调用执行命令集文本中的每行命令并判断是否执行成功,当有执行失败时将失败的命令及输出保存至错误日志中;判断结束后继续执行下一行命令,则将疲劳程序执行记录保存到执行日志中,然后继续下一个循环测试。
6.根据权利要求1所述的基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于:所述步骤(4)中,疲劳测试程序循环运行IPMI命令,运行测试的同时使用tee命令将所有执行过程保存到指定路径下的文件中,程序默认设置为/tmp/records:实现实时监控程序执行情况,并保存相关日志文件;当有异常发生时,通过保存的错误日志文件查看运行在哪个命令出现何种故障。
7.根据权利要求1所述的基于IPMI协议的BMC管理模块疲劳测试方法,其特征在于:所述疲劳测试程序采用命令集调用方式,可根据当前支持的IPMI协议规范版本灵活调整命令进行疲劳测试,同时重定向输出,保留程序所有循环执行的情况并在运行结束后将错误日志显示到终端窗口。
【专利摘要】本发明特别涉及一种基于IPMI协议的BMC管理模块疲劳测试方法。该基于IPMI协议的BMC管理模块疲劳测试方法,根据产品支持的IPMI协议规范版本制定标准化常用命令集;设置疲劳测试程序的执行时间;测试程序循环调用执行命令集文本中的每行命令并判断是否执行成功;将测试记录重定向输出至运行日志,并将错误另行记录在错误日志中。该基于IPMI协议的BMC管理模块疲劳测试方法,使手动执行不可能达到的疲劳测试程度变成了可能,完全实现了应用于服务器的BMC管理模块稳定性测试,可验证BMC管理模块在长期频繁反复的高利用率情况下的从硬件到软件的稳定性,大大提升了传感器信息间歇性无法读取、机器状态无法读取、BMC运行过程中无响应等相关问题的发现率。
【IPC分类】G06F11-26
【公开号】CN104615523
【申请号】CN201510097402
【发明人】苏仁娟, 王守昊
【申请人】浪潮电子信息产业股份有限公司
【公开日】2015年5月13日
【申请日】2015年3月5日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1