Add ceph_extra_components, move gnocchi component

The telemetry roles within OSA are in the process of getting moved
out of the OSA integrated repo. As a result, the gnocchi groups
will no longer be part of the inventory by default.
This commit adds a new variable, called 'ceph_extra_components',
that will allow the deployer to specify any extra services
and packages that might not ship by default with OSA.

Change-Id: I5b1bcf670e6ed6018cd3de25f069b65747fb5532
This commit is contained in:
Miguel Alex Cantu 2017-07-17 18:46:21 +00:00 committed by Logan V
parent 71b9e924d7
commit 96b8a41312
7 changed files with 41 additions and 9 deletions

View File

@ -143,5 +143,21 @@ IP addresses for the Ceph Monitor servers in the deployment:
- 172.29.244.152
- 172.29.244.153
Configure os_gnocchi with ceph_client
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If the os_gnocchi role is going to utilize the ceph_client role, the following
configurations need to be added to the user variable file:
.. code-block:: yaml
ceph_extra_components:
- component: gnocchi_api
package:
- "{{ python_ceph_package }}"
client:
- '{{ gnocchi_ceph_client }}'
service: '{{ ceph_gnocchi_service_names }}'
.. _Ceph Monitor: http://docs.ceph.com/docs/master/rados/configuration/mon-config-ref/

View File

@ -17,7 +17,7 @@
name: "{{ item.1 }}"
state: restarted
with_subelements:
- "{{ ceph_components }}"
- "{{ ceph_components + ceph_extra_components }}"
- service
when: inventory_hostname in groups[item.0.component]
failed_when: false

View File

@ -0,0 +1,6 @@
---
features:
- |
A new variable called ``ceph_extra_components`` is available for the
ceph_client role. Extra components, packages, and services that are not
shipped by default by OpenStack-Ansible can be defined here.

View File

@ -0,0 +1,6 @@
---
deprecations:
- |
The gnocchi ceph component has been moved out as a default component
required by the ceph_client role. It can now be optionally specified
through the use of the ``ceph_extra_components`` variable.

View File

@ -22,7 +22,7 @@
# output to put in a keyring; ceph admin should have already created the user
shell: ceph auth get client.{{ item.1 }} >/dev/null && ceph auth get-or-create client.{{ item.1 }}
with_subelements:
- "{{ ceph_components }}"
- "{{ ceph_components + ceph_extra_components }}"
- client
when:
- inventory_hostname in groups[item.0.component]

View File

@ -24,7 +24,7 @@
retries: 5
delay: 2
with_subelements:
- "{{ ceph_components }}"
- "{{ ceph_components + ceph_extra_components }}"
- package
when:
- inventory_hostname in groups[item.0.component]

View File

@ -45,10 +45,14 @@ ceph_components:
client:
- '{{ nova_ceph_client }}'
service: '{{ ceph_nova_service_names }}'
- component: gnocchi_api
package:
- "{{ python_ceph_package }}"
client:
- '{{ gnocchi_ceph_client }}'
service: '{{ ceph_gnocchi_service_names }}'
ceph_extra_components: []
# Gnocchi has been moved out from the integrated OSA repo, but can still
# be optionally enabled by using the configuration in the os_gnocchi role repo
# under the 'extras' directory
# - component: gnocchi_api
# package:
# - "{{ python_ceph_package }}"
# client:
# - '{{ gnocchi_ceph_client }}'
# service: '{{ ceph_gnocchi_service_names }}'