CN107423185A - 一种磁盘阵列和主机兼容适配的测试方法及装置 - Google Patents

一种磁盘阵列和主机兼容适配的测试方法及装置 Download PDF

Info

Publication number
CN107423185A
CN107423185A CN201710660541.0A CN201710660541A CN107423185A CN 107423185 A CN107423185 A CN 107423185A CN 201710660541 A CN201710660541 A CN 201710660541A CN 107423185 A CN107423185 A CN 107423185A
Authority
CN
China
Prior art keywords
test
link
equipment under
under test
lun
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.)
Granted
Application number
CN201710660541.0A
Other languages
English (en)
Other versions
CN107423185B (zh
Inventor
高宁
王文庆
杜彦魁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710660541.0A priority Critical patent/CN107423185B/zh
Publication of CN107423185A publication Critical patent/CN107423185A/zh
Application granted granted Critical
Publication of CN107423185B publication Critical patent/CN107423185B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种磁盘阵列和主机兼容适配的测试方法,通过多路径将被测设备划分的LUN映射到主机端,主机对被测设备的LUN进行添加、识别操作后,在LUN上创建文件***,并对文件***进行基本的读写测试,在对被测设备进行了一系列的基本测试之后,又通过对被测设备持续读写,而达到对主机稳定性测试的目的,本发明通过一系列的全面测试,保证了主机和相应的磁盘阵列能够具有比较良好的兼容适配,且本发明的测试方法对各种型号的磁盘阵列都能使用,具有通用性,本发明还公开一种磁盘阵列和主机兼容适配的测试装置,具有上述有益效果。

Description

一种磁盘阵列和主机兼容适配的测试方法及装置
技术领域
本发明涉及主机设备领域,特别是涉及一种磁盘阵列和主机兼容适配的测试方法及装置。
背景技术
浪潮天梭K1***是我国863计划重大专项“高端容错计算机研制与应用推广”项目成果。我国第一台关键应用主机,浪潮天梭K1***标志着我国成为继美日之后全球第三个掌握新一代主机技术的国家,并有望改变我国在金融、电信等核心领域大型主机长期依赖进口的尴尬局面随着。
由于主机完成各种功能需要配合有作为存储设备的磁盘阵列,而主机与不同品牌以及型号的磁盘阵列之间的兼容性适配情况的好坏是不同的,因此在主机使用之前,一般会针对不同的品牌及信号的磁盘阵列进行某些方面的测试,以确定主机和存储设备之间的兼容性适配是否良好。
但是各种型号的磁盘阵列存在的主要问题不同,只针对主要存在的问题进行测试,并不能消除其他问题存在的可能性,所以这种测试不具有全面性和通用性,导致测试的结果不准确,在后期使用过程中,产生很多由于兼容性差而引起的问题。
发明内容
本发明的目的是提供一种磁盘阵列和主机兼容适配的测试方法,解决了针对品牌和型号的磁盘阵列测试不全面,且不具有通用性的问题,为主机和磁盘阵列组成的底层硬件***进行一个全面的评估,保证后期上线应用的稳定性和性能,本发明还提供了一种磁盘阵列和主机兼容适配的测试装置。
为解决上述技术问题,本发明提供一种磁盘阵列和主机兼容适配的测试方法,包括:
通过HBA卡端口扫描识别多个LUN,其中,所述LUN为在被测设备创建的存储空间,所述被测设备通过多路径映射LUN至主机端,所述被测设备为磁盘阵列;
对所述LUN创建文件***,并将所述文件***挂载到目录;
对挂载的所述目录进行读写测试,查看操作***日志和存储日志;
判断所述操作***日志和所述存储日志是否存在异常报错,如果否,则采用iozone工具对挂载目录进行持续读写操作,直到读写操作持续时间达到第一预设时间;
查看所述操作***日志和iozone日志是否存在异常报错,获得测试结果。
其中,所述查看操作***日志和iozone日志是否存在异常,获得测试结果包括:
如果所述操作***日志和所述iozone日志不存在异常报错,则在对所述LUN创建LVM设备;
如果创建所述LVM设备成功,则采用Fio工具对所述LVM设备进行读写操作,其中,所述Fio工具为IO压力测试工具;
选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态,并在第二预设时间内保持所述掉链状态;
通过iostat查看所述主机端和所述被测设备之间的IO从中断到恢复流量的时间是否超过第一预设恢复时间,如果否,则掉链状态测试通过,并将处于所述掉链状态的所述链路恢复连接;
判断在第二预设恢复时间内恢复连接的所述链路的IO流量是否恢复正常,如果是,则所述链路恢复测试通过。
其中,在所述链路恢复测试通过之后还包括:
重复执行选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态的操作,直到所述主机端和所述被测设备之间的每条链路都执行完成掉链状态测试和链路恢复测试。
其中,所述主机端和所述被测设备之间的每条链路都执行完成掉链状态测试和链路恢复测试包括:
如果每条所述链路掉链状态测试和链路恢复测试都通过,则采用所述Fio工具对LVM设备进行读写操作;
控制所述被测设备中的两个控制器中的一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,如果否,恢复控制器处于正常状态;
控制所述被测设备中的两个控制器中的另一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,获得控制器失效测试结果。
其中,在通过HBA卡端口扫描识别多个LUN之后还包括:
将所述LUN创建成裸设备,采用所述Fio工具对所述裸设备进行读写操作;
记录读写带宽,判断所述读写带宽是否达到预设带宽,如果是,则执行对所述LUN进行文件***的创建,并将所述文件***挂载到目录的操作。
本发明还提供了一种磁盘阵列和主机兼容适配的测试装置,包括:
扫描模块,用于通过HBA卡端口扫描识别多个LUN,其中,所述LUN为在被测设备创建的存储空间,所述被测设备通过多路径映射LUN至主机端,所述被测设备为磁盘阵列;
创建模块,用于对所述LUN创建文件***,并将所述文件***挂载到目录;
测试模块,对挂载的所述目录进行读写测试,查看操作***日志和存储日志;判断所述操作***日志和所述存储日志是否存在异常报错,如果否,则采用iozone工具对挂载目录进行持续读写操作,直到读写操作持续时间达到第一预设时间;查看所述操作***日志和iozone日志是否存在异常报错,获得测试结果。
其中,所述测试模块包括:
第一测试单元,用于如果所述操作***日志和所述iozone日志不存在异常报错,则在对所述LUN创建LVM设备;如果创建所述LVM设备成功,则采用Fio工具对所述LVM设备进行读写操作,其中,所述Fio工具为IO压力测试工具;
第二测试单元,用于选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态,并在第二预设时间内保持所述掉链状态;通过iostat查看所述主机端和所述被测设备之间的IO从中断到恢复流量的时间是否超过第一预设恢复时间,如果否,则掉链状态测试通过,并将处于所述掉链状态的所述链路恢复连接;判断在第二预设恢复时间内恢复连接的所述链路的IO流量是否恢复正常,如果是,则所述链路恢复测试通过。
其中,所述第二测试单元还用于:
在所述链路恢复测试通过之后,重复执行选取所述主机端和所述被测设备之间多条链路中的一条链路,并断开链路使所述链路处于掉链状态的操作,直到所述主机端和所述被测设备之间的每条链路都执行完成掉链状态测试和链路恢复测试。
其中,所述测试模块包括:
第三测试单元,用于如果每条所述链路掉链状态测试和链路恢复测试都通过,则采用所述Fio工具对LVM设备进行读写操作;控制所述被测设备中的两个控制器中的一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,如果否,恢复控制器处于正常状态;控制所述被测设备中的两个控制器中的另一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,获得控制器失效测试结果。
其中,所述测试模块还包括:
第四测试单元,用于在通过HBA卡端口扫描识别多个LUN之后,将所述LUN创建成裸设备,采用所述Fio工具对所述裸设备进行读写操作;记录读写带宽,判断所述读写带宽是否达到预设带宽,如果是,则执行对所述LUN进行文件***的创建,并将所述文件***挂载到目录的操作。
本发明所提供的一种磁盘阵列和主机兼容适配的测试方法,通过HBA卡端口扫描识别被测设备划分的LUN,如果识别成功,则说明该被测设备能够被添加至主机端并被识别,再在识别到的LUN上创建文件***,并对该文件***进行读写操作的测试,如果未出现异常报错,则说明被测设备和主机之间能够完成基本读写的功能,满足基本的兼容适配的性能,再对LUN进行长时间的持续读写测试,这是对主机端的稳定性的测试,如果测试结果无异常,则说明整个被测设备和主机端配合的***在长时间读写操作中能够保持比较稳定的性能,从而可以判断该被测设备和主机端具有比较好的兼容适配的性能,本发明提供的测试方法,在对主机端进行基本的多路径添加,识别测试后,又进行了主机端对被测设备的基本读写功能的测试,在确定能够完成基本读写的功能基础上,又进行了主机端对被测设备长时间持续读写,因为对于主机端而言,和磁盘阵列之间兼容适配的最主要的性能就是良好稳定的读写功能,如果测试能够通过,则说明主机端和被测设备之间的兼容适配性能,能够满足读写需要。
相对于现有技术只针对磁盘阵列的型号考虑到某一方面的测试,例如只考虑到对磁盘阵列的添加和识别,认为能够识别即可读写等等,这种测试是不准确的,本发明的测试方法对磁盘阵列的品牌和型号没有限制,能够适用于任何与主机端相连接的磁盘阵列,具有通用性,对知己和磁盘阵列组成的底层硬件***进行了一个全面基础的评估,保证了应用***具有较好的稳定性和性能。
优选的,本发明还对主机和磁盘阵列之间的链路突然出现的掉链状态进行了测试,进一步保证了在读写过程中,某一条链路中断,其他链路能够及时的恢复读写功能的能力,保证了应用***运行的底层硬件环境对突变环境的应对能力,进一步提高了测试的全面性和设备的可用性。
本发明还提供了一种磁盘阵列和主机兼容适配的测试装置,具有上述有益效果。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的磁盘阵列和主机兼容适配的测试的一种具体实施方式的流程图;
图2为本发明提供的链路测试的一种具体实施方式流程;
图3为本发明提供的控制器失效测试的一种具体实施方式的流程图;
图4为本发明提供的带宽测试的一种具体实施方式的流程图;
图5为本发明提供的磁盘阵列和主机兼容适配的测试另一具体实施方式的流程图;
图6为本发明实施例提供的磁盘阵列和主机兼容适配的测试装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的磁盘阵列和主机兼容适配的测试的一种具体实施方式的流程图,如图1所示,该方法可以包括:
步骤S101:通过HBA卡端口扫描识别多个LUN。
具体的,所述LUN为在被测设备创建的存储空间,所述被测设备通过多路径映射LUN至主机端,所述被测设备为磁盘阵列。
需要说明的是,可以只通过一条路径向主机端映射一个或者通过多个LUN,对于是否为多路径映射LUN,并不影响后续步骤的操作,但是采用多路径映射多个LUN,也是对设备的多路径功能的一个测试,如果某条路径映射不成功,则说明测试不通过,无需进行后续测试。当然,这并不是本发明的必要技术特征,因为在后续步骤中,也需要通过多路径传输数据,如果多路径功能存在问题,也同样能够被测试到,但是通过映射LUN测试多路径功能,能够更快的确定多路径功能的性能,提高测试效率,所以这是一种比较优选的实施例。
步骤S102:对所述LUN创建文件***,并将所述文件***挂载到目录。
具体的,文件***可以是EXT3、EXT4以及其他形式的文件***。
步骤S103:对挂载的所述目录进行读写测试,查看操作***日志和存储日志。
对LUN创建的文件***挂载在目录下,对目录进行读写也就是对挂载在目录下文件***进行读写,也就是对磁盘阵列映射到主机的LUN进行读写。
步骤S104:判断所述操作***日志和所述存储日志是否存在异常报错,如果是,则测试不通过,测试结束,如果否,进入步骤S105。
如果读写过程中存在出现故障,则在操作***日志和存储日志中能够查找到相关的异常报错,从而得到测试结果。
步骤S105:采用iozone工具对挂载目录进行持续读写操作,直到读写操作持续时间达到第一预设时间。
具体的,第一预设时间一般设定为3天左右,也可以是2到4天之间任意时间,主要是为了对被测设备进行长时间的读写的测试,如果测试通过说明在长时间高强度的读写测试下,主机和被测设备都能保持比较好的稳定性。
需要说明的是步骤S103是一个基本读写功能的测试,而步骤S105则是长时间持续读写测试,如果不进行步骤S103,直接测试进行步骤S105也能实现本发明的技术方案,但是,步骤S105测试时间较长,而如果步骤S103测试不通过,则无需进行步骤S105的测试,且步骤S103的测试耗费时间相对于步骤S105可以忽略不计,所以先执行步骤S103的测试,是本发明的一种比较优选的实施方式,可以提高测试效率,但这并不是本发明的必要技术特征。
步骤S106:查看所述操作***日志和iozone日志是否存在异常报错,获得测试结果。
本发明对主机端和被测设备先进行LUN的添加,识别以及多路径功能的测试,可以确定主机端和被测设备之间能够正常的连接,又通过对挂载的目录进行读写测试,可以对主机端和被测设备之间的基本读写功能进行测试,再进一步对持续性读写功能进行测试从而确定设备的稳定性。通过对主机端和被测设备各个方面的测试,完成了对设备全方位的检测,且整个测试过程不对磁盘阵列的型号做限定,所以,本发明的测试方法具有通用性,保证了测试通过的主机和磁盘阵列应用中具有较高的稳定性。
另外,本发明主要应用于天梭K1主机和各种不同型号的磁盘阵列兼容适配的测试,后续其他实施例也主要应用于相同的应用场景。
基于上述实施例,考虑到主机端和被测设备之间具有多路径,在读写过程中,可以选择某几条链路传输数据,或者所有链路同时传输数据,当其中正在传输数据的链路突然断开时,数据传输状态的转换也是主机端和磁盘阵列兼容适配的需要考虑的重要性能之一。在上述实施例中,当所述操作***日志和所述iozone日志存在异常报错时,可认为测试不通过,如果不存在异常报错,本发明可以进一步改进。
因此,本发明的一种具体实施例中,在所述操作***日志和所述iozone日志不存在异常报错的基础上,如图2所示,图2为本发明提供的链路测试的一种具体实施方式流程图,该方法可以包括:
步骤S201:对所述LUN创建LVM设备。
步骤S202:如果创建所述LVM设备成功,则采用Fio工具对所述LVM设备进行读写操作。
需要说明的是,采用Fio工具的对磁盘阵列进行读写测试并不一定需要创建LVM设备,本发明中创建LVM设备是为了对被测设备能否创建LVM成功进行测试,如果主机端和磁盘阵列兼容适配的性能不好,创建LVM时,则可能出现磁盘阵列***的情况,因此,创建LVM设备也是为了对被测设备的性能的一个测试。另外,创建的设备也不一定是LVM设备,还可以是PV、VG等类似设备。
步骤S203:选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态,并在第二预设时间内保持所述掉链状态。
需要说明的是,在主机端和磁盘阵列之间正常的执行读写操作时,可以设置主机端和磁盘阵列之间的某一条或多条或所有的链路同时传输数据,但是一旦在读写过程中正在传输数据的某一条链路突然断开而处于掉链状态,***会自动将原来由突然断开的链路传输的数据转换为其他未断开的链路来传输,而这个转换过程的快慢,也是主机和磁盘阵列之间兼容适配的一个重要性能之一。
具体的,步骤S203中是默认为主机端和磁盘阵列之间每条链路都在共同传输数据,链路测试时,选取其中一条链路进行测试即可,当然这并不是本发明的唯一方案,还可以是设置某一条或多条链路传输读写数据,只要其中在测试时断开的是正在传输读写数据的链路即可。
另外,使某条链路处于掉链状态比较简单易行的实施方式是人工拔除链路,但是采用其他方式也可以使链路处于掉链状态,在此不一一列举。
步骤S204:通过iostat查看所述主机端和所述被测设备之间的IO从中断到恢复流量的时间是否超过第一预设恢复时间,如果是,掉链状态测试不通过,测试停止,如果否,掉链状态测试通过,进入步骤S205。
需要说明的是,在进行掉链状态的测试时,判断测试的依据就是,主机和磁盘阵列之间IO从中断到恢复总的流量所耗费时间越长则说明兼容适配的性能越差,反之,耗费时间越短,说明性能越好。
步骤S205:将处于所述掉链状态的所述链路恢复连接。
步骤S206:判断在第二预设恢复时间内恢复连接的所述链路的IO流量是否恢复正常。
需要说明的,链路从处于掉链状态到链路恢复状态,原来主机端和磁盘阵列之间的数据传输会自动转换为原来设置的链路传输数据,而断开后恢复连接的链路的IO流量从中断到恢复原来的流量值,也是判断兼容适配的性能标准之一。
为了进一步确定主机端和被测设备端的兼容适配的性能是否良好,需要对每条链路都进行链路掉链测试和链路恢复测试,所以上述实施例中,如果链路恢复测试不通过,则测试停止,如果链路恢复测试通过,可以进一步包括:
步骤S207:判断每条链路是否都执行完成掉链状态测试和链路恢复测试,如果是,进入步骤S208,如果否,则进入步骤204。
步骤S208:主机端和被测设备端之间的链路测试通过。
需要说明的是,对于链路测试,并不一定需要将每条链路都进行断开、恢复测试,也可以是选择主机端和被测设备端各选择的一条链路分别进行断开、恢复链路的测试,如果测试都通过也可以认为主机端和被测设备之间多条链路功能良好,但是更为全面的优选的测试方法是将每条链路都进行测试,所以这仅仅是本发明测试主机端和被测设备端的链路状态的一种具体实施方式,并不是本发明的唯一实施方式。
基于上述实施例,考虑到作为被测设备的磁盘阵列是双控制器设备,如果其中某一个控制器突然故障,就需要另一个控制器执行相关的操作,而快速转换控制器执行相关操作,也是主机端和磁盘阵列之间兼容适配的一个重要性能之一。为此,本发明中在链路测试通过的基础上,还可以包括磁盘阵列的控制器失效的测试。
本发明提供的控制器失效测试的一种具体实施方式的流程图,如图3所示,可以包括:
步骤S301:采用所述Fio工具对LVM设备进行读写操作;
具体的,对LVM设备的读写测试可以不是Fio工具,还可以是dd工具或者其他可以对被测设备进行读写测试的设备。
步骤S302:控制所述被测设备中的两个控制器中的一个控制器处于失效状态;
步骤S303:判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,如果是,则测试不通过,测试结束,如果否,进入步骤S304;
具体的第三预设时间一般在15分钟左右,当然,也可以是其他的时间长度,可以根据设备在具体应用场景中的需要而设定。
步骤S304:恢复控制器处于正常状态;
步骤S305:控制所述被测设备中的两个控制器中的另一个控制器处于失效状态;
步骤S306:判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,如果是,则测试不通过,测试结束,如果否,则测试通过,测试结束。
基于上述实施例,为了保障主机端和被测设备端之间的读写功能,在主机端检测到被测设备映射的LUN之后,在对LUN创建LVM设备之前,可以先对被测设备进行带宽测试。
本发明提供的带宽测试的一种具体实施方式的流程图,如图4所示,可以包括:
步骤S401:将所述LUN创建成裸设备。
步骤S402:采用所述Fio工具对所述裸设备进行读写操作。
具体的,也可以采用其他的读写工具进行测试,另外,裸设备是指为创建其他设备的LUN。
步骤S403:记录读写带宽。
步骤S404:判断所述读写带宽是否达到预设带宽,如果是,则测试不通过,测试结束,如果否,则带宽测试通过。
需要说明的是,带宽测试是对主机端和被测设备之间读写数据的速度的一个测试,如果不进行上述测设,在其他的读写测试中也能体现出读写数据的快慢的性能,但是在保证读写速度良好的状态下进行测试,能够提高后续测试的通过率,提高测试效率。
基于上述实施例,本发明中可以根据主机端和适配的磁盘阵列的实际应用选择其中某几种进行测试,但是比较优选的方案是将各种测试都执行一遍,如果所有测试全部能够通过,更能够全面而准确的判断主机端和被测设备之间兼容适配具有良好的性能,本发明提供的磁盘阵列和主机兼容适配的测试另一具体实施方式的流程图如图5所示,该方法包括:
步骤S501:通过HBA卡端口扫描识别多个LUN。
步骤S502:将所述LUN创建成裸设备,采用所述Fio工具对所述裸设备进行读写操作。
步骤S503:记录读写带宽,判断所述读写带宽是否达到预设带宽,如果是,则测试不通过,测试结束,如果否,进入步骤S504。
步骤S504:对所述LUN创建文件***,并对所述文件***挂载到目录进行读写测试。
步骤S505:判断操作***日志和存储日志是否存在异常报错,如果是,则测试不通过,测试结束,如果否,则进入步骤S506。
步骤S506:采用iozone工具对目录进行持续读写操作,直到读写操作持续时间达到第一预设时间。
步骤S507:判断操作***日志和iozone日志是否存在异常报错,如果是,则测试不通过,测试结束,如果否,进入步骤S508。
步骤S508:创建所述LVM设备,对主机端和被测设备端之间的链路进行链路测试,判断测试是否通过,如果否,则测试结束,如果是,进入步骤S509。
步骤S509:对被测设备的双控制器进行控制器失效;
步骤S510:判断测试是否通过,如果是,则测试通过,测试结束如果否,则测试不通过,测试结束。
需要说明的是,对于主设备和磁盘阵列之间的持续读写测试、链路测试以及控制器失效测试的测试顺序并没有必然的先后顺序。
下面对本发明实施例提供的磁盘阵列和主机兼容适配的测试装置进行介绍,下文描述的磁盘阵列和主机兼容适配的测试装置与上文描述的磁盘阵列和主机兼容适配的测试方法可相互对应参照。
图6为本发明实施例提供的磁盘阵列和主机兼容适配的测试装置的结构框图,参照图6磁盘阵列和主机兼容适配的测试装置可以包括:
扫描模块100,用于通过HBA卡端口扫描识别多个LUN,其中,所述LUN为在被测设备创建的存储空间,所述被测设备通过多路径映射LUN至主机端,所述被测设备为磁盘阵列;
创建模块200,用于对所述LUN创建文件***,并将所述文件***挂载到目录;
测试模块300,对挂载的所述目录进行读写测试,查看操作***日志和存储日志;判断所述操作***日志和所述存储日志是否存在异常报错,如果否,则采用iozone工具对挂载目录进行持续读写操作,直到读写操作持续时间达到第一预设时间;查看所述操作***日志和iozone日志是否存在异常报错,获得测试结果。
优选的,所述测试模块300包括:
第一测试单元,用于如果所述操作***日志和所述iozone日志不存在异常报错,则在对所述LUN创建LVM设备;如果创建所述LVM设备成功,则采用Fio工具对所述LVM设备进行读写操作,其中,所述Fio工具为IO压力测试工具;
第二测试单元,用于选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态,并在第二预设时间内保持所述掉链状态;通过iostat查看所述主机端和所述被测设备之间的IO从中断到恢复流量的时间是否超过第一预设恢复时间,如果否,则掉链状态测试通过,并将处于所述掉链状态的所述链路恢复连接;判断在第二预设恢复时间内恢复连接的所述链路的IO流量是否恢复正常,如果是,则所述链路恢复测试通过。
优选的,所述第二测试单元还用于:
在所述链路恢复测试通过之后,重复执行选取所述主机端和所述被测设备之间多条链路中的一条链路,并断开链路使所述链路处于掉链状态的操作,直到所述主机端和所述被测设备之间的每条链路都执行完成掉链状态测试和链路恢复测试。
所述测试模块300包括:
第三测试单元,用于如果每条所述链路掉链状态测试和链路恢复测试都通过,则采用所述Fio工具对LVM设备进行读写操作;控制所述被测设备中的两个控制器中的一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,如果否,恢复控制器处于正常状态;控制所述被测设备中的两个控制器中的另一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,获得控制器失效测试结果。
作为一种具体实施方式,本发明所提供的磁盘阵列和主机兼容适配的测试装置还可以进一步包括:
所述测试模块300还包括:
第四测试单元,用于在通过HBA卡端口扫描识别多个LUN之后,将所述LUN创建成裸设备,采用所述Fio工具对所述裸设备进行读写操作;记录读写带宽,判断所述读写带宽是否达到预设带宽,如果是,则执行对所述LUN进行文件***的创建,并将所述文件***挂载到目录的操作。
本实施例的磁盘阵列和主机兼容适配的测试装置用于实现前述的磁盘阵列和主机兼容适配的测试方法,因此磁盘阵列和主机兼容适配的测试装置中的具体实施方式可见前文中的磁盘阵列和主机兼容适配的测试方法的实施例部分,例如,扫描模块100,用于实现上述磁盘阵列和主机兼容适配的测试方法中步骤S101,创建模块200,用于实现测试方法中步骤S102,测试模块300,分别用于实现上述磁盘阵列和主机兼容适配的测试方法中步骤S103,S104,S105和S106,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的磁盘阵列和主机兼容适配的测试方法以及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (10)

1.一种磁盘阵列和主机兼容适配的测试方法,其特征在于,包括:
通过HBA卡端口扫描识别多个LUN,其中,所述LUN为在被测设备创建的存储空间,所述被测设备通过多路径映射LUN至主机端,所述被测设备为磁盘阵列;
对所述LUN创建文件***,并将所述文件***挂载到目录;
对挂载的所述目录进行读写测试,查看操作***日志和存储日志;
判断所述操作***日志和所述存储日志是否存在异常报错,如果否,则采用iozone工具对挂载目录进行持续读写操作,直到读写操作持续时间达到第一预设时间;
查看所述操作***日志和iozone日志是否存在异常报错,获得测试结果。
2.根据权利要求1所述的测试方法,其特征在于,所述查看操作***日志和iozone日志是否存在异常,获得测试结果包括:
如果所述操作***日志和所述iozone日志不存在异常报错,则对所述LUN创建LVM设备;
如果创建所述LVM设备成功,则采用Fio工具对所述LVM设备进行读写操作,其中,所述Fio工具为IO压力测试工具;
选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态,并在第二预设时间内保持所述掉链状态;
通过iostat查看所述主机端和所述被测设备之间的IO从中断到恢复流量的时间是否超过第一预设恢复时间,如果否,则掉链状态测试通过,并将处于所述掉链状态的所述链路恢复连接;
判断在第二预设恢复时间内恢复连接的所述链路的IO流量是否恢复正常,如果是,则所述链路恢复测试通过。
3.根据权利要求2所述的测试方法,其特征在于,在所述链路恢复测试通过之后还包括:
重复执行选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态的操作,直到所述主机端和所述被测设备之间的每条链路都执行完成掉链状态测试和链路恢复测试。
4.根据权利要求3所述的测试方法,其特征在于,所述主机端和所述被测设备之间的每条链路都执行完成掉链状态测试和链路恢复测试包括:
如果每条所述链路掉链状态测试和链路恢复测试都通过,则采用所述Fio工具对LVM设备进行读写操作;
控制所述被测设备中的两个控制器中的一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,如果否,恢复控制器处于正常状态;
控制所述被测设备中的两个控制器中的另一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,获得控制器失效测试结果。
5.根据权利要求4所述的测试方法,其特征在于,在通过HBA卡端口扫描识别多个LUN之后还包括:
将所述LUN创建成裸设备,采用所述Fio工具对所述裸设备进行读写操作;
记录读写带宽,判断所述读写带宽是否达到预设带宽,如果是,则执行对所述LUN进行文件***的创建,并将所述文件***挂载到目录的操作。
6.一种磁盘阵列和主机兼容适配的测试装置,其特征在于,包括:
扫描模块,用于通过HBA卡端口扫描识别多个LUN,其中,所述LUN为在被测设备创建的存储空间,所述被测设备通过多路径映射LUN至主机端,所述被测设备为磁盘阵列;
创建模块,用于对所述LUN创建文件***,并将所述文件***挂载到目录;
测试模块,对挂载的所述目录进行读写测试,查看操作***日志和存储日志;判断所述操作***日志和所述存储日志是否存在异常报错,如果否,则采用iozone工具对挂载目录进行持续读写操作,直到读写操作持续时间达到第一预设时间;查看所述操作***日志和iozone日志是否存在异常报错,获得测试结果。
7.根据权利要求6所述的测试装置,其特征在于,所述测试模块包括:
第一测试单元,用于如果所述操作***日志和所述iozone日志不存在异常报错,则对所述LUN创建LVM设备;如果创建所述LVM设备成功,则采用Fio工具对所述LVM设备进行读写操作,其中,所述Fio工具为IO压力测试工具;
第二测试单元,用于选取所述主机端和所述被测设备之间多条链路中的一条链路,使所述链路处于掉链状态,并在第二预设时间内保持所述掉链状态;通过iostat查看所述主机端和所述被测设备之间的IO从中断到恢复流量的时间是否超过第一预设恢复时间,如果否,则掉链状态测试通过,并将处于所述掉链状态的所述链路恢复连接;判断在第二预设恢复时间内恢复连接的所述链路的IO流量是否恢复正常,如果是,则所述链路恢复测试通过。
8.根据权利要求7所述的测试装置,其特征在于,所述第二测试单元还用于:
在所述链路恢复测试通过之后,重复执行选取所述主机端和所述被测设备之间多条链路中的一条链路,并断开链路使所述链路处于掉链状态的操作,直到所述主机端和所述被测设备之间的每条链路都执行完成掉链状态测试和链路恢复测试。
9.根据权利要求8所述的测试装置,其特征在于,所述测试模块还包括:
第三测试单元,用于如果每条所述链路掉链状态测试和链路恢复测试都通过,则采用所述Fio工具对LVM设备进行读写操作;控制所述被测设备中的两个控制器中的一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,如果否,恢复控制器处于正常状态;控制所述被测设备中的两个控制器中的另一个控制器处于失效状态,判断所述主机端和所述被测设备之间的IO从中断到恢复的时间是否超过第三预设时间,获得控制器失效测试结果。
10.根据权利要求9所述的测试装置,其特征在于,所述测试模块还包括:
第四测试单元,用于在通过HBA卡端口扫描识别多个LUN之后,将所述LUN创建成裸设备,采用所述Fio工具对所述裸设备进行读写操作;记录读写带宽,判断所述读写带宽是否达到预设带宽,如果是,则执行对所述LUN进行文件***的创建,并将所述文件***挂载到目录的操作。
CN201710660541.0A 2017-08-04 2017-08-04 一种磁盘阵列和主机兼容适配的测试方法及装置 Active CN107423185B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710660541.0A CN107423185B (zh) 2017-08-04 2017-08-04 一种磁盘阵列和主机兼容适配的测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710660541.0A CN107423185B (zh) 2017-08-04 2017-08-04 一种磁盘阵列和主机兼容适配的测试方法及装置

Publications (2)

Publication Number Publication Date
CN107423185A true CN107423185A (zh) 2017-12-01
CN107423185B CN107423185B (zh) 2021-07-16

Family

ID=60437201

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710660541.0A Active CN107423185B (zh) 2017-08-04 2017-08-04 一种磁盘阵列和主机兼容适配的测试方法及装置

Country Status (1)

Country Link
CN (1) CN107423185B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108364670A (zh) * 2018-02-06 2018-08-03 珠海全志科技股份有限公司 读写压力测试方法、装置、设备及存储介质
CN109508268A (zh) * 2018-11-13 2019-03-22 郑州云海信息技术有限公司 一种ise硬盘测试装置及ise硬盘扇区快速擦除功能测试方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102455959A (zh) * 2010-10-18 2012-05-16 英业达股份有限公司 多片适配卡测试方法
CN103970570A (zh) * 2014-05-16 2014-08-06 浪潮电子信息产业股份有限公司 一种磁盘阵列与主机兼容适配的测试方法
CN104133750A (zh) * 2014-08-20 2014-11-05 浪潮(北京)电子信息产业有限公司 主机与存储设备兼容适配测试方法和***
CN106021045A (zh) * 2016-05-11 2016-10-12 深圳市国鑫恒宇科技有限公司 一种linux***下服务器硬盘IO性能的测试方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102455959A (zh) * 2010-10-18 2012-05-16 英业达股份有限公司 多片适配卡测试方法
CN103970570A (zh) * 2014-05-16 2014-08-06 浪潮电子信息产业股份有限公司 一种磁盘阵列与主机兼容适配的测试方法
CN104133750A (zh) * 2014-08-20 2014-11-05 浪潮(北京)电子信息产业有限公司 主机与存储设备兼容适配测试方法和***
CN106021045A (zh) * 2016-05-11 2016-10-12 深圳市国鑫恒宇科技有限公司 一种linux***下服务器硬盘IO性能的测试方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108364670A (zh) * 2018-02-06 2018-08-03 珠海全志科技股份有限公司 读写压力测试方法、装置、设备及存储介质
CN108364670B (zh) * 2018-02-06 2020-12-08 珠海全志科技股份有限公司 读写压力测试方法、装置、设备及存储介质
CN109508268A (zh) * 2018-11-13 2019-03-22 郑州云海信息技术有限公司 一种ise硬盘测试装置及ise硬盘扇区快速擦除功能测试方法
CN109508268B (zh) * 2018-11-13 2022-02-18 郑州云海信息技术有限公司 一种ise硬盘测试装置及ise硬盘扇区快速擦除功能测试方法

Also Published As

Publication number Publication date
CN107423185B (zh) 2021-07-16

Similar Documents

Publication Publication Date Title
CN107391333A (zh) 一种osd磁盘故障测试方法及***
CN102279776B (zh) 一种错误检查与纠正能力的测试方法及装置
CN110459259A (zh) 存储设备写错误纠错能力的测试方法、***及存储介质
CN103049354B (zh) 数据修复方法、数据修复装置以及存储***
CN108646982A (zh) 一种基于ubifs的数据自动修复方法及装置
CN106205731B (zh) 信息处理方法及存储设备
CN102156237A (zh) 一种汽车线束检测方法及装置
CN109918226A (zh) 一种静默错误检测方法、装置及存储介质
CN108829619A (zh) 一种硬盘id连续拓扑结构及硬盘id定位方法
CN110399247A (zh) 一种数据恢复方法、装置、设备及计算机可读存储介质
CN107423185A (zh) 一种磁盘阵列和主机兼容适配的测试方法及装置
CN107315659A (zh) 一种元数据的冗余备份方法及装置
CN103684918A (zh) 链路故障检测方法和装置
CN103473148B (zh) 一种恢复测试环境方法及装置
CN109614272B (zh) 无本地缓存的数据备份方法和***
CN109240856A (zh) 一种存储元数据损坏模拟方法、装置、终端及存储介质
CN103995765B (zh) 一种led控制卡自动测试***及方法
CN109614273A (zh) 增量数据的读取方法和***
CN109062808A (zh) 一种ssd开发性能的测试方法、装置及相关设备
CN110444247A (zh) 存储设备写错误纠错能力的测试装置
CN109739716B (zh) 一种存储***中hba卡的测试方法和***
CN106878063A (zh) 一种从网元中恢复网络拓扑和业务配置数据的方法
CN108965053B (zh) 上位机软件压力测试方法、装置及***
CN104598171A (zh) 基于元数据的阵列重建方法及装置
CN115098311A (zh) 一种基于多路径别名的测试方法、***、装置及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant