DevStack plugin to configure Ceph backend.
Go to file
Victoria Martinez de la Cruz a97b1449cd Check that ceph-mon service has started to get its version
Add an extra check to verify that ceph-mon service has started
before trying to retrieve its version.

An already existing function is being used, wait_for_daemon

Since we now guarantee that we are using systemctl, we can use
the is-active feature. If the service is running, the exit code
will be 0.

Also, change the command used to get the mon version. We can use
the ceph version command provided by the new cli instead of using
ceph daemon command which requires more privileges.

Change-Id: I2d4f23721107c4b5cb1c09719c55424eecd0c880
Closes-Bug: #1872855
2020-04-23 23:07:51 +00:00
devstack Check that ceph-mon service has started to get its version 2020-04-23 23:07:51 +00:00
manila run IPv6 scenario tests with CephFS/NFS back end 2019-07-24 18:50:35 +00:00
.gitignore Initial commit 2015-11-27 19:43:03 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:40:27 +00:00
.zuul.yaml zuul: Switch devstack-plugin-ceph-tempest-py3 to voting 2020-03-13 14:08:07 +00:00
LICENSE Initial commit 2015-11-27 19:43:03 +00:00
README.md Update opendev repository 2019-04-23 17:52:51 +08:00
tempest_blacklist.txt Skip tempest.api.network tests 2019-04-24 10:11:20 -04:00
tox.ini Suppress bashate line length warnings 2016-05-28 05:40:23 -04:00

README.md

Team and repository tags

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=True in your localrc
  • 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.sh and 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

Bugs