CN106445767A - 存储器中raid类型的io设置ip及时间的方法 - Google Patents
存储器中raid类型的io设置ip及时间的方法 Download PDFInfo
- Publication number
- CN106445767A CN106445767A CN201610886775.2A CN201610886775A CN106445767A CN 106445767 A CN106445767 A CN 106445767A CN 201610886775 A CN201610886775 A CN 201610886775A CN 106445767 A CN106445767 A CN 106445767A
- Authority
- CN
- China
- Prior art keywords
- time
- setting
- memory
- raid type
- type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/263—Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
Abstract
本发明公开存储器中RAID类型的IO设置IP及时间的方法,涉及到存储器测试技术,使用linux 系统下perl语言编写的自动化脚本,通过串口及网线对IO的IP及时间进行自动化设置;其主要步骤包括:1)扫描存储器中I/O的序列号;2)自动判断I/O类型并自动加载I/O驱动;3)硬件检测;4)设置上下I/O的IP;设置系统下成功后重启I/O;5)检测I/O的IP设置是否成功;6)设置I/O的时间。本发明能够应用于大部分存储器IO的IP及时间设置,可以同时大批量的测试,每个步骤都有测试log产生,有利于问题分析及定位,减少了不必要的人机交互过程,节省人力、时间、成本等资源,提高了工作效率。
Description
技术领域
本发明涉及到存储器测试技术,具体的说是存储器中RAID类型的IO设置IP及时间的方法。
背景技术
存储器(Memory)是现代信息技术中用于保存信息的记忆设备。计算机中全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。有了存储器,计算机才有记忆功能,才能保证正常工作。计算机中的存储器按用途存储器可分为主存储器(内存)和辅助存储器(外存)。
目前随着IT领域技术的不断发展,存储器作为大数据时代的主流产物,也随着涉足领域的逐渐增多,市场存储器需求量逐渐增大。公司存储器出货量越来越大,能够按时的达成生产排配准时出货,不但关系到公司的信誉也代表一个公司的生产能力,同时也影响着客户的满意度。企业注重生产速度的同时也要求品质有保障,对于研发及生产的测试要求越来越高。无论是研发段还是生产线的测试,产品的测试能够高效的完成是至关重要的一个环节。
针对存储器的测试,进行自动化的切入是必要的;所以针对存储器RAID类型的IO做了一些自动化测试的导入,其中IO的IP设置及时间设置之前一直是一个人工操作的项目,需要大量人为操作参与进来,这就不可避免的出现由于人为因素造成的失误,致使设置不准确,测试时间长而且成功率不高,又不会产生测试log;浪费了大量人力、时间,工作效率不高,产品品质得不到保障。
发明内容
本发明针对目前技术发展的需求和不足之处,提供存储器中RAID类型的IO设置IP及时间的方法。
本发明所述存储器中RAID类型的IO设置IP及时间的方法,解决上述技术问题采用的技术方案如下:所述存储器中RAID类型的IO设置IP及时间的方法,使用linux 系统下perl语言编写的自动化脚本,通过串口及网线对IO的IP及时间进行自动化设置;其主要步骤包括:1)扫描存储器中I/O的序列号;2)自动判断I/O类型并自动加载I/O驱动;3)硬件检测;4)设置上下I/O的IP;设置系统下成功后重启I/O;5)检测I/O的IP设置是否成功;6)设置I/O的时间。
优选的,所述步骤2) 自动判断I/O类型并自动加载I/O驱动,若加载成功则自动化脚本继续,若加载失败则打印error,处理异常后重新执行。
优选的,所述步骤3)硬件检测,自动化脚本通过串口线及SAS线抓取信息,自动判断服务器与存储器的连接状态及各个模块的在位状况,若各个模块状态正常则继续运行,若判断出存储器端及服务器端有异常则会在终端报错“test fail”,同时打印error信息,排除问题后继续重新测试。
优选的,所述步骤5)检测I/O的IP设置是否成功,成功则继续进行下步测试,不成功则结束,终端打印出error信息;然后排除异常重新测试。
优选的,所述步骤6)设置I/O的时间,首先判断上下两个IO的时间是否相同,是与系统时间一致,若两个IO的时间异常则重新设置时间;若I/O的时间是正确的则提示pass,继续进行。
本发明所述存储器中RAID类型的IO设置IP及时间的方法与现有技术相比具有的有益效果是:本发明应用于大部分存储器IO的IP设置及时间设置,可以同时大批量的测试,每个测试步骤都有测试log产生,有利于问题分析及定位,减少了不必要的人机交互过程,节省人力、时间、成本等资源,不但提高了效率,而且有质量保障;该方法操作简单,实用性较强,并且不会有人为配置时可能出现的错误、漏失等,很大程度上提高生产速度。
附图说明
附图1为所述存储器中RAID类型的IO设置IP及时间的方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,对本发明所述存储器中RAID类型的IO设置IP及时间的方法进一步详细说明。
实施例:
本实施例所述存储器中RAID类型的IO设置IP及时间的方法,使用linux 系统下perl语言编写的自动化脚本,通过串口及网线对IO的IP及时间进行自动化设置,能够同时进行大批量测试,每个测试步骤都有测试log产生,并将测试log打印在终端,同时保存在服务器端,让测试有绝对的保障。
附图1为所述存储器中RAID类型的IO设置IP及时间的方法的实施流程图,如附图1所示,该存储器中RAID类型的IO设置IP及时间的方法具体实施过程如下:
1、搭建测试环境,服务器端装好测试用的自动化脚本(挂载U盘mount /dev/sdb4 /mnt; 复制即可cp /mnt/set_io_ips /usr/local/bin/Neptune/;),将好存储器端I/O的SAS、网线及串口线连接到服务器端;
2、系统下执行自动化脚本(加执行权限chmod +x set_io_ips: ;执行命令./ set_io_ips);log同步生产(log会自动写在以时间命名的文件夹中,路径可以自己通过配置文件指定);
3、扫描存储器中I/O的序列号;
print "Please scan uiom sn[]: ";
chomp($uiom_sn=<STDIN>);
4、自动判断I/O类型并自动加载I/O驱动,若加载成功则自动化脚本继续,若加载失败则打印error,处理异常后重新执行;
sub load_driver;
if($fc) {`modprobe mptfc`} --FC类型的I/O
if($sas){`modprobe mptsas`} ---SAS类型的I/O
5、硬件检测,自动化脚本通过串口线及SAS线抓取信息,自动判断服务器与存储器的连接状态及各个模块的在位状况,若各个模块的状态都是OK则继续运行,若判断出存储器端及服务器端有异常则会在终端报错“test fail”,同时打印error信息,排除问题后继续重新测试;
sub get_device
my ($encl) = @_;
my @sg_map = `sg_map -x -i`;
登串口:
@MCports = ();
@FUports = ();
for (1..$expectedUUTs) {
my $slot = $_;
for (A,B) {
my $ctrl = $_;
my $mc = getConfig("uut$slot.ctrltest.ctrl$ctrl.com2");
my $fu = getConfig("uut$slot.ctrl$ctrl.fu");
push @MCports, $mc;
push @FUports, $fu;
6、设置上下I/O的IP;设置系统下成功后重启I/O;
if($is_iscsi and $restarting) {
# setting new iSCSI IPs seems to help iscsi reliability
printout("both","\nSetting new IPs on all controllers...\n\n");
} else {
printout("both","\nSetting unique IPs on all controllers...\n\n");
}
}
if ($ctrl eq 'a') { $last = '1' } else { $last = '2' }
$set_ip_address = "10.0.0." . $slot . $last;
7、检测I/O的IP设置是否成功,成功则继续进行下步测试,不成功则结束,终端打印出error信息;然后排除异常重新测试;若IP设置成功则继续下一步测试;
unless($noSetup == 1){
unless(set_and_verify_ip_address($ctrl)) {
printout("both"," ERROR ! Could not setController $Ctrl on $mc to IP address $set_ip_address\n");
exit(1);
8、设置I/O的时间,首先判断上下两个IO的时间是否相同,是与系统时间一致,若两个IO的时间异常则重新设置时间;若I/O的时间是正确的则提示pass,继续进行;
or $ctrl(a,b) { # cann't set CTRL A & B the same time; setting all ipA's,then all ipB's
$Ctrl=uc($ctrl);
$slot=$startSlot-1;
9、时间设置成功则测试pass,自动化脚本运行结束,若时间设置失败,则自动化脚本运行结束,判断异常后重新测试。
本实施例所述存储器中RAID类型的IO设置IP及时间的方法,所使用的自动化脚本具体内容如下:
sub load_driver {
#fill something
if($fc) {`modprobe mptfc`}
if($sas){`modprobe mptsas`}
@lsmod_out=`lsmod | grep mptsas`;
until(@lsmod_out) {
printout("both","SAS driver not loaded\n");
printout("both","loading SAS driver...\n");
system("modprobe mptsas");
sleep 5;
@lsmod_out=`lsmod | grep mptsas`;
}
#加载IO的驱动
$CS::failSub=\&serialWarn;
$tmpUUTs=0;
$CS::no_close = 0;
#调用数据包,进入串口;
if($defaultsOnly) {
printout("both","detecting attached controllers...\n");
} else {
if($is_iscsi and $restarting) {
# setting new iSCSI IPs seems to help iscsi reliability
printout("both","\nSetting new IPs on all controllers...\n\n");
} else {
printout("both","\nSetting unique IPs on all controllers...\n\n");
}
}
if(not $defaultsOnly) {
unless(boldly_go($mc)) { exit(1) }
@FDE = CS::serial("set fde-state repurpose", "#"); #harmless if MC CLI don't support
printout("log","'set fde-state repurpose' result:\n@FDE");
unless($noSetup == 1){
unless(set_and_verify_ip_address($ctrl)) {
printout("both"," ERROR ! Could not setController $Ctrl on $mc to IP address $set_ip_address\n");
exit(1);
}
}
$ip_address = CS::get_ip($ctrl);
printout("log"," Controller $Ctrl on $mc IPaddress set to $ip_address (mcIndex=$mcIndex)\n");
}
#设置IO 的IP;
for $ctrl(a,b) { # cann't set CTRL A & B the same time; setting all ipA's, then all ipB's
$Ctrl=uc($ctrl);
$slot=$startSlot-1;
for $mcIndex (0..$#MCports) {
if($ctrl eq 'a') { next unless($mcIndex % 2 == 0) }
if($ctrl eq 'b') { next unless($mcIndex % 2 != 0) }
#检测IO的时间。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的权利要求书的且任何所属技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
Claims (5)
1.存储器中RAID类型的IO设置IP及时间的方法,其特征在于, 使用linux 系统下perl语言编写的自动化脚本,通过串口及网线对IO的IP及时间进行自动化设置;其主要步骤包括:1)扫描存储器中I/O的序列号;2)自动判断I/O类型并自动加载I/O驱动;3)硬件检测;4)设置上下I/O的IP;设置系统下成功后重启I/O;5)检测I/O的IP设置是否成功;6)设置I/O的时间。
2.根据权利要求1所述存储器中RAID类型的IO设置IP及时间的方法,其特征在于, 所述步骤2) 自动判断I/O类型并自动加载I/O驱动,若加载成功则自动化脚本继续,若加载失败则打印error,处理异常后重新执行。
3.根据权利要求2所述存储器中RAID类型的IO设置IP及时间的方法,其特征在于, 所述步骤3)硬件检测,自动化脚本通过串口线及SAS线抓取信息,自动判断服务器与存储器的连接状态及各个模块的在位状况,若各个模块状态正常则继续运行,若判断出存储器端及服务器端有异常则会在终端报错“test fail”,同时打印error信息,排除问题后继续重新测试。
4.根据权利要求3所述存储器中RAID类型的IO设置IP及时间的方法,其特征在于, 所述步骤5)检测I/O的IP设置是否成功,成功则继续进行下步测试,不成功则结束,终端打印出error信息;然后排除异常重新测试。
5.根据权利要求4所述存储器中RAID类型的IO设置IP及时间的方法,其特征在于, 所述步骤6)设置I/O的时间,首先判断上下两个IO的时间是否相同,是与系统时间一致,若两个IO的时间异常则重新设置时间;若I/O的时间是正确的则提示pass,继续进行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610886775.2A CN106445767A (zh) | 2016-10-11 | 2016-10-11 | 存储器中raid类型的io设置ip及时间的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610886775.2A CN106445767A (zh) | 2016-10-11 | 2016-10-11 | 存储器中raid类型的io设置ip及时间的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106445767A true CN106445767A (zh) | 2017-02-22 |
Family
ID=58173331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610886775.2A Pending CN106445767A (zh) | 2016-10-11 | 2016-10-11 | 存储器中raid类型的io设置ip及时间的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106445767A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110222539A1 (en) * | 2010-03-15 | 2011-09-15 | Grosser Donald B | Methods, systems, and computer readable media for automatically selecting between internet protocol switching modes on a per-module basis in a packet forwarding device |
US20120151136A1 (en) * | 2010-12-13 | 2012-06-14 | International Business Machines Corporation | Instant data restoration |
CN102195821B (zh) * | 2011-06-27 | 2014-07-02 | 吉林中软吉大信息技术有限公司 | 一种网络设备配置方法 |
CN104360883A (zh) * | 2014-11-12 | 2015-02-18 | 浪潮(北京)电子信息产业有限公司 | 一种配置Raid的方法及系统 |
CN105260208A (zh) * | 2015-10-10 | 2016-01-20 | 浪潮电子信息产业股份有限公司 | 一种服务器自动批量刷新raid卡驱动的方法 |
CN105929794A (zh) * | 2016-04-13 | 2016-09-07 | 上海柏楚电子科技有限公司 | 一种即插即用的工业网络扩展方法 |
-
2016
- 2016-10-11 CN CN201610886775.2A patent/CN106445767A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110222539A1 (en) * | 2010-03-15 | 2011-09-15 | Grosser Donald B | Methods, systems, and computer readable media for automatically selecting between internet protocol switching modes on a per-module basis in a packet forwarding device |
US20120151136A1 (en) * | 2010-12-13 | 2012-06-14 | International Business Machines Corporation | Instant data restoration |
CN102195821B (zh) * | 2011-06-27 | 2014-07-02 | 吉林中软吉大信息技术有限公司 | 一种网络设备配置方法 |
CN104360883A (zh) * | 2014-11-12 | 2015-02-18 | 浪潮(北京)电子信息产业有限公司 | 一种配置Raid的方法及系统 |
CN105260208A (zh) * | 2015-10-10 | 2016-01-20 | 浪潮电子信息产业股份有限公司 | 一种服务器自动批量刷新raid卡驱动的方法 |
CN105929794A (zh) * | 2016-04-13 | 2016-09-07 | 上海柏楚电子科技有限公司 | 一种即插即用的工业网络扩展方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20120331449A1 (en) | Device, method and computer program product for evaluating a debugger script | |
CN106528354B (zh) | 一种烧录存储器电源fru id的自动化方法 | |
CN110750396B (zh) | 一种服务器操作系统兼容性测试方法、装置及存储介质 | |
CN110008129B (zh) | 一种存储定时快照的可靠性测试方法、装置及设备 | |
CN106649020A (zh) | 一种存储器机箱烧录信息的检测方法及装置 | |
CN106502844A (zh) | 一种测试RAID存储器IO的sAS端口带宽的方法 | |
CN1996262A (zh) | 主机板测试程序处理系统及方法 | |
CN106843966A (zh) | 一种加载io模块驱动程序的方法及装置 | |
RU2451990C2 (ru) | Способ обработки объема данных, используемого во время фазы отладки функционального программного обеспечения системы, установленной на борту летательного аппарата, и устройство для его осуществления | |
CN107329914A (zh) | 一种基于Linux系统检测硬盘乱序的方法及装置 | |
CN101989220A (zh) | 压力测试方法 | |
CN106504797A (zh) | 测试存储器中RAID IO led灯的自动化方法 | |
CN110727597A (zh) | 一种基于日志排查无效代码补全用例的方法 | |
CN107832176A (zh) | 一种Windows下硬盘压力自动测试方法及系统 | |
CN108806761A (zh) | 一种ssd功能测试方法、系统及计算机存储介质 | |
TWI664431B (zh) | 測試系統 | |
CN110941520A (zh) | 基于二取二安全控制单元的硬件功能测试系统及方法 | |
CN110704315A (zh) | 一种嵌入式软件测试的故障注入装置 | |
US8533544B2 (en) | System for tree sequence testing of a device and method for tree sequence testing of a device in a test framework architecture | |
US7904754B2 (en) | Systems and methods for automated determination of out of memory handling | |
CN115422091B (zh) | 一种固件调试方法及装置、电子设备、存储介质 | |
CN115602242B (zh) | 一种存储装置及其测试方法 | |
CN107145415A (zh) | 一种在linux系统下批量测试HDD LED的方法 | |
CN106445767A (zh) | 存储器中raid类型的io设置ip及时间的方法 | |
CN109857583A (zh) | 一种处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20170222 |
|
WD01 | Invention patent application deemed withdrawn after publication |