This patch enables the plugin to setup ceph radosgw and configure it as a swift-compatible endpoint with keystone integration. ENABLE_CEPH_RGW is the new variable introduced, which is False by default, and can be set to True in localrc if radosgw needs to be setup. Fixed couple of other (related) things .... 1) Created rgw specific functions 2) Checking for radosgw & swift co-existence, erroring out early enough 3) Using `osd pool default size = 1` in ceph.conf, which set the replica size to 1 for all pools as the default NOTE: Tested on ubuntu trusty only TODOs ... 1) Not tested on Fedora (F22), radosgw startup has some issues there. Co-Authored-By: Deepak C Shetty <deepakcs@redhat.com> Change-Id: I21db4168eb69d107599f6b6ab1668b02b764b2c6
1.6 KiB
1.6 KiB
Devstack Ceph Plugin
Overview
Devstack plugin to configure Ceph as the storage backend for openstack services
As part of stack.sh:
- Installs Ceph (client and server) packages
- Creates a Ceph cluster for use with openstack services
- Configures Ceph as the storage backend for Cinder, Cinder Backup, Nova & Glance services
- (Optionally) Sets up & configures Rados gateway (aka rgw or radosgw) as a Swift endpoint with Keystone integration
- Set
ENABLE_CEPH_RGW=Truein yourlocalrc
- Set
- Supports Ceph cluster running local or remote to openstack services
As part of unstack.sh | clean.sh:
- Tears down the Ceph cluster and its related services
This plugin also gets used to configure Ceph as the storage backend for the upstream Ceph CI job named gate-tempest-dsvm-full-devstack-plugin-ceph
How to use
-
Enable the plugin in
localrc:enable_plugin devstack-plugin-ceph git://git.openstack.org/openstack/devstack-plugin-cephNote: Ceph can be disabled as the storage backend for a service with the following setting in the
localrcfile,ENABLE_CEPH_$SERVICE=Falsewhere $SERVICE can be CINDER, C_BAK, GLANCE, or NOVA corresponding to Cinder, Cinder Backup, Glance, and Nova services respectively.
-
Then run
stack.shand wait for the magic to happen :)
TODOs
- Configuring Rados Gateway with Keystone for Swift
- Add support for Ceph Infernalis release
- Add support for distro specific ceph repos