Allow cinder-backup to use ceph

This change updates ceph_client and os_cinder roles to allow
cinder-backup to use ceph.  We also create a new group called
'cinder_backup' which allows us to only retreive the cinder backup key
if cinder-backup is actually in use.

To use, you would simply need to set cinder_service_backup_driver to
cinder.backup.drivers.ceph in your user_variables.yml file.

NOTE: You will need to update your
      /etc/openstack_deploy/env.d/cinder.yml in order for this change
      to execute successfully.

Change-Id: Ib94effa40208bbc8de0f78c5487316be007adcf1
Closes-Bug: #1481787
Implements: blueprint ceph-block-devices
DocImpact
This commit is contained in:
Matt Thompson 2015-08-05 15:31:46 +01:00 committed by Jesse Pretorius
parent a4a5049c4a
commit 75fccbdfa1
3 changed files with 13 additions and 1 deletions

View File

@ -63,6 +63,7 @@ ceph_mons: []
# Ceph client usernames for glance and cinder+nova
glance_ceph_client: glance
cinder_ceph_client: cinder
cinder_backup_ceph_client: cinder-backup
# by default we assume you use rbd for both cinder and nova, and as libvirt
# needs to access both volumes (cinder) as boot disks (nova) we default to
# reuse the cinder_ceph_client
@ -74,6 +75,7 @@ cephkeys_access_group: cephkeys
openstack_service_system_user: null
ceph_cinder_service_names:
- cinder-volume
- cinder-backup
ceph_nova_service_names:
- nova-compute
ceph_glance_service_names:

View File

@ -26,7 +26,9 @@
with_subelements:
- ceph_components
- client
when: inventory_hostname in groups[item.0.component]
when: >
inventory_hostname in groups[item.0.component] and
(item.0.component != 'cinder_backup' or (cinder_service_backup_program_enabled | bool and cinder_service_backup_driver == 'cinder.backup.drivers.ceph'))
always_run: true
changed_when: false
delegate_to: '{{ ceph_mon_host }}'

View File

@ -31,6 +31,14 @@ ceph_components:
client:
- '{{ cinder_ceph_client }}'
service: '{{ ceph_cinder_service_names }}'
- component: cinder_backup
package:
- ceph # TODO: remove this once http://tracker.ceph.com/issues/11388 is resolved
- ceph-common
- python-ceph
client:
- '{{ cinder_backup_ceph_client }}'
service: '{{ ceph_cinder_service_names }}'
- component: nova_compute
package:
- libvirt-bin