Did you know  45Drives offers free  public and private  webinars ?
Click here to learn more  & register!
Ceph Deployment Tools

Brett gives you an overview of the main tools that are available to deploy a Ceph storage cluster. He introduces Ceph deploy, Cephadm and Ansible, discusses why we love Ansible at 45Drives and gives an outlook on where he thinks the Ceph developers are going next with these tools.

Hey, everyone, Brett here for another Tuesday tech tip with 45Drives.

So, this week, I wanted to kind of address a question that keeps popping up, whether it's when we're talking to customers or just questions that come in on all the different ways we talk to you guys.

What are my options for tools to deploy a Ceph cluster? Do I have to use Ansible? Some people have concerns. I don't want to learn Ansible and Ceph at the same time, do I have choices?

So, what I want to do go through the lay of the land, all the options you have to deploy a Ceph cluster. Our favorite tool and why, and then I'll give you a little talk on what I've learned on where the devs are going with their deployment.

OK, so what's currently out there? How could I deploy a safe cluster? So, you've heard me talk about Ansible before. So that's one of let's say three kinds of main choices right now that come up a lot. So that's Ansible, a tool called Ceph Deploy and a very new tool called CephADM.

I'll start with Ceph deploy. Ceph deploy is a standard tool that's been with the been used for as long as I've been using Ceph. Great tool for getting the cluster up quickly so that you can focus on learning how stuff works rather than the tools used to deploy it. Pros: That is what I just said, it's simple to use. Cons are it is kind of hard to scale and use for a big system and for onward maintenance of it. And at the end of the day, they are this devs have EOL’d tool, it is depreciated and they've moved on to their newer tool of CephADM. Put a pin in that to all get back to that.

The next major tool. It gets used a lot: Ceph, Ansible. A series of playbooks that are used with Ansible, which is an automation framework to deploy staff clusters. We love Ceph Ansible here. This is our favorite. We love Ceph Ansible because of the automation framework of Ansible, what it provides. The flexibility and power.

If you dream it and need to deploy it, you can build it in Ansible. So, my point is there is it's great for little to huge Ceph deployments, from initial set up to ongoing maintenance over the years of that. We love Ceph Ansible. The only cons of that, there is a bit of a learning curve as you kind of need to know how to use the basics of Ansible to get it done.

But what I want to stress here is you don't need to know how to develop Ansible to use these playbooks. You just need to know the basic playbooks to run and what that means. Run this playbook and it'll deploy the basic of the cluster, run this playbook, which will deploy just the SAMBA gateways on the cluster we have taking the awesome tools that the Ceph developers have provided, the Ceph Ansible playbook tools. And we've kind of done some quality-of-life adjustments and tailored it to our solutions and how you can very quickly (or automatically is a word everyone likes to use) fill in a bunch of variables, so you can go run one command and deploy your cluster. We love Ceph Ansible currently. That is the tool that we will choose to deploy these clusters.

So three, the last major tool that I just talked about, CephADM. What is CephADM? Well CephADM is the successor to Ceph deploy. And it is a orchestrator, all in one package that just deploys your whole cluster and maintains it over time. And, It's simple to use.

So, you might be asked me right now, why are you still on Ceph Ansible if CephADM is kind of the other two combined? Well, it only deploys Ceph as containers.

which is really cool, but as most people know, there's containers and then there's just installing and bare metal where not everyone needs to use Ceph as containers. Anyway, that topic of bare metal Ceph versus container Ceph is out of the scope of this video. Actually, that's a great topic for another one. So I'm going to mark that down. You'll hear from me soon on that.

But CephADM only does containers. We don't necessarily only want to containers. We want to do both. So that's why we still love Ceph Ansible. And CephADM is kind of new. It is a little bit of a black box at times where you run the command and then you go, I don't know, is it is it doing it? But that's just learning of a new tool. You will see more development of that coming up. I'm really excited to see what they can do further with CephADM. But to wrap that whole kind of the word vomit out, we love to have Ceph Ansible here because of the flexibility and freedom it gives you with the playbook's authored by the Ceph team and then tailored to our systems by us. You do not have to worry about learning Ansible, too. You just have to learn how to run a few commands, which we help you through these videos, through our documentation or our support team.

There are two other methods that I just want to mention for completeness sake, you could always just install Ceph from source and do manually. That’d be a pain. You'd forget a lot of stuff. Maybe devs would want to do that, but even then, you would use Ansible or something like that.

And then the fourth way, if you wanted to deploy Ceph as containers on Kubernetes, there's a project called Rook. But again, that's really out of the scope of this discussion right now. So, yeah, I'll leave it at that.

OK, so with all that out of the way, I want to talk about where the devs are going to. From watching the interactions on the devs list, from seeing their releases of their plans over the next versions of Ceph, they've really highlighted that they've got an awesome product and we'll attest to that. Ceph works. It is solid. It is reliable. With the only caveat that anyone could ever throw at it, it's a little complex to set up and learn.

So, the devs have identified that made that one of their central themes of moving forward, of making stuff easier to consume, to get it out in everyone's hands. We completely agree with that. And we at 45Drives feel that that's part of our responsibility too, to help bridge the gaps to customers by using safe, full playbooks.

But what the devs are trying to do is they're taking the CephADM tool. And what they want to do is they want to couple their dashboard with their orchestrator tool, in this case, CephADM. So that you can just do the whole deploy of the cluster from the Ceph dashboard. That is their end goal. We are so supportive of that. I can't wait to see when we get all there.

But right now, as the functionality stands, that whole kind of set the whole thing up in one dashboard ecosystem only exists if you're containerizing Ceph. And that is only a subset of what someone would do with a Ceph cluster. Some people want to bare metal, so there's still work to be done on that. They'll have other orchestrator plug ins besides just CephADM. I believe there's plans for an ansible one. And but the idea is they want to make their product easier to use because we want everyone to use it.

So that's it. Those are the that's the lay of the land of the tools. I hope you enjoyed that. I hope you learn something. Do you have any questions at all? Let us know. I love to talk about this stuff. As you know, I seem to talk about Ceph a lot.

Discover how 45Drives can work for you.

Contact us to discuss your storage needs and to find out why the Storinator is right for your business.

Contact 45Drives