Member-only story
Ceph Benchmark Tools: Part I
In this article we will take a look at one of benchmark tools provided by Ceph package: rados bench.
On a Ceph cluster side, we first create a pool for benchmarking. We choose the name of this pool to be bench.
sudo ceph osd pool create bench
On a client node side, we first install ceph-common package.
sudo apt install -y ceph-common
For a client node to connect a Ceph cluster, we need to ceph.conf and credentials. In this tutorial, we will use the Ceph admin credentials located at /etc/ceph/ceph.client.admin.keyring on a Ceph bootstrap node. For ceph configuration file, you can find /etc/ceph/ceph.conf on the bootstrap node. The ceph configuration can be generated using this command as well.
sudo ceph config generate-minimal-conf
Now, we are ready to run rados bench. The following is a syntax of the bench commands.
sudo rados bench [duration] [I/O mode] [options]
# duration is in seconds.
# I/O mode is one of write/seq/rand
# interested options:
# * -p [pool name]
# * --no-cleanup
# * --run-name [name]
# * -b [block size]
# * -t [concurrent_operations]
Steps for Running Benchmarks
- Run with write mode without cleanup
- Run with read (seq/rand) mode. This will use the data generated in the previous step
- Clean up the benchmark data in the first step