Last week a couple of the Inktank crew joined Dell, and nearly 5,000 other people, at the World Hosting Days event in Rust, Germany. Nestled in the sleepy streets of an off-season Europa Park, this conference had it all. From tech geeks and business experts to roller coasters and a mechanical bull (don’t believe me, just check out the pictures on the WHD site linked above!). It wasn’t all fun and games, however. We learned a lot about what a large segment of our user population is interested in with respect to cloud storage, and a number of great projects being worked on in the Ceph community. Read on for details.

Inktank's Nigel Thomas foreground in 360 degree shot from WHD hosting fair.
read more…
- Posted by rturk
- March 26th, 2013
Today the Apache Software Foundation announced that Apache CloudStack has graduated from the Apache Incubator and become a Top Level Project.

New Apache projects start in the Incubator, where they work to build a strong, multi-firm community and adopt the governance practices and philosophies common to all Apache projects. Anyone familiar with Apache knows that this is no small feat; while the end result is worth the struggle, adopting the Apache Way can be a long road.
We salute the Apache CloudStack project for this accomplishment, and we look forward to building amazing things together in the years to come. On behalf of the entire Ceph team, congratulations!
- Posted by sage
- March 25th, 2013
There have been several important fixes that we’ve backported to bobtail that users are hitting in the wild. Most notably, there was a problem with pool names with – and _ that OpenStack users were hitting, and memory usage by ceph-osd and other daemons due to the trimming of in-memory logs. This and more is fixed in v0.56.4. We recommend that all bobtail users upgrade.
Notable changes include:
- mon: fix bug in bringup with IPv6
- reduce default memory utilization by internal logging (all daemons)
- rgw: fix for bucket removal
- rgw: reopen logs after log rotation
- rgw: fix multipat upload listing
- rgw: don’t copy object when copied onto self
- osd: fix caps parsing for pools with – or _
- osd: allow pg log trimming when degraded, scrubbing, recoverying (reducing memory consumption)
- osd: fix potential deadlock when ‘journal aio = true’
- osd: various fixes for collection creation/removal, rename, temp collections
- osd: various fixes for PG split
- osd: deep-scrub omap key/value data
- osd: fix rare bug in journal replay
- osd: misc fixes for snapshot tracking
- osd: fix leak in recovery reservations on pool deletion
- osd: fix bug in connection management
- osd: fix for op ordering when rebalancing
- ceph-fuse: report file system size with correct units
- mds: get and set directory layout policies via virtual xattrs
- mkcephfs, init-ceph: close potential security issues with predictable filenames
read more…
- Posted by sage
- March 21st, 2013
Another sprint and another release! This one is delayed a day or two due to power issues in our data center. The most exciting bit here is a big refactor in the monitor that has finally landed (thanks go to Joao Luis), but there is lots of other good stuff to go around:
- mon: rearchitected to utilize single instance of paxos and a key/value store (Joao Luis)
- mon: new ‘ceph df [detail]‘ command
- osd: support for improved hashing of PGs across OSDs via HASHPSPOOL pool flag and feature
- osd: refactored watch/notify infrastructure (fixes protocol, removes many bugs) (Sam Just)
- osd, librados: ability to list watchers (David Zafman)
- osd, librados: new listsnaps command (David Zafman)
- osd: trim log more aggressively, avoid appearance of leak memory
- osd: misc split fixes (Sam Just)
- osd: a few journaling bug fixes (Sam Just)
- osd: connection handling bug fixes
- rbd: avoid FIEMAP when importing from file (it can be buggy) (Josh Durgin)
- librados: fix linger bugs (Josh Durgin)
- librbd: fixed flatten deadlock (Josh Durgin)
- rgw: fixed >4MB range requests (Jan Harkes)
- rgw: fix log rotation
- mds: allow xattrs on root
- ceph-fuse: fix statfs(2) reporting
- msgr: optionally tune TCP buffer size to avoid throughput collapse (Jim Schutt)
- consume less memory for logging by default
- always use system leveldb (Gary Lowell)
read more…
- Posted by dmick
- March 21st, 2013
tgt, the Linux SCSI target framework (well, one of them) is an iSCSI target implementation whose goals include implementing a large portion of the SCSI emulation code in userland. tgt can provide iSCSI over Ethernet or iSER (iSCSI extensions for RDMA) over Infiniband. It can emulate various SCSI target types (really
“command sets”):
- SBC (normal “disk” type devices)
- SMC (“jukebox” media changer)
- MMC (CD/DVD drive)
- SSC (tape device)
- OSD (the ‘object storage device’)
It can use either a raw block device or a file as backing storage for any of these device types.
read more…
If you watch the mailing lists closely you will already have seen the new “Office Hours” announcement that went out yesterday. We are very excited about the opportunities this provides our larger community for getting directly involved. While Inktank may be the first, we’re hoping that many other organizations will help to “man the rails” in order to answer Ceph questions at times convenient to all parts of the world! Read on for Ross Turk’s unveiling of the program:
read more…
Since its inception, Ceph has always had a fast-paced rolling release tempo. However, with the amount of adoption that Ceph has had over the last year (including continued integration work with several other open source projects), we wanted to move to a more reliable, and predictable, release schedule.
The release schedule can be divided into four different flavors: point releases, development (interim) releases, stable releases, and long term support (LTS) releases. You can expect these releases to appears on the following periodic schedule:
read more…
- Posted by joao
- March 7th, 2013
Back in May 2012, after numerous hours confined to a couple of planes since departing Lisbon, I arrived at Los Angeles to meet most of the folks from Inktank. During my stay I had the chance to meet everybody on the team, attend the company’s launch party and start a major and well deserved rework of some key aspects of the Ceph Monitor. These changes were merged into Ceph for v0.58.
Before getting into details on the changes, let me give some background on how the Monitor works.
read more…
There have been a lot of questions lately about the current status of the Ceph MDS and when to expect a stable release. Inktank has been having some internal discussions around CephFS release development, and I’d like to share them with you and ask for feedback!
A couple quick notes: first, this blog post is from the perspective of Inktank’s development. We aren’t the only ones generating metadata server (MDS) patches, and other parties might make contributions with different priorities! Second, this is a discussion about MDS development — look for a blog about what the MDS does and how it works coming soon!
read more…
- Posted by sage
- March 5th, 2013
It’s been two weeks and v0.58 is baked. Notable changes since v0.57 include:
- mon: rearchitected to utilize single instance of paxos and a key/value store (Joao Luis)
- librbd: fixed some locking issues with flatten (Josh Durgin)
- rbd: udevadm settle on map/unmap to avoid various races (Dan Mick)
- osd: move pg info, log into leveldb (== better performance) (David Zafman)
- osd: fix pg log trimming (avoids memory bloat on degraded clusters)
- osd: fixed bug in journal checksums (Sam Just)
- osd: verify snap collections on startup (Sam Just)
- ceph-disk-prepare/activate: support for dm-crypt (Alexandre Marangone)
- ceph-disk-prepare/activate: support for sysvinit, directories or partitions (not full disks)
- msgr: fixed race in connection reset
- msgr: fix comparison of IPv6 addresses (fixes monitor bringup via ceph-deploy, chef)
- radosgw: fix object copy onto self (Yehuda Sadeh)
- radosgw: ACL grants in headers (Caleb Miles)
- radosgw: ability to listen to fastcgi via a port (Guilhem Lettron)
- mds: new encoding for all data types (to allow forward/backward compatbility) (Greg Farnum)
- mds: fast failover between MDSs (enforce unique mds names)
- crush: ability to create, remove rules via CLI
- many many cleanups (Danny Al-Gaaf)
- buffer unit testing (Loic Dachary)
- fixed log rotation (Gary Lowell)
read more…