Connect to multiple external Ceph Clusters

Registered by Keith Schincke

Extend the work of connecting to a single external ceph cluster to support connecting to multiple external ceph clusters.
Each cluster will have a ceph.conf and client keyrings.

(1) details how to integrate glance/cinder/nova with Ceph. This work is already in Openstack. TripleO has support for automatic configuration.
(2) details manual steps to configure cinder for multiple Ceph/RBD backends.
(3) details manual steps to connect nova to multiple Ceph/RBD backends
(4) Details Cinder's multi-backend support.

Work needs to be done to:
- determine if Cinder/Nova is written to support multiple external ceph backends. There could be design issues where one ceph backend provider is assumed.
- document needed configuration process to connect Cinder/Nova to multiple external ceph backends.
- develop tripleo code necessary not deploy the documented configuration.
- develop deployment documentation to enable automated deployment of the configuration

Current solution is a define of each backend used and concatenated. This results in glance
supporting one each of http, file, swift and rgw with related parameters modified. Cinder supports
one each of lvm, iscsi, rgw, eqlx, dellsc, netapp and nfs with related parameters defined.

The proposed solution would support multiple instances of each backend type. This is achieved
by defining a hiera array with an array for the settings of each deployed backend type.

Example:
glance_storee:
  'lvm_store':
     'lvm_store_option_1': 'lvm_store_value_1'
     'lvm_store_option_2': 'lvm_store_value_2'
  'swift_store_1':
    'swift_store_1_option_1': 'swift_store_1_value_1'
  'swift_store_2':
    'swift_store_2_option_1': 'swift_store_2_value_1'

1: http://docs.ceph.com/docs/master/rbd/rbd-openstack/
2: http://www.sebastien-han.fr/blog/2013/04/25/ceph-and-cinder-multi-backend/
3: http://ceph.com/planet/openstack-nova-configure-multiple-ceph-backends-on-one-hypervisor/
4: https://wiki.openstack.org/wiki/Cinder-multi-backend

Blueprint information

Status:
Not started
Approver:
None
Priority:
Medium
Drafter:
Keith Schincke
Direction:
Needs approval
Assignee:
Keith Schincke
Definition:
New
Series goal:
Accepted for future
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.