The cephfs-nfs job was turned off [1] for perma-failing. This commit adds the original non-voting job back into the check queue and fixes some installation issues: 1) use ceph "quincy" release: Ceph Pacific's end of life is 2023-06-01 [2]. The manila community thinks deployers are more likely to use quincy with the 2023.2 (bobcat) release of OpenStack. 2) run the job with centos-stream-9: There are no packages currently available for Jammy Jellyfish on download.ceph.com [3]. The OS shouldn't really matter for this CI job that is meant to test feature functionality provided by manila. At this time, we'd like to stick with builds provided by the ceph community instead of the distro since it may take a while to get bugfixes into distro builds. 3) The install script uses "nfs-ganesha" builds for ubuntu and centos hosted by the nfs-ganesha community [4]. We will not rely on the ceph community to provide the latest builds for nfs-ganesha any longer. This commit also cleans up the unnecessary condition in the ceph script file pertaining to configuring ceph packages for Jammy Jellyfish. This step wasn't doing anything. Ubuntu packages don't work at the moment and that requires some more investigation. [1] Id2ae61979505de5efb47ce90a2bac8aac2fc5484 [2] https://docs.ceph.com/en/latest/releases/ [3] https://www.spinics.net/lists/ceph-users/msg74312.html [4] https://download.nfs-ganesha.org/ Change-Id: I40dfecfbbe21b2f4b3e4efd903980b5b146c4202 Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
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 - 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-ceph
Run stack.sh in 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 resources
Change any of the above lines to False to 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=True
CephFS 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=cephfsnfs
Make sure that the manila plugin is enabled before
devstack-plugin-ceph in the local.conf file.
- 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
- 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