您的位置:首页 > 其它

ceph存储 ceph集群测试工具mdtest

2014-12-18 08:42 489 查看
mdtest是一款针对服务器元数据处理能力的基准测试工具,可以用来模拟对文件或目录的open/stat/close操作,然后返回报告。它支持MPI,可以用来协调大量客户端对服务器发起请求。

下载地址:http://sourceforge.net/projects/mdtest/ 

 

在论文:<Metadata Performance Optimization in Distributed File System> 中, 海量并行存储系统Cappella的性能分析就用到了mdtest测试工具.

绘制表格如下:

 





使用方法: mdtest [-b #] [-B] [-c] [-C] [-d testdir] [-D] [-f first] [-F] [-h]

               [-i iterations] [-I #] [-l last] [-L] [-n #] [-N #] [-p seconds] 

               [-r] [-R[#]] [-s #] [-S] [-t] [-T] [-u] [-v] [-V #] [-w #] [-y]

               [-z #]

               

-b: 目录树的分支参数 ;

-B: 不同的阶段没有隔离 (create/stat/remove);

-c: 共同创建: task 0 完成所有的创建和删除工作;

-C: 只创建文件或目录,不作删除;

-d: 指出测试运行的目录(若不指定,则默认当前目录);

-D: 只对目录操作进行测试(不包括文件);

-f: 首先运行的任务号;

-F: 只创建文件,没有目录;

-h: 输出帮助信息;

-i: 测试迭代循环次数;

-I: 每个树节点包含的项目;

-l: 最后运行的任务号;

-L: 只在目录树的“叶子”层创建文件/目录;

-n: 每个任务需要再每棵树中create/stat/remove的文件/目录数;

-N: 遍历时指定和相邻任务的跨度;

-p: 每次迭代之间延时(以秒计算);

-r: 删除文件/目录

-R: 随机遍历文件/目录 ;

-s: 每次测试的任务数的跨度

-S: 共享文件访问(只针对文件操作);

-t: 记录特定目录的时间开销

-T: only stat files/dirs;

-u: 为每个任务指定工作目录;

-v: verbosity (each instance of option increments by one)

-V: verbosity value

-w: 写到每个文件的字节数;

-y: 再写执行完后同步文件到磁盘;

-z: 目录树的深度; 

注意事项

 * -N 允许"read-your-neighbor" 方法

 * -d 可以指定多个测试路径,'-d fullpath1@fullpath2@fullpath3'

 * -B 允许每个任务对自己进行计时;

 * -n and -I 不能同时使用,因为指定了每个树节点的文件/目录数量,而-I指定的是整棵树的文件/目录数量。

 * -R and -T 能够同时使用。-R仅仅说明如果文件/目录被遍历则,则它们是被随机遍历的。

 

 

应用举例:          

 

     


 在这个例子中目录树的深度为1(z=2,),每个节点的分支为3(b=3)

  可以用如下命令来实现上述例子:

       mdtest -z 2 -b 3 -I 10 -C -i 3 //

 

测试结束之后会在终端输出类似如下结果:

SUMMARY: (of 3 iterations)

   Operation            Max        Min       Mean    Std Dev

   ---------               ---          ---        ----      -------

   Directory creation:   1870.549    900.197   1328.337    287.486

   Directory stat    : 256277.875 144661.102 225529.410  30421.063

   Directory removal :    266.235    170.675    218.820     29.863

   File creation     :    888.288    398.944    617.266    152.324

   File stat         : 250191.822 221520.964 231919.579   9853.955

   File removal      :   2080.262    527.109   1177.666    580.771

   Tree creation     :   2624.508   2145.385   2549.133    135.936

   Tree removal      :     29.414      4.421     11.377      9.407

 

 

其中Std Dev表示标准差

 

并行处理:关于MPI我也不是很懂,只知道这个工具支持MPI。如果测试环境有部署MPI,可以使用MPI来协调多个客户端向服务器发起测试请求。

例如:

     mpiexec -n 2 ./mdtest -z 4 -b 5 -I 5 -i 3 -u -d /mnt/ceph/test1@/mnt/ceph/test2

 

这个测试用例就表示调用两个节点来共同完成两个测试任务,并在执行这条命令节点返回的测试结果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: