白话分布式存储测试(一)明确测试目标

以前工做中作了不少存储测试相关的事情,对存储测试有一些想法,最近想用几篇文章来介绍下分布式存储测试相关的一些内容,这部份内容对学习存储有很好的促进做用,欢迎你们关注~微信

  • 白话分布式存储测试(一)明确测试目标
  • 白话分布式存储测试(二)熟悉测试工具 【将发布在微信公众号】
  • 白话分布式存储测试(三)测试方法论 【将发布在微信公众号】
  • 白话分布式存储测试(四)测试结果分析 【将发布在微信公众号】
 
 

首先,咱们须要明确咱们为何要作测试,或者说明确咱们作测试的目标是什么?网络

从宏观上看,存储测试要考虑三个维度:多线程

 

 

分别从这三个维度展开一下分布式

1、测试工具

测试工具能够作什么?工具

测试工具提供了诸多参数选项,能够尽量逼真地模仿用户程序的IO模式。好比有用户告诉你他的程序会多线程随机写4K大小的数据块,他想知道他的程序跑在咱们的分布式存储上性能如何? 这时你能够拿用户程序去直接跑一下,或者你也能够用测试工具模拟下用户程序来预估性能,可是若是用户不少呢,若是用户程序没有那么易上手呢?势必费时费力。 因此,测试工具帮咱们应对了这个问题,咱们能够提早用测试工具跑出一些常见IO模式的存储性能报告,这样当用户咨询的时候,我直接根据性能报告来匹配用户程序的IO模式来进行预估。性能

一般,咱们作存储测试就是为了得到特定IO模式或者常见IO模式的性能数据。学习

存储测试时的IO模式通常要涵盖如下三个关注点:测试

关注点 解释
关注IO延时 不关心每秒能够完成多少次IO,而是关心单次IO从提到到返回结果最快能多快
关注IO吞吐 在能够接受的IO延时范围内,每秒最多能完成多少次IO
关注IO带宽 不关心每秒完成多少次IO,而是关心每秒能够读写多少MB的数据

测试工具调节IO模式的一些常见参数(以fio为例)有:
blocksize、numjobs、size、rw_pattern、ioengine、direct ...
经过调节这些参数,咱们就能够测试出不一样关注点的性能数据。线程

后面的文章将会介绍怎么经过调节这些参数来对不一样的关注点进行测试3d

2、集群客户端

视线抬高,咱们的关注点再也不是某个用户的应用程序,而是不少用户的应用程序。这时,咱们须要关注的是,一个集群客户端的性能瓶颈在哪。实际使用中,一个集群客户端能够承载多少用户应用程序的IO需求。未雨绸缪,提早规划好用户程序及集群客户端数。

3、存储集群

视线再抬高,关注点脱离单个集群客户端,这时,咱们须要关注的是,多少个客户端满负荷工做能打满存储集群,也就是须要测试出整个存储集群的IO能力

对于机械磁盘,集群的IO能力一般是能够经过底层磁盘的IO能力来进行估算的,这是由于机械磁盘性能低下,存储集群程序IO栈及网络延时的影响有限,集群IO能力变化不大。

对于非机械磁盘,其性能越好,存储集群程序IO栈及网络延时的影响会体现地愈加明显,这时测试存储集群IO能力也就更加有意义。

一样,未雨绸缪,有了存储集群IO能力的参考值,咱们能够提早规划集群客户端及用户应用程序。

4、后续

本文简单介绍了存储测试的几个常见目标,后续文章会详细介绍经常使用测试工具(fio、dd)的使用方式、存储测试方法论、测试结果分析等内容,欢迎关注 : )

专一笔者公众号,阅读更多干货文章:)

 

相关文章
相关标签/搜索