motivation
we have tested ceph s3 in openstack swift intensively before. We were interested in the behavior of the radosgw stack in ceph. We paid particular attention to the size and number of objects in relation to the resource consumption of the radosgw process. Effects on response latencies of radosgw were also important to us. To be able to plan the right sizing of the physical and virtual environments.
technical topics
From a technical point of view, we were interested in the behavior of radosgw in the following topics.
- dynamic bucket sharding
- http frontend difference between Civetweb and Beast
- index pool io pattern and latencies
- data pool io pattern and latencies with erasure-coded and replicated pools
- fast_read vs. standard read for workloads with large and small objects.
requirements
when choosing the right tool, it was important for us to be able to test both small and large ceph clusters with several thousand osds.
We want to use the test results as a file for evaluation as well as have a graphical representation as timeseries data.
For timeseries data we rely on the standard stack with Grafana, Prometheus and Thanos.
the main prometheus exporters we use are ceph-mgr-exporter and node-exporter.