Category Archives: ceph

Celebrate Firefly and Icehouse

If you’re in Atlanta Sunday 11th, may 2014 evening, for the OpenStack summit or any other reason, join us to celebrate the OpenStack Icehouse release and the Ceph Firefly release. There will be both OpenStack and Ceph developers present and … Continue reading

Posted in ceph, openstack | Leave a comment

SSE optimization for erasure code in Ceph

The jerasure library is the default erasure code plugin of Ceph. The gf-complete companion library supports SSE optimizations at compile time, when the compiler provides them (-msse4.2 etc.). The jerasure (and gf-complete with it) plugin is compiled multiple times with … Continue reading

Posted in ceph | Leave a comment

Your first exabyte in a Ceph cluster

$ rbd create –size $((1024 * 1024 * 1024 * 1024)) tiny $ rbd info tiny rbd image ‘tiny’: size 1024 PB in 274877906944 objects order 22 (4096 kB objects) block_name_prefix: rb.0.1009.6b8b4567 format: 1 Note: rbd rm tiny will take … Continue reading

Posted in ceph | Leave a comment

The footprints of 192 Ceph developers

Gource is run on the Ceph git repository for each of the 192 developers who contributed to its development over the past six years. Their footprint is the last image of a video clip created from all the commits they … Continue reading

Posted in ceph, git, gource | Leave a comment

working with git submodules in Ceph

The gf-complete and jerasure libraries implement the erasure code functions used in Ceph. They were copied in Ceph in 2013 because there were no reference repositories at the time. The copy was removed from the Ceph repository and replaced by … Continue reading

Posted in ceph, git | Leave a comment

Benchmarking Ceph jerasure version 2 plugin

The Ceph erasure code plugin benchmark for jerasure version 1 are compared after an upgrade to jerasure version 2, using the same command, on the same hardware. Encoding: 5.2GB/s which is ~20% better than 4.2GB/s Decoding: no processing necessary (because … Continue reading

Posted in ceph | Leave a comment

Ceph erasure code : ready for alpha testing

The addition of erasure code in Ceph started in april 2013 and was discussed during the first Ceph Developer Summit. The implementation reached an important milestone a few days ago and it is now ready for alpha testing. For the … Continue reading

Posted in ceph | 2 Comments

How does a Ceph OSD handle a read message ? (in Firefly and up)

When an OSD handles an operation it is queued to a PG, it is added to the op_wq work queue ( or to the waiting_for_map list if the queue_op method of PG finds that it must wait for an OSDMap … Continue reading

Posted in Code path, ceph | 2 Comments

figuring out why ccache misses

When compiling Ceph, ccache may appear to miss more than expected, as shown by the cache miss line of ccache -s cache directory /home/loic/.ccache cache hit (direct) 1 cache hit (preprocessed) 0 cache miss 1 files in cache 3 cache … Continue reading

Posted in ccache, ceph | Leave a comment

Ceph paxos propose interval

When a command is sent to the Ceph monitor, such as ceph osd pool create, it will add a pool to the pending changes of the maps. The modification is stashed for paxos propose interval seconds before it is used … Continue reading

Posted in Code path, ceph | Leave a comment