 Hello, how's everybody doing today? Nice afternoon, have a nice lunch, good sessions, full of energy, ready to go. I'm Ross Turd from Ink Tank, and I'm here to talk about Ceph today. How many have heard of Ceph? How many have deployed Ceph? A few, a handful, OK. Great. Well, we don't have to start with this, but I am anyway. We have to have an agreement about this. There's way too much data, and it's not going anywhere. And no matter who you ask for the stats, no matter who you ask for their projection of how much data we're going to have, everybody says we're going to have way more than we can handle. So this particular study, which came from an IDC report, says that by 2020, over 15 zettabytes of data will be stored, and 1.5 are stored today. I don't even know what a zettabyte is. It's like too many past what I understand and what I can remember. There's a lot of data. The interesting thing about this is that there's an inflection point coming, at some point in the future. I don't know whether you've hit it already, or whether you're going to hit it next year, or three years from now, but there's a point coming in the future where the data that you have to store on this red line is going to exceed the traditional growth of your business and your storage budget, which is the blue line. And that inflection point is essentially when we can no longer afford to pay for all the data that we want to store, which is generally pictures of our cats and what food we ate last night and a bunch of stuff that we're generating now. So we have a problem coming up, especially as it relates to traditional storage solutions that don't scale as well as they need to. And the solution is going from what traditionally has been a scale up type of approach to a scale out approach. And I like this because if a big shark comes along and takes a big chunk out of your whale, you have a dead whale, but if a shark comes and eats a third of your school of fish, you still have a school of fish. And the same thing happens with distributed storage systems is that you've taken this workload that has traditionally been difficult to scale up and you're making it something that can scale up. And at Ink Tank, we do this with Ceph, which as we saw a lot of us have heard of. So Ceph is a unified storage platform. And when we say unified, we mean that it's object block and file system storage in the same platform. So on the object side, we have S3 and Swift API compatibility. We have support for multi-tenant environments, integration with Keystone for those who are deploying alongside OpenStack. We're slowly working on a phased approach to geo-replication on the object side. The community's slowly building that. And there's a native API as well that's extremely rich and goes beyond what you can normally do with objects in an object store. On the block side, the virtual block device that Ceph exposes provides support for snapshots and cloning. It's integrated very nicely into OpenStack with integrations into Cinder, Glantz and Nova through the hypervisor. It's got default Linux kernel modules that are mainline Linux kernel modules. And it's got some community technology around it to allow you to re-expose the virtual block devices as I SCSI, Glantz. And then on the file system side, although that's a little bit further into the future, the file system is support for project semantics on top of Ceph. Again, modules are in the Linux kernel. There's community work to re-export this file system using SIFs and NFS through Samba or Ganesha. And it's got auto-balancing and snapshot capabilities, although the file system's not quite ready for production use yet. Looking at it architecturally, on the bottom here, the storage cluster section, you end up having a collection of monitors. And these monitors are responsible for maintaining the cluster map, understanding who's in and who's out, which hosts are up and which hosts are down, and generally orchestrating the cluster. And then these object storage demons are part of the data path. They provide access to the underlying disks. So this is the storage cluster. On top of the storage cluster are the three interfaces, the object block and file system interfaces. So important to understand that Ceph is fundamentally an object store that has built block and file system interfaces above it in addition to a REST interface. On top of that, through these interfaces, you can access a bunch of stuff. There, it speaks S3 and Swift out of the top. It can integrate with hosts and hypervisors through Libvert and other integration mechanisms, iSCSI through some community work in SIFS NFS, and also the native Ceph SDK. So this is Ceph, but everybody raised their hands, so we already know what Ceph is. Ceph's integration with OpenStack is pretty complete on the object side. We integrate with Keystone for management. We speak to Swift API out of the Rados gateway. On the block device side, again, integrations with Cinder, Glantz, and Nova through the hypervisor. So it's a pretty complete integration. Ceph has also got a really strong community that's growing. This is IRC mailing listing. Commits looks so meager there, but it actually, that's a matter of scale. But we have a very strong and growing community. So this is Ceph. At Ink Tank, this last week, we just announced Ink Tank Ceph Enterprise, which is a product that we are offering, and I'm gonna demo if the demo gods are good to me, to help enterprises adopt Ceph. And what's inside basically are these four components. Ceph Object and Ceph Block, which is the Ceph we're all used to and we all know. Calamari, which is a new visual manager. Enterprise plugins, which we're working on. And some support services, which help you get from experts at Ink Tank. But we'll start with Ceph Object and Block. The Ceph that we ship in Ink Tank Ceph Enterprise is the 100% open source version of Ceph. It's not a fork. We're not adding extra smarts to Ceph that no one gets. It's just open source Ceph, but we've chosen a version that we believe is the most stable version that Ink Tank is willing to provide long-term support for. And we've production hardened that version. So this is just standard everyday open source Ceph that Ink Tank is willing to stand behind. On top of that is Calamari, which is a on-premise application. It's a dashboard that allows you to do some monitoring and diagnostics of your Ceph cluster. Today it's monitoring and diagnostics. Tomorrow it's configuration deployment, tuning. Today monitoring and diagnostics. This has got the capability of rolling continuous upgrades and it's sort of a single dashboard to look at everything that Ceph is doing. We are beginning to work on enterprise plugins for proprietary enterprise ecosystems. If you're running a VMware stack or if you're running a Microsoft virtualization stack, we're working on making Ceph work with that. That will be part of Ink Tank Ceph Enterprise. This is external to Corsef. This is not something that's part of Corsef or that the community is interested in, just integration with proprietary ecosystems. And then on top of that, Ink Tank Ceph Enterprise is the technical support, bug escalation, hot patches and that sort of stuff that you always get from having a support contract with Ink Tank. I have screenshots so I'm gonna skip past because I think I'm gonna try to do a live demo. Is that up there? Hey, cool. So this is the login page for Calamari. This is a cluster that's actually running in California. So, ah, here we go, there's my data. So this, what I'm looking at now is the dashboard. The dashboard is a single view of what's going on inside the Ceph cluster. In the upper left-hand corner, you can see this cluster has an error and I was speaking to Sage, the creator of Ceph earlier and he was saying, oh, we should fix that problem. I'm like, no, no, no, no, keep it broken. It makes the dashboard look nice. So we have a cluster that's not in the clean state right now. The status on the top, you can see we have five monitors and they're all doing fine, but out of our, we have 35 OSDs and 33 of them are up and two of them are down. So we have a cluster that is experiencing an outage. Of our 6,134 placement groups, three are in warn mode and seven are in critical. We can sort of explore a little bit of that later and we're using 33% of our cluster and you can see underneath all of our OSDs. Now the OSDs again are software agents. These are software agents that give access to underlying storage resources. Of these OSDs, 19 and 30 are not working. So let's go over to the workbench, see what's going on here. The workbench is where you can dig a little bit deeper, sort, filter, get more information on what's going on in the cluster. So right now I'm sorting by OSD. I'm gonna sort by host. See what we have here is OSDs zero through six are on one host, seven through 13 are on another. You can tell by the different colors. So this actually allows you to see which OSDs are on which physical hosts and get a view of the infrastructure of your cluster. And right now we have 33 that are up or in. You can see those are the ones that are up and in. And we have two that are down. These here, 30 and 19. If I click on it, I can see it's OSD 30, status is down. I've got information about the public IP and the UID and the host name so that I can figure out what's going on with that and dig in a little bit. But I'd actually like to look at placement groups instead of OSDs for example. So I can filter by placement groups instead and see that, figure out which OSDs have inconsistent placement groups for example. And it would be these. So it's a quick way of figuring out which hosts are having trouble, which placement groups are clean and which ones need to actually recover a little bit better. And a great way to visualize a stuff cluster. On the third tab, we have graphs that show generic performance information from the cluster. Right now it's showing CPU load across the entire cluster. But I'll pick one host and show that we can, you can drill in a little bit into other analytics. And this is coming from a, it's coming from a diamond agents running on each OSD and these graphs come from graphite. So this is the Ceph Calamari dashboard. I'm gonna continue back in here. And yay, the demo gods were good. I don't have to have these as a backup, that's nice. So to compare the features, an important thing I'd point out about what Ink Tank is doing with Ink Tank Ceph Enterprise versus the Ceph open source project. One thing that's missing is Ink Tank Ceph Enterprise does not yet support the file system because we don't believe that it's production ready. But in addition we have the management GUI and all the features you get from being an Ink Tank customer. A bit about the roadmap before I conclude. And I'm a bit early, so that's good. In Q1 2014, we're hoping to deliver object quotas. We're also hoping to deliver ISCAs, he has part of Ink Tank Ceph Enterprise and GUI based management. Instead of just monitoring and diagnostics actual management to the stuff cluster as port for SNMP. In Q2, we're looking at tiering. This is actually a Ceph feature, a Ceph project feature. A lot of these features come from the Ceph project, some are Ink Tank, most are the Ceph project. Eraser coding is also coming in Q2. GUI based deployment, something else that we'll do in Calamari, the next version is, so first monitoring diagnostics, then management, then deployment. Q3, we're looking at a production ready Ceph FS, role based access control for the GUI so that you can have different members of your team do different things. Support for Call Home for enterprise customers who want it and integration with vSphere. So that's what's on our roadmap. And with that, I'll conclude it. Do we have any questions? Wow, cool. Well, thank you very much.