CN114090357A - 一种硬盘性能测试方法、装置、电子设备及存储介质 - Google Patents
一种硬盘性能测试方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114090357A CN114090357A CN202111434254.0A CN202111434254A CN114090357A CN 114090357 A CN114090357 A CN 114090357A CN 202111434254 A CN202111434254 A CN 202111434254A CN 114090357 A CN114090357 A CN 114090357A
- Authority
- CN
- China
- Prior art keywords
- test
- test result
- machine
- preset threshold
- read
- 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
Images
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/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
-
- 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/2273—Test methods
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
本申请涉及一种硬盘性能测试方法、装置、电子设备及存储介质,本申请属于计算机技术领域。该硬盘性能测试方法包括:对存储集群的共享存储池进行性能测试,得到第一测试结果;针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果;基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告。在测试硬盘性能时,会对存储集群中的每台机器进行性能测试,以及对存储集群的共享存储池进行性能测试,这样便可得到第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值,从而可以得到硬盘在不同环境下的读写效率以及误差值。
Description
技术领域
本申请属于计算机技术领域,具体涉及一种硬盘性能测试方法、装置、电子设备及存储介质。
背景技术
随着数据中心和云存储技术的发展,对服务器的IO(输入输出)处理能力和网络稳定性要求越来越来高。服务器在使用过程中产生的大量重要数据都存储于服务器上的硬盘中,所以硬盘性能的好坏将直接影响服务器的性能。这样就使得许多服务器厂商都在不断改进对硬盘性能测试的方法,提高测试的准确性及质量。
目前的硬盘性能测试大多都是压力测试,例如,利用fio工具对硬盘进行压力测试,虽然这种测试方式对于验证硬盘的稳定性和可靠性起到了至关重要的作用,但是该方式无法准确反映出硬盘在复杂环境下的读写效率。
发明内容
鉴于此,本申请的目的在于提供一种硬盘性能测试方法、装置、电子设备及计算机可读存储介质,以改善现有硬盘测试方法无法反映出硬盘在复杂环境下的读写效率的问题。
本申请的实施例是这样实现的:
第一方面,本申请实施例提供了一种硬盘性能测试方法,包括:对存储集群的共享存储池进行性能测试,得到第一测试结果;针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果;基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,所述测试报告包括所述第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。本申请实施例中,在测试硬盘性能时,会对存储集群中的每台机器进行性能测试,以及对存储集群的共享存储池进行性能测试,这样便可得到集群测试的第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值,从而可以得到硬盘在不同环境下的读写效率以及还可以通过误差值验证存储集群的负载均衡能力。
结合第一方面实施例的一种可能的实施方式,对存储集群的共享存储池进行性能测试,得到第一测试结果,包括:从预设多个测试参数中选择最小测试参数对存储集群的共享存储池进行性能测试,获取对应的测试结果;若所述最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对存储集群的共享存储池进行性能测试,直至测试结果达标,其中,达标时的测试结果为所述第一测试结果。本申请实施例中,通过预设多种测试参数,不同的测试参数对应不同的测试场景,在测试时,先从预设多个测试参数中选择最小测试参数对存储集群的共享存储池进行性能测试,若测试结果不达标,则再次从未选择的预设测试参数选择最小测试参数对存储集群的共享存储池进行性能测试,直至测试结果达标,这样便可获得所需的测试结果,同时,通过预设多种测试参数可以模拟不同场景下的机器性能。
结合第一方面实施例的一种可能的实施方式,对存储集群的共享存储池进行性能测试,得到第一测试结果,包括:对所述存储集群的共享存储池进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写测试;获取第一预设阈值随机读写的测试数据,以及获取第二预设阈值顺序读写的测试数据,其中,所述第一测试结果包括第一预设阈值随机读写的测试数据以及第二预设阈值顺序读写的测试数据。本申请实施例中,通过对存储集群的共享存储池进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写测试,进而可以测试共享存储池的IOPS(Input Output Per Second,每秒进行读写操作的次数)以及硬盘传输带宽性能。
结合第一方面实施例的一种可能的实施方式,所述对该台机器进行性能测试,得到第二测试结果,包括:对该台机器中的每个待测硬盘进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写操作;获取每个待测硬盘第一预设阈值随机读写的测试数据,以及获取每个待测硬盘第二预设阈值顺序读写的测试数据;基于该台机器中每个待测硬盘第一预设阈值随机读写的测试数据,得到该台机器的第一预设阈值随机读写的测试数据,以及基于该台机器中每个待测硬盘第二预设阈值顺序读写的测试数据,得到该台机器的第二预设阈值顺序读写的测试数据;其中,所述第二测试结果包括该台机器的第一预设阈值随机读写的测试数据,以及第二预设阈值顺序读写的测试数据。本申请实施例中,通过台机器中的每个待测硬盘进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写操作,进而可以测试每个待测硬盘的IOPS(Input Output Per Second,每秒进行读写操作的次数)以及硬盘传输带宽性能。
结合第一方面实施例的一种可能的实施方式,所述对该台机器进行性能测试,得到第二测试结果,包括:从预设多个测试参数中选择最小测试参数对该台机器进行性能测试,获取对应的测试结果;若所述最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对该台机器进行性能测试,直至测试结果达标,其中,达标时的测试结果为所述第二测试结果。本申请实施例中,通过预设多种测试参数,不同的测试参数对应不同的测试场景,在测试时,先从预设多个测试参数中选择最小测试参数对机器进行性能测试,若测试结果不达标,则再次从未选择的预设测试参数选择最小测试参数对机器进行性能测试,直至测试结果达标,这样便可获得所需的测试结果,同时,通过预设多种测试参数可以模拟不同场景下的机器性能。
结合第一方面实施例的一种可能的实施方式,所述随机读写的测试数据包括IOPS和网卡带宽,所述顺序读写的测试数据包括硬盘传输带宽和网卡带宽;基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,包括:根据所述存储集群中的机器数量以及所述第一测试结果,得到所述第一测试结果平均到每台机器的第三测试结果;根据每台机器各自的第二测试结果以及所述第三测试结果,得到所述第三测试结果与每台机器的第二测试结果之间的误差值;其中,所述测试报告还包括所述共享存储池的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽,每台机器的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽。本申请实施例中,测试报告除了包括第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值外,还包括共享存储池的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽,每台机器的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽,通过将数据进行汇总,这样通过查看该测试报告,即可获取所需的数据,能提高用户体验。
结合第一方面实施例的一种可能的实施方式,在所述对存储集群的共享存储池进行性能测试之前,所述方法还包括:在所述存储集群中的每台机器中自动部署ceph软件,搭建所述存储集群,并建立全局统一的所述共享存储池。
第二方面,本申请实施例还提供了一种硬盘性能测试装置,包括:第一测试模块、第二测试模块以及处理模块;第一测试模块,用于对存储集群的共享存储池进行性能测试,得到第一测试结果;第二测试模块,用于针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果;处理模块,用于基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,所述测试报告包括所述第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。
第三方面,本申请实施例还提供了一种电子设备,包括:存储器和处理器,所述处理器与所述存储器连接;所述存储器,用于存储程序;所述处理器,用于调用存储于所述存储器中的程序,以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1示出了本申请实施例提供的一种硬盘性能测试方法的流程示意图。
图2示出了本申请实施例提供的一种对存储集群的共享存储池进行性能测试的原理示意图。
图3示出了本申请实施例提供的一种硬盘性能测试装置的模块示意图。
图4示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中诸如“第一”、“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例提供了一种硬盘性能测试方法,下面将结合图1对本申请实施例提供的硬盘性能测试方法进行说明。该硬盘性能测试方法包括如下步骤:
S1:存储集群的共享存储池进行性能测试,得到第一测试结果。
在对存储集群的共享存储池进行性能测试时,可以是利用vdbench测试工具对存储集群的共享存储池进行性能测试,该vdbench测试工具会同时测试硬盘和网络的性能。在利用vdbench测试工具对存储集群的共享存储池进行性能测试之前,需要在所有机器上自动化安装该vdbench测试工具以及vdbench测试环境(如java环境)。
此外,除了可以利用vdbench测试工具同时测试硬盘和网络的性能外,还可以利用fio测试工具(为一种硬盘测试工具)对硬盘性能进行测试,以及利用netperf测试工具(为一种网卡测试工具)对网卡性能进行测试。
一种实施方式下,在对存储集群的共享存储池进行性能测试,得到第一测试结果的过程可以是:对存储集群的共享存储池进行预设时长(如10分钟)的第一预设阈值(如4k)随机读写测试以及第二预设阈值(如512K或1M)顺序读写测试,获取第一预设阈值随机读写的测试数据,以及获取第二预设阈值顺序读写的测试数据,其中,第一测试结果包括第一预设阈值随机读写的测试数据以及第二预设阈值顺序读写的测试数据。第一预设阈值随机读写的测试数据包括IOPS(Input Output Per Second,每秒进行读写操作的次数)和网卡带宽,第二预设阈值顺序读写的测试数据包括硬盘传输带宽和网卡带宽。
需要说明的是,一种实施方式下,对存储集群的共享存储池进行性能测试可以仅对存储集群的共享存储池进行预设时长的第一预设阈值随机读写测试,或者,第二预设阈值顺序读写测试,即仅进行上述第一预设阈值随机读写测试以及第二预设阈值顺序读写测试中的一种测试。
此外,在进行第一预设阈值随机读写测试时,并不限于上述的4k随机读写测试,还可以是8k随机读写测试,也即上述的第一预设阈值并不限于4k,也可以是如8k的其他数值,因此,不能将上述的4k理解成是对第一预设阈值的限定。同理,上述的第二预设阈值不限于上述的512K或1M,也可以是256k等数值,因此,不能将上述的512K或1M理解成是对第二预设阈值的限定。
一种实施方式下,在对存储集群的共享存储池进行性能测试时,其可以是:从预设多个测试参数中选择最小测试参数对存储集群的共享存储池进行性能测试,获取对应的测试结果;若最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对存储集群的共享存储池进行性能测试,直至测试结果达标,其中,达标时的测试结果即为第一测试结果,其原理示意图如图2所示。
为了测试不同测试场景下的性能,更好的模拟服务器在实际应用中的工作IO均衡负载,在测试前可以事先设置多个测试参数(也称为测试模型),不同的测试参数对应不同的测试场景,不同的测试参数对应的测试策略不同,如MTU(Maximum Transmission Unit,最大传输单元)值、线程数、CPU(Central Processing Unit)核数和硬盘的队列深度中至少有一个参数不同,进而呈现出的测试效果也不同。
其中,预设的多个测试参数中不同的测试参数所包含的参数类型相同,例如都包含a、b、c,不同的测试参数中至少有一个参数的值不同,如测试参数1为a、b、c1,测试参数2为a、b、c2,且c1与c2不同。例如,预设有5种测试参数,按照参数值从小到大,依次为测试参数1、测试参数2、测试参数3、测试参数4、测试参数5。在测试时,多个测试参数首先选择测试参数1对存储集群的共享存储池进行第一预设阈值随机读写测试,获取对应的测试结果(如IOPS和网卡带宽),之后判断测试结果是否达标,如未达标(IOPS不达标或网卡带宽不达标),则继续选用测试参数2对存储集群的共享存储池进行第一预设阈值随机读写测试,并获取对应的测试结果,若该测试结果达标,则可以不再选择后续测试参数(如测试参数3、测试参数4、测试参数5)对存储集群的共享存储池进行性能测试。同理,对存储集群的共享存储池进行第二预设阈值顺序读写测试时也会如此,也是从多个测试参数中选择最小测试参数进行第二预设阈值顺序读写测试,如果测试结果(包含硬盘传输带宽和网卡带宽)不达标,则继续从剩余的测试参数中选择最小测试参数再次进行第二预设阈值顺序读写测试,如果此时测试结果达标,则不再进行后续测试参数测试。
其中,针对共享存储池进行第二预设阈值顺序读写测试时的预设多种测试参数与进行第一预设阈值随机读写测试时的预设多种测试参数不同。其中,每台机器在出厂时都会标记机器所支持的最大IOPS、最大网卡带宽以及最大硬盘传输带宽。可选地,如果测试结果中的IOPS、网卡带宽、硬盘传输带宽达到最大理论值的90%以上,视为测试结果达标,反之则不达标。其中,存储集群的最大理论值为每台机器的最大理论值之和。
其中,存储集群的共享存储池的容量为存储集群中每台机器(可以为计算机)的存储容量之和,每台机器都可以访问该共享存储池。存储集群可以为ceph存储集群,ceph存储集群为利用ceph集群这项技术搭建的存储集群。
一种实施方式下,在S1之前,该硬盘性能测试方法包括还包括:在用于搭建存储集群的每台机器中自动部署ceph软件,搭建存储集群,并建立全局统一的共享存储池。ceph软件是一款针对海量数据存储应用而设计的大规模通用集群存储系统,采用通用硬件设备作为基本的构建单元,为应用提供全局统一的存储池。可以通过在开源的ceph软件上面进行二次开发,增加自动部署,自动安装功能,实现一键安装。在自动安装ceph软件之前,可以先将每台机器设置为免密操作,之后利用自动化部署测试脚本在每台机器中自动部署安装ceph软件,搭建存储集群,并建立全局统一的共享存储池。通过开发自动化部署测试脚本,使得无需手动搭建测试环境,从而提高了工作效率,节省了测试时间。
其中,搭建存储集群的具体过程已经为本领域所熟知,在此不再进一步介绍。
S2:针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果。
本申请实施例提供的硬盘性能测试方法,除了对存储集群的共享存储池进行性能测试外,还会针对存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果。其中,S1和S2之间没有先后顺序之分,可以是先执行S1,再执行S2,也可以是先执行S2,再执行S1。
在对每台机器进行性能测试时,可以是利用vdbench测试工具进行测试。当然,也可以利用fio测试工具(为一种硬盘测试工具)对硬盘性能进行测试,以及利用netperf测试工具(为一种网卡测试工具)对网卡性能进行测试。
针对存储集群中的每台机器,对该台机器进行性能测试时,一种实施方式下,其过程可以是:对该台机器中的每个待测硬盘进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写操作;获取每个待测硬盘第一预设阈值随机读写的测试数据,以及获取每个待测硬盘第二预设阈值顺序读写的测试数据;基于该台机器中每个待测硬盘第一预设阈值随机读写的测试数据,得到该台机器的第一预设阈值随机读写的测试数据,以及基于该台机器中每个待测硬盘第二预设阈值顺序读写的测试数据,得到该台机器的第二预设阈值顺序读写的测试数据;其中,第二测试结果包括该台机器的第一预设阈值随机读写的测试数据,以及第二预设阈值顺序读写的测试数据。例如,该台机器有3个待测硬盘,测试时,分别对这3个待测硬盘进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写操作,并获取对应的测试数据,3个待测硬盘的测试数据之和,即为该台机器的测试结果,也即,该台机器的第一预设阈值随机读写的测试数据为3个待测硬盘进行第一预设阈值随机读写的测试数据之和,该台机器的第二预设阈值顺序读写的测试数据为3个待测硬盘进行第二预设阈值顺序读写的测试数据之和。其中,第二测试结果包括第一预设阈值随机读写的测试数据以及第二预设阈值顺序读写的测试数据。第一预设阈值随机读写的测试数据包括IOPS(Input Output Per Second,每秒进行读写操作的次数)和网卡带宽,第二预设阈值顺序读写的测试数据包括硬盘传输带宽和网卡带宽。
需要说明的是,一种实施方式下,对每台机器进行性能测试可以仅对每台机器进行预设时长的第一预设阈值随机读写测试,或者,第二预设阈值顺序读写测试,即仅进行上述第一预设阈值随机读写测试以及第二预设阈值顺序读写测试中的一种测试。一种实施方式下,在对该台机器进行性能测试时,其可以是:从预设多个测试参数中选择最小测试参数对该台机器进行性能测试,获取对应的测试结果;若最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对该台机器进行性能测试,直至测试结果达标,其中,达标时的测试结果为第二测试结果。
该过程的原理与上述S1中对应内容的原理相同,例如,预设有5种测试参数,按照参数值从小到大,依次为测试参数1、测试参数2、测试参数3、测试参数4、测试参数5。在测试时,多个测试参数首先选择测试参数1对机器中的待测硬盘进行第一预设阈值随机读写测试获取对应的测试结果(如IOPS和网卡带宽),之后判断测试结果是否达标,如未达标(IOPS不达标或网卡带宽不达标),则继续选用测试参数2对机器中的待测硬盘进行第一预设阈值随机读写测试,并获取对应的测试结果,若该测试结果达标,则可以不再选择后续测试参数(如测试参数3、测试参数4、测试参数5)对存储集群的共享存储池进行性能测试。同理,对机器中的待测硬盘进行第二预设阈值顺序读写测试时也会如此,也是从多个测试参数中选择最小测试参数对机器中的待测硬盘进行第二预设阈值顺序读写测试,如果测试结果(包含硬盘传输带宽和网卡带宽)不达标,则继续从剩余的测试参数中选择最小测试参数再次进行第二预设阈值顺序读写测试,如果此时测试结果达标,则不再进行后续测试参数测试。该过程的原理与上述S1中对应内容的原理相同,未提及之处,可以参见S1中对应内容。
之后,按照上述的原理,对该机器中的下一个待测硬盘进行第一预设阈值随机读写测试,以及第二预设阈值顺序读写测试,直至测试完该机器中所有待测硬盘,之后,将该机器的所有测试硬盘的测试结果(达标的测试结果)相加,即为该机器的第二测试结果。其中,针对机器进行第二预设阈值顺序读写测试时的预设多种测试参数与进行第一预设阈值随机读写测试时的预设多种测试参数不同,此外,针对共享存储池进行第二预设阈值顺序读写测试时的预设多种测试参数与针对单台机器进行第二预设阈值顺序读写测试时的预设多种测试参数不同;针对共享存储池进行第一预设阈值随机读写测试时的预设多种测试参数与针对单台机器进行第一预设阈值随机读写测试时的预设多种测试参不同。
S3:基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告。
在得到对存储集群的共享存储池进行性能测试的第一测试结果,以及,对每台机器进行性能测试的第二测试结果之后,基于第一测试结果,以及每台机器各自的第二测试结果,便可生成测试报告,其中,测试报告包括第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。
其中,随机读写的测试数据包括IOPS和网卡带宽,顺序读写的测试数据包括硬盘传输带宽和网卡带宽,一种实施方式下,第一测试结果包括随机读写的测试数据以及顺序读写的测试数据。
在基于第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,其过程可以是:根据存储集群中的机器数量以及第一测试结果,得到第一测试结果平均到每台机器的第三测试结果,根据每台机器各自的第二测试结果以及第三测试结果,得到第三测试结果与每台机器的第二测试结果之间的误差值。其中,误差值包括IOPS误差值,硬盘传输带宽误差值、随机读写测试时的网卡带宽误差值,顺序读写测试时的网卡带宽误差值。此时,测试报告包括第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。若误差值小于预设阈值(如10%其预设阈值并不限于此,例如可以为5%,其可以根据需要进行设定),则测试合格,反之测试不合格。例如,存储集群中的机器数量为5,则第三测试结果=第一测试结果/5。例如,对于计算IOPS的误差值来说,将存储集群的IOPS平均到每台机器后的IOPS与每台机器的IOPS进行比对,即可得到对应误差值。对于计算硬盘传输带宽与网卡带宽的误差值的其原理与计算IOPS的误差值的原理类似,此处不再说明。
其中,测试报告除了包括第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值外,测试报告还可以包括共享存储池的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽,每台机器的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽,也即测试结论(测试合格或测试不合格)。
基于同样的发明构思,本申请实施例还提供了一种硬盘性能测试装置100,如图3所示。该硬盘性能测试装置100包括:第一测试模块110、第二测试模块120以及处理模块130。第一测试模块110,用于对存储集群的共享存储池进行性能测试,得到第一测试结果。
第二测试模块120,用于针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果。
处理模块130,用于基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,所述测试报告包括所述第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。
可选地,第一测试模块110,用于从预设多个测试参数中选择最小测试参数对存储集群的共享存储池进行性能测试,获取对应的测试结果;若所述最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对存储集群的共享存储池进行性能测试,直至测试结果达标,其中,达标时的测试结果为所述第一测试结果。
可选地,第一测试模块110,用于对所述存储集群的共享存储池进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写测试;获取第一预设阈值随机读写的测试数据,以及获取第二预设阈值顺序读写的测试数据,其中,所述第一测试结果包括第一预设阈值随机读写的测试数据以及第二预设阈值顺序读写的测试数据。
可选地,第二测试模块120,用于对该台机器中的每个待测硬盘进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写操作;获取每个待测硬盘第一预设阈值随机读写的测试数据,以及获取每个待测硬盘第二预设阈值顺序读写的测试数据;基于该台机器中每个待测硬盘第一预设阈值随机读写的测试数据,得到该台机器的第一预设阈值随机读写的测试数据,以及基于该台机器中每个待测硬盘第二预设阈值顺序读写的测试数据,得到该台机器的第二预设阈值顺序读写的测试数据;其中,所述第二测试结果包括该台机器的第一预设阈值随机读写的测试数据,以及第二预设阈值顺序读写的测试数据。
可选地,第二测试模块120,用于从预设多个测试参数中选择最小测试参数对该台机器进行性能测试,获取对应的测试结果;若所述最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对该台机器进行性能测试,直至测试结果达标,其中,达标时的测试结果为所述第二测试结果。
可选地,所述随机读写的测试数据包括IOPS和网卡带宽,所述顺序读写的测试数据包括硬盘传输带宽和网卡带宽;处理模块130,用于根据所述存储集群中的机器数量以及所述第一测试结果,得到所述第一测试结果平均到每台机器的第三测试结果;根据每台机器各自的第二测试结果以及所述第三测试结果,得到所述第三测试结果与每台机器的第二测试结果之间的误差值,其中,所述测试报告还包括所述共享存储池的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽,每台机器的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽。其中,上述的第一测试模块110与第二测试模块120可以是同一个模块,也可以是不同的模块。
本申请实施例所提供的硬盘性能测试装置100,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
如图4所示,图4示出了本申请实施例提供的一种电子设备200的结构框图。所述电子设备200包括:收发器210、存储器220、通讯总线230以及处理器240。
所述收发器210、所述存储器220、处理器240各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线230或信号线实现电性连接。其中,收发器210用于收发数据。存储器220用于存储计算机程序,如存储有图3中所示的软件功能模块,即硬盘性能测试装置100。其中,硬盘性能测试装置100包括至少一个可以软件或固件(Firmware)的形式存储于所述存储器220中或固化在所述电子设备200的操作系统(Operating System,OS)中的软件功能模块。所述处理器240,用于执行存储器220中存储的可执行模块,例如硬盘性能测试装置100包括的软件功能模块或计算机程序。例如,处理器240,用于对存储集群的共享存储池进行性能测试,得到第一测试结果;针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果;基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,所述测试报告包括所述第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。
其中,存储器220可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器240可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器240也可以是任何常规的处理器等。
其中,上述的电子设备200,包括但不限于存储集群中的机器,如为计算机等。
本申请实施例还提供了一种非易失性的计算机可读取存储介质(以下简称存储介质),该存储介质上存储有计算机程序,该计算机程序被计算机如上述的电子设备200运行时,执行上述所示的硬盘性能测试方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者电子设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的计算机可读存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种硬盘性能测试方法,其特征在于,包括:
对存储集群的共享存储池进行性能测试,得到第一测试结果;
针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果;
基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,所述测试报告包括所述第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。
2.根据权利要求1所述的方法,其特征在于,对存储集群的共享存储池进行性能测试,得到第一测试结果,包括:
从预设多个测试参数中选择最小测试参数对存储集群的共享存储池进行性能测试,获取对应的测试结果;
若所述最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对存储集群的共享存储池进行性能测试,直至测试结果达标,其中,达标时的测试结果为所述第一测试结果。
3.根据权利要求1所述的方法,其特征在于,对存储集群的共享存储池进行性能测试,得到第一测试结果,包括:
对所述存储集群的共享存储池进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写测试;
获取第一预设阈值随机读写的测试数据,以及获取第二预设阈值顺序读写的测试数据,
其中,所述第一测试结果包括第一预设阈值随机读写的测试数据以及第二预设阈值顺序读写的测试数据。
4.根据权利要求1所述的方法,其特征在于,所述对该台机器进行性能测试,得到第二测试结果,包括:
对该台机器中的每个待测硬盘进行预设时长的第一预设阈值随机读写测试以及第二预设阈值顺序读写操作;
获取每个待测硬盘第一预设阈值随机读写的测试数据,以及获取每个待测硬盘第二预设阈值顺序读写的测试数据;
基于该台机器中每个待测硬盘第一预设阈值随机读写的测试数据,得到该台机器的第一预设阈值随机读写的测试数据,以及基于该台机器中每个待测硬盘第二预设阈值顺序读写的测试数据,得到该台机器的第二预设阈值顺序读写的测试数据;
其中,所述第二测试结果包括该台机器的第一预设阈值随机读写的测试数据,以及第二预设阈值顺序读写的测试数据。
5.根据权利要求1所述的方法,其特征在于,所述对该台机器进行性能测试,得到第二测试结果,包括:
从预设多个测试参数中选择最小测试参数对该台机器进行性能测试,获取对应的测试结果;
若所述最小测试参数对应的测试结果不达标,从剩余的预设测试参数中再次选择最小测试参数对该台机器进行性能测试,直至测试结果达标,其中,达标时的测试结果为所述第二测试结果。
6.根据权利要求3或4所述的方法,其特征在于,所述随机读写的测试数据包括IOPS和网卡带宽,所述顺序读写的测试数据包括硬盘传输带宽和网卡带宽;基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,包括:
根据所述存储集群中的机器数量以及所述第一测试结果,得到所述第一测试结果平均到每台机器的第三测试结果;
根据每台机器各自的第二测试结果以及所述第三测试结果,得到所述第三测试结果与每台机器的第二测试结果之间的误差值,
其中,所述测试报告还包括所述共享存储池的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽,每台机器的第一预设阈值随机读写的IOPS和网卡带宽,以及第二预设阈值顺序读写的硬盘传输带宽和网卡带宽。
7.根据权利要求1所述的方法,其特征在于,在所述对存储集群的共享存储池进行性能测试之前,所述方法还包括:
在所述存储集群中的每台机器中自动部署ceph软件,搭建所述存储集群,并建立全局统一的所述共享存储池。
8.一种硬盘性能测试装置,其特征在于,包括:
第一测试模块,用于对存储集群的共享存储池进行性能测试,得到第一测试结果;
第二测试模块,用于针对所述存储集群中的每台机器,对该台机器进行性能测试,得到第二测试结果;
处理模块,用于基于所述第一测试结果,以及每台机器各自的第二测试结果,生成测试报告,所述测试报告包括所述第一测试结果平均到每台机器的第三测试结果与对应该台机器的第二测试结果之间的误差值。
9.一种电子设备,其特征在于,包括:
存储器和处理器,所述处理器与所述存储器连接;
所述存储器,用于存储程序;
所述处理器,用于调用存储于所述存储器中的程序,以执行如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器运行时,执行如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111434254.0A CN114090357A (zh) | 2021-11-29 | 2021-11-29 | 一种硬盘性能测试方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111434254.0A CN114090357A (zh) | 2021-11-29 | 2021-11-29 | 一种硬盘性能测试方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114090357A true CN114090357A (zh) | 2022-02-25 |
Family
ID=80305572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111434254.0A Pending CN114090357A (zh) | 2021-11-29 | 2021-11-29 | 一种硬盘性能测试方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114090357A (zh) |
-
2021
- 2021-11-29 CN CN202111434254.0A patent/CN114090357A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111651366B (zh) | Sdk测试方法、装置、设备及存储介质 | |
CN106487603B (zh) | 一种响应测试方法及装置 | |
CN111897724B (zh) | 一种适用于云平台的自动化测试方法及装置 | |
CN108984389B (zh) | 一种应用程序测试方法及终端设备 | |
CN109299015B (zh) | 一种软件测试方法、装置及系统 | |
CN110297767B (zh) | 测试用例自动执行方法、装置、设备及存储介质 | |
CN109739700B (zh) | 一种接口测试方法和装置 | |
CN111176918A (zh) | 一种服务器测试方法、系统、设备及计算机可读存储介质 | |
CN111124871A (zh) | 接口测试方法及装置 | |
CN105589928A (zh) | 用于分布式数据处理系统的模拟测试方法 | |
CN110688063A (zh) | 一种Raid的慢盘筛选方法、装置、设备及介质 | |
CN117076330B (zh) | 一种访存验证方法、系统、电子设备及可读存储介质 | |
CN112133357B (zh) | 一种eMMC的测试方法及装置 | |
CN112052070A (zh) | 应用容器化评估方法、装置、电子设备及存储介质 | |
CN114090357A (zh) | 一种硬盘性能测试方法、装置、电子设备及存储介质 | |
CN115914062A (zh) | 一种网卡测试方法、装置、电子设备、以及存储介质 | |
CN115562926A (zh) | 服务器压力测试方法、系统、装置及计算机可读存储介质 | |
CN115840686A (zh) | 一种服务器性能测试方法、装置、电子设备以及存储介质 | |
CN115733741A (zh) | 一种针对待测系统的异常场景测试方法和装置 | |
CN115017018A (zh) | 服务器的性能测试方法、设备和计算机可读存储介质 | |
CN110704300A (zh) | Tpc-ds自动化测试方法以及tpc-ds测试系统 | |
CN111597101A (zh) | Sdk接入状态检测方法、计算机设备及计算机可读存储介质 | |
US20090228241A1 (en) | System testing method through subsystem performance-based generator | |
US11645142B1 (en) | Use sequential set index for root cause location and problem verification | |
CN118210704A (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 |