一.测试目的
获取ceph文件系统的读写性能,并与原生磁盘进行比较
二.硬件及网络环境
1.硬盘信息
磁盘(型号,类型,容量) | CPU | |
客户端 | ST1000DM003-1CH162;SATA;1T | Intel(R) Core(TM) i3-4130 @CPU 3.40GHz |
OSD节点 | ST3300657SS;SAS;300G | Intel(R) Xeon(R) @CPU 2.13GHz |
MON节点 | ST3320620AS;SATA;320G | Intel(R) Pentium(R) D @CPU 3.00GHz |
2.网络环境
服务器及客户端同处于100兆网络
三.软件环境及测试工具
1.软件环境
操作系统 | |
客户端 | Ubuntu 12.04.4 LTS |
OSD节点 | Ubuntu 14.04 LTS |
MON节点 | Ubuntu 14.04 LTS |
2.测试工具 Iozone3_308
四.测试用例
(一)不同线程下
1.Ceph文件系统
使用下面命令测试在不同线程下ceph文件系统读取6G大文件的读写性能。
测试N线程下读取6G大文件时Ceph文件系统的读写性能。
线程数N | 对应的命令 |
1 | ./iozone -R -t 1 -F /cephfs-test/testdata -i 0 -i 1 -s 6g |
3 | ./iozone -R -t 3 -F /cephfs-test/tmp1 /cephfs-test/tmp2 /cephfs-test/tmp3 -i 0 -i 1 -s 6g |
5 | ./iozone -R -t 5 -F /cephfs-test/tmp1 /cephfs-test/tmp2 /cephfs-test/tmp3 /cephfs-test/tmp4 /cephfs-test/tmp5 -i 0 -i 1 -s 6g |
8 | ./iozone -R -t 8 -F /cephfs-test/tmp1 /cephfs-test/tmp2 /cephfs-test/tmp3 /cephfs-test/tmp4 /cephfs-test/tmp5 /cephfs-test/tmp6 /cephfs-test/tmp7 /cephfs-test/tmp8 -i 0 -i 1 -s 6g |
10 | ./iozone -R -t 10 -F /cephfs-test/tmp1 /cephfs-test/tmp2 /cephfs-test/tmp3 /cephfs-test/tmp4 /cephfs-test/tmp5 /cephfs-test/tmp6 /cephfs-test/tmp7 /cephfs-test/tmp8 /cephfs-test/tmp9 /cephfs-test/tmp10 -i 0 -i 1 -s 6g |
综合上面输出的结果汇总成一张如下的表格(单位是 kBytes/sec):
线程数 |
write |
rewrite |
read |
reread |
1 |
7154.46 |
7186.29 |
11352.72 |
11325.62 |
3 |
6857.9 |
6926.8 |
11392.98 |
11405.52 |
5 |
8163.09 |
8177.8 | 11342.68 |
11444.18 |
8 |
8172.62 |
8209.53 | 11481.44 |
11472.52 |
10 |
8133.91 |
8197.51 | 11389.92 | 11440.07 |
2.原生磁盘
测试多线程下读取6G大文件原生磁盘的读写性能。
线程数目N | 描述 |
1 | ./iozone -R -t 1 -F /testdata -i 0 -i 1 -s 6g |
3 | ./iozone -R -t 3 -F /tmp1 /tmp2 /tmp3 -i 0 -i 1 -s 6g |
5 | ./iozone -R -t 5 -F /tmp1 /tmp2 /tmp3 /tmp4 /tmp5 -i 0 -i 1 -s 6g |
8 | ./iozone -R -t 8 -F /tmp1 /tmp2 /tmp3 /tmp4 /tmp5 /tmp6 /tmp7 /tmp8 -i 0 -i 1 -s 6g |
10 | ./iozone -R -t 10 -F /tmp1 /tmp2 /tmp3 /tmp4 /tmp5 /tmp6 /tmp7 /tmp8 /tmp9 /tmp10 -i 0 -i 1 -s 6g |
总结上面的结果( 单位为 kBytes/sec):
线程数目 |
write |
rewrite |
read |
reread |
1 |
149164.94 |
160567.67 |
186078.03 |
163941.91 |
3 |
144475.71 |
133638.73 |
172043.45 |
167020.87 |
5 |
117251.25 |
117141.55 |
145746.82 |
143699.11 |
8 |
114206.11 |
128078.45 |
176531.57 |
176850.37 |
10 |
110812.11 |
110699.5 |
88225.4 |
111940.68 |
根据上面的数据,绘制出下面的折线图。
(二)不同文件大小下
1.Ceph文件系统
使用下表中对应的命令测试ceph文件系统,查看读取对应大小的文件时的读写性能。测试对应大小的文件,记录大小为4k,只测试read/reread和write/rewrite.
文件大小 | 描述 |
16M | ./iozone -R -s 16M -i 0 -i 1 -y 4k -q 4k -f /cephfs-test/testdata
|
256M | ./iozone -R -s 256M -i 0 -i 1 -y 4K -q 4k -f /cephfs-test/testdata |
2G | ./iozone -R -s 2G -i 0 -i 1 -y 4k -q 4k -f /cephfs-test/testdata |
4G | ./iozone -R -s 4G -i 0 -i 1 -y 4K -q 4k -f /cephfs-test/testdata |
6G | ./iozone -R -s 6G -i 0 -i 1 -y 4k -q 4k -f /cephfs-test/testdata |
综合上面的输出结果,得出下面的表格(记录块都为4K,单位为kBytes/sec) :
文件大小 |
write |
rewrite |
read |
reread |
16M |
287534 |
2650722 |
3884254 |
4284575 |
256M |
1448445 |
2587190 |
4332678 |
4165372 |
2G |
9484 |
9309 |
110929 |
65568 |
4G |
8578 |
8698 |
11402 |
11476 |
6G |
8473 |
8445 |
11402 |
11403 |
2.原生磁盘
使用下表中对应的命令测试原生磁盘,查看读取对应大小的文件时的读写性能。测试下表对应大小的文件,记录块为4k,使用对应的Iozone命令测试原生磁盘的读写性能。
文件大小 | 描述 |
16M | ./iozone -R -s 16m -i 0 -i 1 -y 4k -q 4k -f /cephfs-test/testdata
|
256M | ./iozone -R -s 256M -i 0 -i 1 -y 4K -q 4k -f /cephfs-test/testdata |
2G | ./iozone -R -s 2G -i 0 -i 1 -y 4k -q 4k -f /cephfs-test/testdata |
4G | ./iozone -R -s 4G -i 0 -i 1 -y 4K -q 4k -f /cephfs-test/testdata |
6G | ./iozone -R -s 6G -i 0 -i 1 -y 4k -q 4k -f /cephfs-test/testdata |
记录块都为4K,查看其读写性能。单位为kBytes/sec 。
文件大小 |
write |
rewrite |
read |
reread |
16M |
2038802 |
3586647 |
5570732 |
5741068 |
256M |
911576 |
3722894 |
5722932 |
5739962 |
2G |
98047 |
108312 |
5815922 |
5842511 |
4G |
88993 |
92779 | 173721 | 185914 |
6G |
90996 |
89835 |
174527 |
181623 |
根据上面的数据,绘制出下面的折线图。
五.测试结果
下面各图则是在指定条件下,使用柱形图,细至读写的不同方面对在ceph文件系统和原生磁盘的读写性能比较。
(一)不同线程
每个线程下读写6G大文件,查看在多个线程下ceph文件系统及原生磁盘之间读写性能的差异。下面各图是在同一前提下,实施的测试结果,分为4个图,分别是write、rewrite、read、reread在ceph文件系统和原生磁盘中的结果的比较。单位都是 kBytes/sec。
1.write
每个线程下读写6G大文件,查看在多个线程下ceph文件系统及原生磁盘之间write性能的差异。单位为KBytes/sec。
2.rewrite
每个线程下读写6G大文件,查看在多个线程下ceph文件系统及原生磁盘之间rewrite性能的差异。单位为KBytes/sec。
3.read
每个线程下读写6G大文件,查看在多个线程下ceph文件系统及原生磁盘之间read性能的差异。单位为KBytes/sec。
4.reread
每个线程下读写6G大文件,查看在多个线程下ceph文件系统及原生磁盘之间reread性能的差异。单位为KBytes/sec。
(二)不同文件大小
读写对应大小的文件,查看ceph文件系统及原生磁盘之间读写性能的差异。下面各图是在同一前提下,实施的测试结果,分为4个图,分别是write、rewrite、read、reread在ceph文件系统和原生磁盘中的结果的比较。单位为 kBytes/sec。
1.write
读写对应大小的文件,查看ceph文件系统及原生磁盘之间write差异。单位为 kBytes/sec。
2.rewrite
读写对应大小的文件,查看ceph文件系统及原生磁盘之间rewrite差异。单位为 kBytes/sec。
3.read
读写对应大小的文件,查看ceph文件系统及原生磁盘之间read差异。单位为 kBytes/sec。
4.reread
读写对应大小的文件,查看ceph文件系统及原生磁盘之间reread差异。 单位为 kBytes/sec 。