Which deployment method for ceph (rook|ceph-ansible|tripleo)

Tom Barron tpb at dyncloud.net
Tue Nov 3 15:10:29 UTC 2020

On 01/11/20 08:55 +0100, Oliver Weinmann wrote:
>I'm still in the process of preparing a OpenStack POC. I'm 100% sure 
>that I want to use CEPH and so I purchased the book Mastering CEPH 2nd 
>edition. First of all, It's a really good book. It basically explains 
>the various methods how ceph can be deployed and also the components 
>that CEPH is build of. So I played around a lot with ceph-ansible and 
>rook in my virtualbox environment. I also started to play with tripleo 
>ceph deployment, although I haven't had the time yet to sucessfully 
>deploy a openstack cluster with CEPH. Now I'm wondering, which of 
>these 3 methods should I use?
>I also want to use CEPH for NFS and CIFS (Samba) as we have plenty of 
>VMs running under vSphere that currently consume storage from a ZFS 
>storage via CIFS and NFS. I don't know if rook can be used for this. I 
>have the feeling that it is purely meant to be used for kubernetes? 
>And If I would like to have CIFS and NFS maybe tripleo is not capable 
>of enabling these features in CEPH? So I would be left with 
>Any suggestions are very welcome.
>Best Regards,

If your core use case is OpenStack (OpenStack POC with CEPH) then of 
the three tools mentioned only tripleo will deploy OpenStack.  It can 
deploy a Ceph cluster for use by OpenStack as well, or you can deploy 
Ceph externally and it will "point" to it from OpenStack.  For an 
OpenStack POC (and maybe for production too) I'd just have TripleO 
deploy the Ceph cluster as well.  TripleO will use a Ceph deployment 
tool -- today, ceph-ansible; in the future, cephadm -- to do the 
actual Ceph cluster deployment but it figures out how to run the Ceph 
deployment for you.

I don't think any of these tools will install a Samba/CIFs gateway to 
CephFS.  It's reportedly on the road map for the new cephadm tool. 
You may be able to manually retrofit it to your Ceph cluster by 
consulting upstream guidance such as [1].

NFS shares provisioned in OpenStack (Manila file service) *could* be 
shared out-of-cloud to VSphere VMs if networking is set up to make 
them accessible but the shares would remain OpenStack managed.  To use 
the same Ceph cluster for OpenStack and vSphere but have separate 
storage pools behind them, and independent management, you'd need to 
deploy the Ceph cluster independently of OpenStack and vSphere. 
TripleO could "point" to this cluster as mentioned previously.

I agree with your assessment that rook is intended to provide PVs for 
Kubernetes consumers.  You didn't mention Kubernetes as a use case, 
but as John Fulton has mentioned it is possible to use rook on 
Kubernetes in a mode where it "points" to an external ceph cluster 
rather than provisioning its own as well.  Or if you run k8s clusters 
on OpenStack, they can just consume the OpenStack storage, which will 
be Ceph storage when that is used to back OpenStack Cinder and Manila.

-- Tom Barron


More information about the openstack-discuss mailing list