
Intro
The reference to these commands is from Sébastien Han Blog Post "Ceph: validate that the RBD cache is active" and the rbd man Page. For more posts about Ceph, take a look at Sébastien Han Blog.
Requisite - RBD image for running the Benchmarks
To be able to run a rbd benchmark, you need to create an image. The command to create an image for this would be:
$ RBD_IMAGE_NAME="bench1"
$ rbd create --size=10G $RBD_IMAGE_NAME
rbd bench
Flags
Takes normal rbd command flags like:
-por--poolfor the rbd pool to use.
The following flags are for the benchmark configuration:
--io-typeif read or write IO should be run.--io-sizehow big every IO should be (in B/K/M/G/T).--io-threadshow many IOs are done in parallel.--io-totalhow much total IO should be done.--io-patternsequential or random IO pattern.
Benchmarks
Write Benchmark
For sequential write benchmark:
$ rbd -p replicapool bench $RBD_IMAGE_NAME --io-type write --io-size 8192 --io-threads 256 --io-total 10G --io-pattern seq
Read Benchmark
For sequential read benchmark:
$ rbd -p replicapool bench $RBD_IMAGE_NAME --io-type read --io-size 8192 --io-threads 256 --io-total 10G --io-pattern seq
Notes
- To use random IO instead of sequential IO pattern, change the
--io-patternflag value torand.
Have Fun!