summaryrefslogtreecommitdiff
path: root/README.md
blob: 9c40cde9cc87a4adabd755a988daeb233e9f7d79 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
Team and repository tags
========================

[![Team and repository tags](https://governance.openstack.org/tc/badges/devstack-plugin-ceph.svg)](https://governance.openstack.org/tc/reference/tags/index.html)

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 git://git.openstack.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
  * Patch sent @ https://review.openstack.org/#/c/264179/
* Manila with CephFS - for Ubuntu, support only for trusty and xenial

# TODOs

* Fix Rados Gateway with Keystone for Swift on Fedora

# Bugs

* https://bugs.launchpad.net/devstack-plugin-ceph