fio的rbd測试引擎能够非常方便的对rbd进行測试。以下示范怎样安装fio支持rbd引擎。
git clone git://git.kernel.dk/fio.git
$ cd fio
$ ./configure
[...]
Rados Block Device engine no
[...]
这里显示不支持RBD engine,configure检查编译环境缺少依赖导致的;我们仅仅须要安装ceph-devel包就可以:
yum install ceph-devel
安装好以后又一次编译:
$ git clone git://git.kernel.dk/fio.git
$ cd fio
$ ./configure
[...]
Rados Block Device engine yes
[...]
$make
确认支持RBD engine。
运行命令:
$./fio --enghelp
输出例如以下:
<span style="font-family: Arial, Helvetica, sans-serif;">Available IO engines:</span>
binject
sg
rbd
splice
e4defrag
falloc
posixaio
net
netsplice
null
sync
psync
vsync
pvsync
mmap
cpuio
以下演示样例怎样进行測试:
1、创建一个rbd image
rbd -p rbd create --size 20480 fio_test_image
2、编辑fio的測试文件examples/rbd.fio[global]
ioengine=rbd
clientname=admin
pool=rbd
rbdname=fio_test_image
invalidate=0 # mandatory
rw=randwrite
bs=4k
[rbd_iodepth32]
iodepth=32
3、进行測试./fio examples/rbd.fio