I know a lot of people are going to be asking me about Red Hat's acquisition of Inktank, so I've decided to collect some thoughts on the subject. The very very simple version is that I'm delighted. Occasional sniping back and forth notwithstanding, I've always been a huge fan of Ceph and the people working on it. This is great news. More details in a bit, but first I have to take care of some administrivia.
Unlike everything else I have ever written here, this post has been submitted to my employer for approval prior to publication. I swear to you that it's still my own sincere thoughts, but I believe it's an ethical requirement for independent bloggers such as myself to be up front about any such entanglement no matter how slight the effect might have been. Now, on with the real content.
As readers and conference-goers beyond number can attest, I've always said that Ceph and GlusterFS are allies in a common fight against common rivals. First, we've both stood against proprietary storage appliances, including both traditional vendors and the latest crop of startups. A little less obviously, we've also both stood for Real File Systems. Both projects have continued to implement and promote the classic file system API even as other projects (some even with the gall to put "FS" in their names) implement various stripped-down APIs that don't preserve the property of working with every script and library and application of the last thirty years. Not having to rewrite applications, or import/export data between various special-purpose data stores, is a huge benefit to users.
Naturally, these two projects have a lot of similarities. In addition to the file system API, both have tried to address object and block APIs as well. Because of their slightly different architectures and user bases, however, they've approached those interfaces in slightly different ways. For example, GlusterFS is "files all the way down" whereas Ceph has separate bulk-data and metadata layers. GlusterFS distributes cluster management among all servers, while Ceph limits some of that to a dedicated "monitor" subset. Whether it's because of these technical differences or because of relationships or pure happenstance, the two projects have experienced different levels of traction in each of these markets. This has led to different lessons, and different ideas embedded in each project's code.
One of the nice things about joining forces is that we each gain even more freedom than before to borrow each other's ideas. Yes, they were both open source, so we could always do some of that, but it's not like we could have used one project's management console on top of the other's data path. GlusterFS using RADOS would have been unthinkable, as would Ceph using GFAPI. Now, all things are possible. In each area, we have the chance to take two sets of ideas and either converge on the better one or merge the two to come up with something even better than either was before. I don't know what the outcomes will be, or even what all of the pieces are that we'll be looking at, but I do know that there are some very smart people joining the team I'm on. Whenever that happens, all sorts of unpredictable good things tend to happen.
So, welcome to my new neighbors from the Ceph community. Come on in, make yourself comfortable by the fire, and let's have a good long chat.