CN112463608B - 基于分布式存储的测试方法及系统 - Google Patents

基于分布式存储的测试方法及系统 Download PDF

Info

Publication number
CN112463608B
CN112463608B CN202011373088.3A CN202011373088A CN112463608B CN 112463608 B CN112463608 B CN 112463608B CN 202011373088 A CN202011373088 A CN 202011373088A CN 112463608 B CN112463608 B CN 112463608B
Authority
CN
China
Prior art keywords
hard disk
abnormal
firmware
application server
index
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.)
Active
Application number
CN202011373088.3A
Other languages
English (en)
Other versions
CN112463608A (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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202011373088.3A priority Critical patent/CN112463608B/zh
Publication of CN112463608A publication Critical patent/CN112463608A/zh
Application granted granted Critical
Publication of CN112463608B publication Critical patent/CN112463608B/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/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种基于分布式存储的测试方法及系统,应用于云计算技术领域。该基于分布式存储的测试方法包括:获取硬盘固件和IO异常模型;向硬盘固件中注入IO异常模型对应的异常代码;根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级;模拟硬盘对应的应用服务器的读写IO操作,获取应用服务器的应用服务器指标和硬盘所在集群的集群指标;根据应用服务器指标和集群指标生成测试结果。本发明可以最大限度还原实际生产现象,提高测试用例的复用性,对分布式存储系统的性能进行全面真实的评估。

Description

基于分布式存储的测试方法及系统
技术领域
本发明涉及云计算技术领域,具体地,涉及一种基于分布式存储的测试方法及系统。
背景技术
随着数据不断增长以及互联网业务的兴起,新兴应用对存储需求的快速变化以及不确定性成为主要挑战。随着新兴业务的激增,业务数据呈几何倍数地快速增长,使得企业数据中心存储系统开始面临新的挑战。
分布式存储于此应运而生,它将通用硬件的本地存储资源组织起来构建高效率、高可用和极致扩展的智能分布式存储池,提供统一的api接口,向上层应用提供分布式块存储、分布式对象存储、大数据存储或分布式文件存储等多种存储服务,满足云和AI时代复杂的业务负载对存储提出的更高的性能、容量和扩展性需求。在传统的分布式存储高可用性能的测试方法中,一般都是直接对存储服务器的硬盘直接拔盘、对存储服务器直接下电、或者拔网线等等,但在实际使用的过程中,硬盘的故障并没有这么绝对化,因此所有传统的测试方法存在测试方法不真实、复用性不高的问题,因此不能对分布式存储系统的性能进行全面真实的评估。
发明内容
本发明实施例的主要目的在于提供一种基于分布式存储的测试方法及系统,以最大限度还原实际生产现象,提高测试用例的复用性,对分布式存储系统的性能进行全面真实的评估。
为了实现上述目的,本发明实施例提供一种基于分布式存储的测试方法,包括:
获取硬盘固件和IO异常模型;
向硬盘固件中注入IO异常模型对应的异常代码;
根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级;
模拟硬盘对应的应用服务器的读写IO操作,获取应用服务器的应用服务器指标和硬盘所在集群的集群指标;
根据应用服务器指标和集群指标生成测试结果。
在其中一种实施例中,向硬盘固件中注入IO异常模型对应的异常代码包括:
随机向硬盘固件的逻辑块地址区域中注入IO异常模型对应的异常代码。
在其中一种实施例中,根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级包括:
确定硬盘对应的存储节点;
通过存储节点将注入异常代码后的硬盘固件载入硬盘;
根据注入异常代码后的硬盘固件对硬盘进行升级。
在其中一种实施例中,根据应用服务器指标和集群指标生成测试结果包括:
当集群指标存在IO异常模型对应的异常且应用服务器指标存在异常时,生成异常告警信息。
本发明实施例还提供一种基于分布式存储的测试系统,包括:
获取单元,用于获取硬盘固件和IO异常模型。
异常代码注入单元,用于向硬盘固件中注入IO异常模型对应的异常代码。
硬盘升级单元,用于根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级。
指标获取单元,用于模拟硬盘对应的应用服务器的读写IO操作,获取应用服务器的应用服务器指标和硬盘所在集群的集群指标。
测试结果生成单元,用于根据应用服务器指标和集群指标生成测试结果。
在其中一种实施例中,异常代码注入单元具体用于:
随机向硬盘固件的逻辑块地址区域中注入IO异常模型对应的异常代码。
在其中一种实施例中,硬盘升级单元具体用于:
确定硬盘对应的存储节点;
通过存储节点将注入异常代码后的硬盘固件载入硬盘;
根据注入异常代码后的硬盘固件对硬盘进行升级。
在其中一种实施例中,测试结果生成单元具体用于:
当集群指标存在IO异常模型对应的异常且应用服务器指标存在异常时,生成异常告警信息。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并在处理器上运行的计算机程序,处理器执行计算机程序时实现所述的基于分布式存储的测试方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现所述的基于分布式存储的测试方法的步骤。
本发明实施例的基于分布式存储的测试方法及系统先向硬盘固件中注入IO异常模型对应的异常代码,然后根据注入异常代码后的硬盘固件对对应的硬盘进行升级,最后进行模拟测试获取对应的指标以生成测试结果,以最大限度还原实际生产现象,提高测试用例的复用性,对分布式存储系统的性能进行全面真实的评估。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中分布式存储的测试方法的流程图;
图2是本发明实施例中基于分布式存储的测试系统的结构框图;
图3是基于分布式存储的测试系统的实际结构框图;
图4是本发明实施例中计算机设备的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
鉴于现有技术的测试方法不真实、复用性不高,不能对分布式存储系统的性能进行全面真实的评估,本发明实施例提供一种基于分布式存储的测试方法,支持模拟实际各类硬盘故障场景,通过对硬盘的逻辑块地址区域(Logical Block Address,LBA)注入各类异常代码块,使上层应用服务器下发到硬盘的读写IO出现无规律的超时、报错或无响应等,以此来评估分布式存储软件应对此类不同硬盘故障的处理能力,对分布式存储系统的性能进行全面真实的技术验证。以下结合附图对本发明进行详细说明。
图1是本发明实施例中分布式存储的测试方法的流程图。如图1所示,分布式存储的测试方法包括:
S101:获取硬盘固件和IO异常模型。
具体实施时,可以通过硬盘工具获取硬盘序列号、型号、固件版本号等信息,根据上述信息获取硬盘固件,并根据实际场景选择硬盘故障对应的IO异常模型。IO异常模型可以包括:读/写IO瞬间返回异常模型、IO响应时延异常模型和IO长时间无响应(无返回也无报错)异常模型。
S102:向硬盘固件中注入IO异常模型对应的异常代码。
具体实施时,将读/写IO瞬间返回异常模型对应的异常代码注入硬盘固件后,该硬盘固件对写入逻辑块地址区域的数据IO立刻返回ERROR;将IO响应时延异常模型对应的异常代码注入硬盘固件后,该硬盘固件接收到正常返回状态码后,增加多秒的延迟再上报;将IO长时间无响应异常模型对应的异常代码注入硬盘固件后,该硬盘固件会将IO返回结果悬挂不做任何处理。
一实施例中,S102包括:随机向硬盘固件的逻辑块地址区域中注入IO异常模型对应的异常代码,以修改硬盘固件控制器模块的部分代码。以IO响应时延异常模型为例,可以随机向硬盘固件中的各个逻辑块地址区域注入随机的时延。例如,硬盘共有三块逻辑块地址区域,可以向第一逻辑块地址区域注入5s的时延,向第二逻辑块地址区域注入10s的时延,不向第三逻辑块地址区域注入时延。
其中,还可以设定第i个逻辑块地址区域的最大生效次数Ni,当第Ni次随机访问到第i个逻辑块地址区域后,在该逻辑块地址区域写入读取数据不再触发异常。在实际故障场景中,硬盘可能时好时坏,也有可能部分区域损坏部分区域正常,因此本申请更贴近于实际故障场景。
S103:根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级。
一实施例中,S103包括:确定硬盘对应的存储节点;通过刷新工具连接存储节点,将注入异常代码后的硬盘固件载入存储节点上的硬盘;根据注入异常代码后的硬盘固件对硬盘进行升级,等待硬盘固件升级完成。
S104:模拟硬盘对应的应用服务器的读写IO操作,获取应用服务器的应用服务器指标和硬盘所在集群的集群指标。
其中,当硬盘对应的上层应用服务器的读写IO访问到异常硬盘的逻辑块地址区域时,硬盘所在集群的每秒读写次数(IOPS,Input/Output Operations Per Second),时延监控指标等都会发生变化。
具体实施时,硬盘固件升级完成后,检查硬盘固件版本是否升级成功,升级成功后模拟上层应用服务器的读写IO操作,在应用服务器部署性能监控软件,同时登录分布式存储软件的集群监控页面,观察硬盘所在集群的集群指标(每秒读写次数、时延等)的变化情况。当集群指标存在IO异常模型对应的异常(每秒读写次数下降、归零;时延长时间维持在正常时延数据的几十倍或上百倍以上)时,登录应用服务器,查看此时间段应用服务器的性能监控情况。
S105:根据应用服务器指标和集群指标生成测试结果。
一实施例中,S105包括:当集群指标存在IO异常模型对应的异常且应用服务器指标存在异常时,生成异常告警信息。
例如,当集群指标存在IO异常模型对应的异常且上层应用服务器存在卡顿、宕机等异常时,表明分布式存储系统在该故障场景下不能满足上层应用无感,存储集群自我修复的高可用特性,此时需要生成异常告警信息后推送至测试人员。当集群指标存在IO异常模型对应的异常且上层应用服务器正常时,表明集群已将该异常硬盘强制下线,分布式存储系统在该故障场景下可以满足上层应用无感,存储集群自我修复的高可用特性。
图1所示的基于分布式存储的测试方法的执行主体为计算机。由图1所示的流程可知,本发明实施例的基于分布式存储的测试方法先向硬盘固件中注入IO异常模型对应的异常代码,然后根据注入异常代码后的硬盘固件对对应的硬盘进行升级,最后进行模拟测试获取对应的指标以生成测试结果,以最大限度还原实际生产现象,提高测试用例的复用性,对分布式存储系统的性能进行全面真实的评估。
本发明实施例的具体流程如下:
1、获取硬盘固件和IO异常模型。
2、随机向硬盘固件的逻辑块地址区域中注入IO异常模型对应的异常代码,以修改硬盘固件控制器模块的部分代码。
3、确定硬盘对应的存储节点。
4、通过刷新工具连接存储节点,将注入异常代码后的硬盘固件载入存储节点上的硬盘。
5、根据注入异常代码后的硬盘固件对硬盘进行升级,等待硬盘固件升级完成。
6、模拟上层应用服务器的读写IO操作,当集群指标存在IO异常模型对应的异常且应用服务器指标存在异常时,生成异常告警信息。
综上,为全面真实的评估分布式存储系统软件的高可用性能,解决当前高可用场景各类测试方法不真实、覆盖场景不全面、复用性不高等问题,本发明通过对硬盘的逻辑块地址区域注入各类IO异常模型的代码块,使裸盘的读/写IO出现无规律的超时、报错、无响应等异常,以此来全面评估分布式存储软件应对不同硬盘故障的高可用能力。
本发明具有以下有益效果:
1、从实际硬盘故障IO模型出发,最大限度的还原真实的生产现象。
2、对硬盘的固件进行各类IO异常模型的故障注入,提升测试场景的多样化。
3、硬盘可以随意拆卸安装至各类分布式存储节点,复用性更高。
基于同一发明构思,本发明实施例还提供了一种基于分布式存储的测试系统,由于该系统解决问题的原理与基于分布式存储的测试方法相似,因此该系统的实施可以参见方法的实施,重复之处不再赘述。
图2是本发明实施例中基于分布式存储的测试系统的结构框图。图3是基于分布式存储的测试系统的实际结构框图。如图2-图3所示,基于分布式存储的测试系统包括:
获取单元,用于获取硬盘固件和IO异常模型。
异常代码注入单元,用于向硬盘固件中注入IO异常模型对应的异常代码。
硬盘升级单元,用于根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级。
指标获取单元,用于模拟硬盘对应的应用服务器的读写IO操作,获取应用服务器的应用服务器指标和硬盘所在集群的集群指标。
测试结果生成单元,用于根据应用服务器指标和集群指标生成测试结果。
在其中一种实施例中,异常代码注入单元具体用于:
随机向硬盘固件的逻辑块地址区域中注入IO异常模型对应的异常代码。
在其中一种实施例中,硬盘升级单元具体用于:
确定硬盘对应的存储节点;
通过存储节点将注入异常代码后的硬盘固件载入硬盘;
根据注入异常代码后的硬盘固件对硬盘进行升级。
在其中一种实施例中,测试结果生成单元具体用于:
当集群指标存在IO异常模型对应的异常且应用服务器指标存在异常时,生成异常告警信息。
如图3所示,在实际应用中,基于分布式存储的测试系统包括:IO模型选择模块、硬盘固件制作模块、硬盘升级模块和结果测试模块。
IO模型选择模块包括获取单元,用于用户自定义选取一个IO模型,一般分为读/写IO瞬间返回异常模型、IO响应时延异常模型和IO长时间无响应(无返回也无报错)异常模型。
硬盘固件制作模块包括异常代码注入单元,用于基于IO模型对固件进行异常注入:从IO模型选择模块中获取硬盘固件的异常模板,主要包含读/写IO瞬间返回异常模型、IO响应时延(例如10s时延)异常模型和IO长时间无响应(无返回也无报错)异常模型。根据这几种模型进行异常注入,修改硬盘固件控制器模块部分代码;对指定逻辑块地址区域修改的控制器模块代码设定一个生效最大次数,即第N次访问到随机的逻辑块地址区域后,硬盘上此扇区的数据写入不再触发异常,以便更贴近于实际故障场景。
硬盘升级模块包括获取单元和硬盘升级单元,用于通过硬盘工具获取硬盘序列号、型号、固件版本号等信息,根据上述信息在官网下载对应的固件版本;硬盘升级模块还用于将异常的固件版本升级至分布式存储系统软件中:连接存储节点,通过刷新工具对存储节点上的硬盘载入新的固件,等待固件升级完成。
结果测试模块包括测试结果生成单元,用于基于异常固件评估分布式存储软件的可用能力:硬盘固件升级完成后,检查硬盘固件版本是否升级成功,升级成功后模拟上层应用的读/写IO操作,在应用服务器部署性能监控软件,登录分布式存储软件的集群监控页面,观察整个集群的每秒读写次数、时延监控指标的变化情况。当出现每秒读写次数下降、归零,时延飙升至正常水平几十倍、上百倍且持续时间较长等情况时,登录应用服务器,查看此时间段应用服务器性能监控情况,观察各种IO异常模型下分布式存储上层应用服务器是否卡顿、宕机,以此评估分布式存储系统软件在故障场景下是否能满足上层应用无感,存储集群自我修复的高可用特性。
综上,本发明实施例的基于分布式存储的测试系统先向硬盘固件中注入IO异常模型对应的异常代码,然后根据注入异常代码后的硬盘固件对对应的硬盘进行升级,最后进行模拟测试获取对应的指标以生成测试结果,以最大限度还原实际生产现象,提高测试用例的复用性,对分布式存储系统的性能进行全面真实的评估。
本发明实施例还提供能够实现上述实施例中的基于分布式存储的测试方法中全部步骤的一种计算机设备的具体实施方式。图4是本发明实施例中计算机设备的结构框图,参见图4,所述计算机设备具体包括如下内容:
处理器(processor)401和存储器(memory)402。
所述处理器401用于调用所述存储器402中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的基于分布式存储的测试方法中的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
获取硬盘固件和IO异常模型;
向硬盘固件中注入IO异常模型对应的异常代码;
根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级;
模拟硬盘对应的应用服务器的读写IO操作,获取应用服务器的应用服务器指标和硬盘所在集群的集群指标;
根据应用服务器指标和集群指标生成测试结果。
综上,本发明实施例的计算机设备先向硬盘固件中注入IO异常模型对应的异常代码,然后根据注入异常代码后的硬盘固件对对应的硬盘进行升级,最后进行模拟测试获取对应的指标以生成测试结果,以最大限度还原实际生产现象,提高测试用例的复用性,对分布式存储系统的性能进行全面真实的评估。
本发明实施例还提供能够实现上述实施例中的基于分布式存储的测试方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的基于分布式存储的测试方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
获取硬盘固件和IO异常模型;
向硬盘固件中注入IO异常模型对应的异常代码;
根据注入异常代码后的硬盘固件对硬盘固件对应的硬盘进行升级;
模拟硬盘对应的应用服务器的读写IO操作,获取应用服务器的应用服务器指标和硬盘所在集群的集群指标;
根据应用服务器指标和集群指标生成测试结果。
综上,本发明实施例的计算机可读存储介质先向硬盘固件中注入IO异常模型对应的异常代码,然后根据注入异常代码后的硬盘固件对对应的硬盘进行升级,最后进行模拟测试获取对应的指标以生成测试结果,以最大限度还原实际生产现象,提高测试用例的复用性,对分布式存储系统的性能进行全面真实的评估。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
本发明实施例中所描述的各种说明性的逻辑块,或单元,或装置都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。

Claims (8)

1.一种基于分布式存储的测试方法,其特征在于,包括:
获取硬盘固件和IO异常模型;
向所述硬盘固件中注入所述IO异常模型对应的异常代码;
根据注入异常代码后的硬盘固件对所述硬盘固件对应的硬盘进行升级;
模拟所述硬盘对应的应用服务器的读写IO操作,获取所述应用服务器的应用服务器指标和所述硬盘所在集群的集群指标;
根据所述应用服务器指标和所述集群指标生成测试结果;
根据注入异常代码后的硬盘固件对所述硬盘固件对应的硬盘进行升级包括:
确定所述硬盘对应的存储节点;
通过所述存储节点将注入异常代码后的硬盘固件载入所述硬盘;
根据注入异常代码后的硬盘固件对所述硬盘进行升级。
2.根据权利要求1所述的基于分布式存储的测试方法,其特征在于,向所述硬盘固件中注入所述IO异常模型对应的异常代码包括:
随机向所述硬盘固件的逻辑块地址区域中注入所述IO异常模型对应的异常代码。
3.根据权利要求1所述的基于分布式存储的测试方法,其特征在于,根据所述应用服务器指标和所述集群指标生成测试结果包括:
当所述集群指标存在所述IO异常模型对应的异常且所述应用服务器指标存在异常时,生成异常告警信息。
4.一种基于分布式存储的测试系统,其特征在于,包括:
获取单元,用于获取硬盘固件和IO异常模型;
异常代码注入单元,用于向所述硬盘固件中注入所述IO异常模型对应的异常代码;
硬盘升级单元,用于根据注入异常代码后的硬盘固件对所述硬盘固件对应的硬盘进行升级;
指标获取单元,用于模拟所述硬盘对应的应用服务器的读写IO操作,获取所述应用服务器的应用服务器指标和所述硬盘所在集群的集群指标;
测试结果生成单元,用于根据所述应用服务器指标和所述集群指标生成测试结果;
所述硬盘升级单元具体用于:
确定所述硬盘对应的存储节点;
通过所述存储节点将注入异常代码后的硬盘固件载入所述硬盘;
根据注入异常代码后的硬盘固件对所述硬盘进行升级。
5.根据权利要求4所述的基于分布式存储的测试系统,其特征在于,所述异常代码注入单元具体用于:
随机向所述硬盘固件的逻辑块地址区域中注入所述IO异常模型对应的异常代码。
6.根据权利要求4所述的基于分布式存储的测试系统,其特征在于,所述测试结果生成单元具体用于:
当所述集群指标存在所述IO异常模型对应的异常且所述应用服务器指标存在异常时,生成异常告警信息。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至3任一项所述的基于分布式存储的测试方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至3任一项所述的基于分布式存储的测试方法的步骤。
CN202011373088.3A 2020-11-30 2020-11-30 基于分布式存储的测试方法及系统 Active CN112463608B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011373088.3A CN112463608B (zh) 2020-11-30 2020-11-30 基于分布式存储的测试方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011373088.3A CN112463608B (zh) 2020-11-30 2020-11-30 基于分布式存储的测试方法及系统

Publications (2)

Publication Number Publication Date
CN112463608A CN112463608A (zh) 2021-03-09
CN112463608B true CN112463608B (zh) 2024-01-26

Family

ID=74806678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011373088.3A Active CN112463608B (zh) 2020-11-30 2020-11-30 基于分布式存储的测试方法及系统

Country Status (1)

Country Link
CN (1) CN112463608B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684149A (zh) * 2018-12-13 2019-04-26 浪潮电子信息产业股份有限公司 一种NVMe硬盘的硬件信息监控方法、装置及设备
CN109828929A (zh) * 2019-02-27 2019-05-31 苏州浪潮智能科技有限公司 硬盘固件防篡改安全性测试方法、系统、终端及存储介质
CN110489285A (zh) * 2019-07-12 2019-11-22 苏州浪潮智能科技有限公司 一种固态硬盘的异常分支测试方法和系统
CN111858240A (zh) * 2020-07-03 2020-10-30 苏州浪潮智能科技有限公司 一种分布式存储系统的监控方法、系统、设备以及介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109684149A (zh) * 2018-12-13 2019-04-26 浪潮电子信息产业股份有限公司 一种NVMe硬盘的硬件信息监控方法、装置及设备
CN109828929A (zh) * 2019-02-27 2019-05-31 苏州浪潮智能科技有限公司 硬盘固件防篡改安全性测试方法、系统、终端及存储介质
CN110489285A (zh) * 2019-07-12 2019-11-22 苏州浪潮智能科技有限公司 一种固态硬盘的异常分支测试方法和系统
CN111858240A (zh) * 2020-07-03 2020-10-30 苏州浪潮智能科技有限公司 一种分布式存储系统的监控方法、系统、设备以及介质

Also Published As

Publication number Publication date
CN112463608A (zh) 2021-03-09

Similar Documents

Publication Publication Date Title
CN110992992B (zh) 一种硬盘测试方法、设备以及存储介质
CN111274077A (zh) 一种磁盘阵列可靠性测试方法、系统、终端及存储介质
CN109684150B (zh) 存储颗粒控制器的性能测试系统、测试方法及仿真平台
CN112100052A (zh) 一种接口测试场景的回放方法及装置
CN112017723A (zh) 存储器的掉电测试方法、装置、可读存储介质及电子设备
CN111400154A (zh) 一种固态硬盘的性能测试方法及相关装置
CN112433948A (zh) 一种基于网络数据分析的仿真测试系统及方法
CN112650688A (zh) 自动化回归测试方法、关联设备以及计算机程序产品
CN112463608B (zh) 基于分布式存储的测试方法及系统
CN116401086A (zh) 内存漏斗错误上报机制的测试方法、装置、设备及介质
CN116560924A (zh) 性能测试方法、装置、计算机设备和可读存储介质
CN116431452A (zh) 数据库的压力测试方法、装置、电子设备和可读存储介质
CN113961465A (zh) 程序崩溃场景的复现处理方法、设备及程序产品
CN114816806A (zh) 容器可用性验证方法、装置、计算机设备和存储介质
US11244096B2 (en) Simulating operation of an electronic device tracing using port mirroring
CN113238950A (zh) 一种分布式系统测试的系统及方法、存储介质、电子设备
CN113805800A (zh) 一种基于raid条带的写io的方法、装置、设备及可读介质
CN115437903A (zh) 接口测试方法、装置、设备、存储介质及程序
CN114356679B (zh) 实现坏块设置的方法、装置、存储介质及电子设备
CN116089200A (zh) 基于ceph的存储系统健壮性测试方法、装置、设备及介质
CN110806981A (zh) 一种应用程序测试方法、装置、设备和存储介质
CN116719728B (zh) 多节点回归测试方法、装置、介质及电子设备
CN116882335B (zh) 操作时间仿真获取方法、装置、电子设备及存储介质
CN113886165B (zh) 一种固件诊断功能的验证方法、装置、设备及可读介质
CN114826884B (zh) 跨设备协议通信故障定位的方法、装置、设备及可读介质

Legal Events

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