nas存储性能测试报告

1 目的

用于测试4个服务器并发工作是nas带宽是否满足性能要求

 

2 环境说明

测试工具:iozone

测试客户端配置:虚拟机vcpu:4核(2.5Ghz)内存:4G虚拟网卡:1000M

 

Nas存储与测试客户端(4个转码服务器)中间的交换机带宽是1G。

所以被测试nas存储设备理想带宽值:125MB/s。

测试工具参数说明:

-a  Auto mode

-b Filename  Create Excel worksheet file

-c  Include close in the timing calculations

-F filenames  for each process/thread in throughput test

-g #  Set maximum file size (in Kbytes) for auto mode (or #m or #g)

-h  help

-i #  Test to run (0=write/rewrite, 1=read/re-read, 2=random-read/write

                 3=Read-backwards, 4=Re-write-record, 5=stride-read, 6=fwrite/re-fwrite

                 7=fread/Re-fread, 8=random_mix, 9=pwrite/Re-pwrite, 10=pread/Re-pread

                 11=pwritev/Re-pwritev, 12=preadv/Re-preadv)

-n #  Set minimum file size (in Kbytes) for auto mode (or #m or #g)

-r #  record size in Kb

              or -r #k .. size in Kb

              or -r #m .. size in Mb

              or -r #g .. size in Gb

-R  Generate Excel report

-s #  file size in Kb

              or -s #k .. size in Kb

              or -s #m .. size in Mb

              or -s #g .. size in Gb

-t #  Number of threads or processes to use in throughput test

-w  Do not unlink temporary file

-z  Used in conjunction with -a to test all possible record

 

 

 

3 测试用例说明

测试共分两部分

3.1第一部分:单机全局测试

通过该测试结果,获取并发测试参数。

测试命令:

./iozone -Razc -b z1.xls -q 1m -n 1m -g 8g -i 0 -i 1

命令说明:在所挂载nas存储目录执行上述命令,表示用iozone自动执行,测试文件大小从1m到8g,record size从4k到1m 执行读写。执行读写、重读重写测试。并将结果保存到z1.xls里面

 

3.2第二部分:4台客户端对本地nas存储进行并发测试。

 

3.2.1并发写:

通过securecrt录制脚本,同时登录4节点,执行登录脚本。

测试命令:

iozone -Rc -b /tmp/zresult`date +%N`.xls -t 1 -F /cmsSourceRepo/sgVideo/file`date +%N` -r 8k -s 8g -i0  -w

 

命令表示:对nas存储进行写和重写测试,并固定record size为8k,文件大小为8g 将结果保存到zresult`date +%N`.xls。测试文件/cmsSourceRepo/sgVideo/file`date +%N`测试完成后不删除

3.2.2并发读:

通过securecrt登录功能的ssh远程命令同时执行

测试命令

iozone -Rc -b /tmp/read1.xls -t 1 -F /cmsSourceRepo/sgVideo/file6 -r 8k -s 8g -i1 -w

上述为节点1的测试命令,其余节点类似具体参数,请见附件

命令表示:对nas存储进行读和重读吞吐率测试,并固定record size为8k,文件大小8g,每台服务器线程数为1,测试文件路径/cmsSourceRepo/sgVideo/file6。并将结果保存到/tmp/read1.xls。测试完成后保留测试文件。

 

4 测试结果

4.1第一部分

4.1.1测试结果图如下:

 

wKiom1e6ZC2BlR3jAAIn-F6ALSQ173.png

wKioL1e6ZDKjVIgmAAIXIrIUMic113.png

wKiom1e6ZDrDWoLhAAK-aZNSDS0421.png

wKioL1e6ZDuxfKIxAAJROIv5vt0678.png

wKioL1e6ZDyjuuWVAAJROIv5vt0928.png

 

 

 

 

 

4.1.2 结果分析

根据测试结果

写和重写测试io带宽在80-90MB/s之间

 

读和重读因为受到cpu缓存和内存缓存的影响,到测试文件大小大于4G后才是磁盘真正的性能。见测试结果图read report 和re-read report

所以磁盘的读和重读性能应该在114MB/s左右

 

备注:曲面图对应的详细参数值见附件z1.xls 总表

 

4.2 第二部分

根据第一部分的测试结果,得到测试文件8g左右比较合理因为此时读和重读测试不受cpu和内存的缓存影响,最接近真实值。

Record size的大小对测试结果影响较小,这里第二部分record size读写并发测试都取8k。

 

4.2.1 并发写

 

 

测试结果

测试项

节点1

节点2

节点3

节点4

Initial write

7929.07

7760.102

8489.572

8020.732

Rewrite

8161.139

8331.887

8279.222

8634.379

Output is in Kbytes/sec

 

结果分析:

每个节点写测试大概在8MB/s的io带宽,一共32MB/s,

备注:单机全局写测试大于80MB/s,理想并发读测试单节点应该在大于20MB/s,这里相差比较大。另外考虑到其他因素影响。用iozone多次测试,并发写测试都保持在单节点8MB左右。

 

4.2.2 并发读

测试结果

测试项

节点1

节点2

节点3

节点4

Read

31532.78

28762.88

28985.64

26236.4

Re-read

32634.79

36227.2

36123.18

39960.72

Output is in Kbytes/sec

 

结果分析:

每个节点读测试大概28.85MB/s 一共115MB/s

备注:单机全局读测试大概在114MB/s 。并发读测试总共带宽与单机全局测试结果比较吻合。