一种服务器内部压力变化自动测试方法
【专利摘要】本发明公开了一种服务器内部压力变化自动测试方法,其具体实现过程为:利用shell脚本在linux操作系统下执行指令,抓取系统版本、IP地址、内存、CPU、device、hostname等详细信息,将抓取的信息进行分析,并调用这些信息,自动化安装linpack,并设置参数;通过手动输入期望执行的循环次数,达到多循环反复多程度负载压力测试;脚本程序自动运行linpack程序并自动设置负载压力程度及时长,而无需再手动多次设置,从而实现压力负载的自动变化。该一种服务器内部压力变化自动测试方法与现有技术相比,完全实现了自动化,简洁、省时、易操作,节省人力,同时还确保了浮点运算测试性能的准确性。
【专利说明】—种服务器内部压力变化自动测试方法
【技术领域】
[0001]本发明涉及计算机服务器【技术领域】,具体地说是一种实用性强、服务器内部压力变化自动测试方法。
【背景技术】
[0002]安腾CPU往往应用在高端服务器上,而高端服务器相较于通用服务器,对性能及稳定性都有更高的要求。作为服务器产品提供商,一款服务器无论是在研发阶段还是生产阶段都需要对产品进行系统压力测试,从而严格保证该产品的稳定性。而目前安腾平台用于压力测试的工具或方法大多与通用服务器并无不同,由此很难保证高端服务器更高的稳定性。并且,以往多采用满负载压力来测试CPU、内存的稳定性,其实用户实际应用时的负载往往是反复高低变化的,基于此,现提供一种实用性强、基于Intel的linpack工具开发了一个适用于安腾平台的自动变化CPU、内存压力负载的测试方法。
【发明内容】
[0003]本发明的技术任务是针对以上不足之处,提供一种实用性强、服务器内部压力变化自动测试方法。
[0004]一种服务器内部压力变化自动测试方法,其具体实现过程为:
在服务器内设置自动化测试脚本并运行,人工输入期望脚本程序的循环次数,自动化测试脚本读取该次数值,并向用户提示脚本程序将执行的次数;
自动化测试脚本执行指令,收集操作系统版本、内存、CPU、外设、网络信息,根据收集的信息配置安装环境;
安装linpack程序,并判定当前运行次数;
当前运行次数小于设定运行次数时,设置linpack所需参数,该参数包括Ns值、Nb值、Ps值、Qs值,并运行linpack程序,将运行过程及结果输出到文本中;
结束该次运行,运行次数加1,然后返回上一步;
当运行次数不小于设定运行次数时,结束整个测试过程。
[0005]所述自动化测试脚本为shell脚本且在linux操作系统下的服务器端运行。
[0006]运行测试的同时将所执行过程定向输出到指定路径下的文件中,并同时使用tail命令实时查看重定向的文件,实现实时监控程序执行情况,保存相关文件,当有异常发生时,通过保存的文件查看运行在哪个级别的负载出现故障。
[0007]本发明的一种服务器内部压力变化自动测试方法,具有以下优点:
该发明的一种服务器内部压力变化自动测试方法通过SHELL脚本自动安装安腾平台特殊的编译环境,同时根据系统信息自动安装测试工具,免去人为安装的操作失误,并且实行CPU、内存的负载变化测试,模拟了客户的应用场景,贴近客户的实际应用负载情况,更加全面的对CPU、内存进行多程度负载测试;同时大大简化了压力测试的操作流程,特别是对于高密度服务器,轻松实现了对大量节点的无人值守变化压力测试,最后测试结果也较为直观,可直接衡量CPU浮点运算性能,是否达到业界内标准;本方法对于不熟悉安腾架构而又需要测试安腾架构的服务器产品的性能及稳定性的技术人员有着非常实际的意义,实用性较强,适用范围广泛,易于推广。
【专利附图】
【附图说明】
[0008]附图1为本发明的实现流程图。
【具体实施方式】
[0009]下面结合附图和具体实施例对本发明作进一步说明。
[0010]本发明提供一种服务器内部压力变化自动测试方法,如附图1所示,其具体实现过程为:
一、在服务器内设置自动化测试脚本并运行,通过命令服务器终端运行该自动化测试脚本,根据人工输入期望脚本程序的循环次数,脚本程序会读取该次数值为后面的循环判断做准备。并向用户提示脚本程序将执行的次数。具体操作如下:please input the cycle times:auto-1inpackwi11 run n times。
[0011]二、抓取系统信息并配置安装环境。
[0012]在手动输入执行循环次数后,就进行完全自动化过程,脚本自动执行指令uname-a、ifconfig、cat /proc/meminfo、cat /proc/cpuinfo、demidecode、hostname。并将这些信息收集,根据收集的信息配置安装环境,例如适用于安腾平台的编译环境。
[0013]三、调用linpack程序并自动设置参数。
[0014]安装linpack,并在运行之前自动设置好相应参数(不同的Ns值、Nb值、Ps值、Qs值的组合情况),之后自动运行linpack程序并在每一次运行结束后重新设置参数,并重新运行,循环往复。直到达到手动设置的运行次数,测试程序自动停止。
[0015]四、循环执行auto-linpack脚本程序并定向输出。
[0016]运行测试的同时将所执行过程定向输出到指定路径下的文件中,脚本程序默认设置为/home/auto-linpack/record.log,并同时使用tail命令实时查看重定向的文件来实现既可实时监控程序执行情况,又可保存相关文件,如有异常,可通过保存的文件查看运行在哪个级别的负载出现故障。该脚本程序采用文本追加的方向重定向输出,因此可保留程序所有循环执行的情况。
[0017]上述测试方法的整个过程主要是利用shell脚本在linux操作系统下执行指令uname - a、ifconfig、cat /proc/meminfo、cat /proc/cpuinfo、demidecode、hostname0 抓取系统版本、IP地址、内存、CPU、device、hostname等详细信息,将抓取的信息进行分析,并调用这些信息,自动化安装linpack,并设置参数。不必另外手动安装测试工具,以抓取的各信息为准,不会产生人为的测试参数设置错误。通过手动输入期望执行的循环次数,达到多循环反复多程度负载压力测试。脚本程序自动运行linpack程序并自动设置负载压力程度及时长,而无需再手动多次设置,从而实现压力负载的自动变化。在所有安装、执行的过程中,除了执行窗口会有输出显示外,同时脚本程序中的重定向设置会将所有过程记录到指定文件中,以便后续查看分析。该方法完全实现了自动化,简洁、省时、易操作,节省人力,同时还确保了浮点运算测试性能的准确性。
[0018]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种服务器内部压力变化自动测试方法的权利要求书的且任何所述【技术领域】的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【权利要求】
1.一种服务器内部压力变化自动测试方法,其特征在于,其具体实现过程为: 在服务器内设置自动化测试脚本并运行,人工输入期望脚本程序的循环次数,自动化测试脚本读取该次数值,并向用户提示脚本程序将执行的次数; 自动化测试脚本执行指令,收集操作系统版本、内存、CPU、外设、网络信息,根据收集的信息配置安装环境; 安装Iinpack程序,并判定当前运行次数; 当前运行次数小于设定运行次数时,设置Iinpack所需参数,该参数包括Ns值、Nb值、Ps值、Qs值,并运行Iinpack程序,将运行过程及结果输出到文本中; 结束该次运行,运行次数加1,然后返回上一步; 当运行次数不小于设定运行次数时,结束整个测试过程。
2.根据权利要求1所述的一种服务器内部压力变化自动测试方法,其特征在于,所述自动化测试脚本为shell脚本且在Iinux操作系统下的服务器端运行。
3.根据权利要求2所述的一种服务器内部压力变化自动测试方法,其特征在于,运行测试的同时将所执行过程定向输出到指定路径下的文件中,并同时使用tail命令实时查看重定向的文件,实现实时监控程序执行情况,保存相关文件,当有异常发生时,通过保存的文件查看运行在哪个级别的负载出现故障。
【文档编号】G06F11/26GK104375914SQ201410679346
【公开日】2015年2月25日 申请日期:2014年11月24日 优先权日:2014年11月24日
【发明者】王超 申请人:浪潮电子信息产业股份有限公司