一.测试目的
获取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 。