CephNotes

Some notes about Ceph
Laurent Barbe @Adelius / INRAE

Get OMAP key/value size

List the total size of all keys for each object on a pool.

object        size_keys(kB)  size_values(kB)  total(kB)  nr_keys  nr_values
meta.log.44   0              1                1          0        10
data_log.78   0              56419            56419      0        406841
meta.log.36   0              1                1          0        10
data_log.71   0              56758            56758 …

The kernel 4.1 is out

This kernel version support all features for Hammer, in particular straw v2.

https://www.kernel.org/

The main changes in this version:

rbd: rbd_wq comment is obsolete
libceph: announce support for straw2 buckets
crush: straw2 bucket type with an efficient 64-bit crush_ln()
crush: ensuring at most num-rep osds …

Add support of curl_multi_wait for RadosGW on Debian Wheezy

WARNING: libcurl doesn't support curl_multi_wait()
WARNING: cross zone / region transfer performance may be affected

If you have already been confronted to this error at startup of RadosGW, the problem is the version of libcurl used. To enable support of curl_multi_wait, you will need to compile radosgw with libcurl >= 7 …

Intel 520 SSD journal

A quick check of my Intel 520 SSD that running since 2 years on a small cluster.

smartctl -a /dev/sda
=== START OF INFORMATION SECTION ===
Model Family:     Intel 520 Series SSDs
Device Model:     INTEL SSDSC2CW060A3
Serial Number:    CVCV305200NB060AGN
LU WWN Device Id: 5 001517 8f36af9db
Firmware Version: 400i …

RadosGW big index

$ rados -p .default.rgw.buckets.index listomapkeys .dir.default.1970130.1 | wc -l
166768275

With each key containing between 100 and 250 bytes, this make a very big object for rados (several GB)... Especially when migrating it from an OSD to another (this will lock all writes), moreover, the OSD …