The dependent nova fix resolves the issue with rbd and shelve/unshelve testing in tempest. Re-enabling the test needs to be branch-specific since devstack-plugin-ceph is branch-less but the fixes in nova will be branch specific so we don't want to enable this on any nova branch that does not have the fix since it would break the job on those branches. Related-Bug: #1653953 Depends-On: https://review.opendev.org/457886/ Co-Authored-By: Matt Riedemann <mriedem.os@gmail.com> Change-Id: Ifbfc15033020c430a93574f2726b2279c9be130d
Team and repository tags
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, Manila (not by default), and 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
Usage
-
To get started quickly, just enable the plugin in your
local.conf:enable_plugin devstack-plugin-ceph https://opendev.org/openstack/devstack-plugin-cephRun
stack.shin your devstack tree and boom! You're good to go. -
Ceph is setup as the default storage backend for Cinder, Cinder Backup, Glance and Nova services. You have the ability to control each of the enabled services with the following configuration in your
local.conf:ENABLE_CEPH_CINDER=True # ceph backend for cinder ENABLE_CEPH_GLANCE=True # store images in ceph ENABLE_CEPH_C_BAK=True # backup volumes to ceph ENABLE_CEPH_NOVA=True # allow nova to use ceph resourcesChange any of the above lines to
Falseto disable that feature specifically. -
Ceph can be enabled as the storage backend for Manila with the following setting in your
local.conf:ENABLE_CEPH_MANILA=TrueCephFS Native driver that supports native Ceph protocol is used by default. To use CephFS NFS-Ganesha driver that supports NFS protocol add the setting:
MANILA_CEPH_DRIVER=cephfsnfsMake sure that the manila plugin is enabled before devstack-plugin-ceph in the
local.conffile. -
Then run
stack.shand wait for the magic to happen :)
Known Issues / Limitations
- Rados Gateway with Keystone for Swift - works on Ubuntu only
- Tempest test failures when using RGW as swift endpoint
- Tempest fails due to verify-tempest-config erroring out, when using RGW as swift endpoint
- Patch sent @ https://review.openstack.org/#/c/264179/
- Manila with CephFS - for Ubuntu, support only for Trusty Tahr (14.04 LTS) and beyond
TODOs
- Fix Rados Gateway with Keystone for Swift on Fedora