Add quorum support for service
This change implements and enables by default quorum support for rabbitmq as well as providing default variables to globally tune it's behaviour. Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/896017 Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-os_keystone/+/900631 Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-os_swift/+/900632 Change-Id: I3292a388766654b1a10434ee8ba060e28607e707
This commit is contained in:
parent
d632cee836
commit
435a69ed31
|
@ -66,7 +66,13 @@ ceilometer_oslomsg_rpc_transport: "{{ oslomsg_rpc_transport | default('rabbit')
|
|||
ceilometer_oslomsg_rpc_port: "{{ oslomsg_rpc_port | default('5672') }}"
|
||||
ceilometer_oslomsg_rpc_use_ssl: "{{ oslomsg_rpc_use_ssl | default(False) }}"
|
||||
ceilometer_oslomsg_rpc_userid: ceilometer
|
||||
ceilometer_oslomsg_rpc_vhost: /ceilometer
|
||||
# vhost name depends on value of oslomsg_rabbit_quorum_queues. In case quorum queues
|
||||
# are not used - vhost name will be prefixed with leading `/`.
|
||||
ceilometer_oslomsg_rpc_vhost:
|
||||
- name: /ceilometer
|
||||
state: "{{ ceilometer_oslomsg_rabbit_quorum_queues | ternary('absent', 'present') }}"
|
||||
- name: ceilometer
|
||||
state: "{{ ceilometer_oslomsg_rabbit_quorum_queues | ternary('present', 'absent') }}"
|
||||
ceilometer_oslomsg_rpc_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
ceilometer_oslomsg_rpc_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -83,6 +89,11 @@ ceilometer_oslomsg_notify_vhost: "{{ ceilometer_oslomsg_rpc_vhost }}"
|
|||
ceilometer_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
ceilometer_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
## RabbitMQ integration
|
||||
ceilometer_oslomsg_rabbit_quorum_queues: "{{ oslomsg_rabbit_quorum_queues | default(True) }}"
|
||||
ceilometer_oslomsg_rabbit_quorum_delivery_limit: "{{ oslomsg_rabbit_quorum_delivery_limit | default(0) }}"
|
||||
ceilometer_oslomsg_rabbit_quorum_max_memory_bytes: "{{ oslomsg_rabbit_quorum_max_memory_bytes | default(0) }}"
|
||||
|
||||
# Cinder notifications
|
||||
cinder_oslomsg_notify_host_group: "{{ oslomsg_notify_host_group | default('rabbitmq_all') }}"
|
||||
cinder_oslomsg_notify_transport: "{{ oslomsg_notify_transport | default('rabbit') }}"
|
||||
|
@ -90,7 +101,11 @@ cinder_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
cinder_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
cinder_oslomsg_notify_userid: "{{ cinder_oslomsg_rpc_userid | default('cinder') }}"
|
||||
cinder_oslomsg_notify_password: "{{ cinder_ceilometer_enabled | ternary(cinder_oslomsg_rpc_password, '') }}"
|
||||
cinder_oslomsg_notify_vhost: "{{ cinder_oslomsg_rpc_vhost | default('/cinder') }}"
|
||||
cinder_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
cinder_oslomsg_rpc_vhost | default(
|
||||
(cinder_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('cinder', '/cinder'))
|
||||
}}
|
||||
cinder_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
cinder_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -101,7 +116,11 @@ designate_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
designate_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
designate_oslomsg_notify_userid: "{{ designate_oslomsg_rpc_userid | default('designate-rpc') }}"
|
||||
designate_oslomsg_notify_password: "{{ designate_ceilometer_enabled | ternary(designate_oslomsg_rpc_password, '') }}"
|
||||
designate_oslomsg_notify_vhost: "{{ designate_oslomsg_rpc_vhost | default('/designate') }}"
|
||||
designate_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
designate_oslomsg_rpc_vhost | default(
|
||||
(designate_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('designate', '/designate'))
|
||||
}}
|
||||
designate_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
designate_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -112,7 +131,11 @@ glance_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
glance_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
glance_oslomsg_notify_userid: "{{ glance_oslomsg_rpc_userid | default('glance') }}"
|
||||
glance_oslomsg_notify_password: "{{ glance_ceilometer_enabled | ternary(glance_oslomsg_rpc_password, '') }}"
|
||||
glance_oslomsg_notify_vhost: "{{ glance_oslomsg_rpc_vhost | default('/glance') }}"
|
||||
glance_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
glance_oslomsg_rpc_vhost | default(
|
||||
(glance_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('glance', '/glance'))
|
||||
}}
|
||||
glance_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
glance_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -123,7 +146,11 @@ heat_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
heat_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
heat_oslomsg_notify_userid: "{{ heat_oslomsg_rpc_userid | default('heat') }}"
|
||||
heat_oslomsg_notify_password: "{{ heat_ceilometer_enabled | ternary(heat_oslomsg_rpc_password, '') }}"
|
||||
heat_oslomsg_notify_vhost: "{{ heat_oslomsg_rpc_vhost | default('/heat') }}"
|
||||
heat_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
heat_oslomsg_rpc_vhost | default(
|
||||
(heat_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('heat', '/heat'))
|
||||
}}
|
||||
heat_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
heat_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -134,7 +161,11 @@ keystone_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
keystone_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
keystone_oslomsg_notify_userid: "{{ keystone_oslomsg_rpc_userid | default('keystone') }}"
|
||||
keystone_oslomsg_notify_password: "{{ keystone_ceilometer_enabled | ternary(keystone_oslomsg_rpc_password, '') }}"
|
||||
keystone_oslomsg_notify_vhost: "{{ keystone_oslomsg_rpc_vhost | default('/keystone') }}"
|
||||
keystone_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
keystone_oslomsg_rpc_vhost | default(
|
||||
(keystone_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('keystone', '/keystone'))
|
||||
}}
|
||||
keystone_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
keystone_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -145,7 +176,11 @@ neutron_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
neutron_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
neutron_oslomsg_notify_userid: "{{ neutron_oslomsg_rpc_userid | default('neutron') }}"
|
||||
neutron_oslomsg_notify_password: "{{ neutron_ceilometer_enabled | ternary(neutron_oslomsg_rpc_password, '') }}"
|
||||
neutron_oslomsg_notify_vhost: "{{ neutron_oslomsg_rpc_vhost | default('/neutron') }}"
|
||||
neutron_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
neutron_oslomsg_rpc_vhost | default(
|
||||
(neutron_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('neutron', '/neutron'))
|
||||
}}
|
||||
neutron_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
neutron_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -156,7 +191,11 @@ nova_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
nova_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
nova_oslomsg_notify_userid: "{{ nova_oslomsg_rpc_userid | default('nova') }}"
|
||||
nova_oslomsg_notify_password: "{{ nova_ceilometer_enabled | ternary(nova_oslomsg_rpc_password, '') }}"
|
||||
nova_oslomsg_notify_vhost: "{{ nova_oslomsg_rpc_vhost | default('/nova') }}"
|
||||
nova_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
nova_oslomsg_rpc_vhost | default(
|
||||
(nova_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('nova', '/nova'))
|
||||
}}
|
||||
nova_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
nova_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -167,7 +206,11 @@ octavia_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
octavia_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
octavia_oslomsg_notify_userid: "{{ octavia_oslomsg_rpc_userid | default('octavia') }}"
|
||||
octavia_oslomsg_notify_password: "{{ octavia_ceilometer_enabled | ternary(octavia_oslomsg_rpc_password, '') }}"
|
||||
octavia_oslomsg_notify_vhost: "{{ octavia_oslomsg_rpc_vhost | default('/octavia') }}"
|
||||
octavia_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
octavia_oslomsg_rpc_vhost | default(
|
||||
(octavia_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('octavia', '/octavia'))
|
||||
}}
|
||||
octavia_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
octavia_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -178,7 +221,11 @@ sahara_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
sahara_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
sahara_oslomsg_notify_userid: "{{ sahara_oslomsg_rpc_userid | default('sahara') }}"
|
||||
sahara_oslomsg_notify_password: "{{ sahara_ceilometer_enabled | ternary(sahara_oslomsg_rpc_password, '') }}"
|
||||
sahara_oslomsg_notify_vhost: "{{ sahara_oslomsg_rpc_vhost | default('/sahara') }}"
|
||||
sahara_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
sahara_oslomsg_rpc_vhost | default(
|
||||
(sahara_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('sahara', '/sahara'))
|
||||
}}
|
||||
sahara_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
sahara_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -188,7 +235,11 @@ swift_oslomsg_notify_transport: "{{ oslomsg_notify_transport | default('rabbit')
|
|||
swift_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
||||
swift_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
swift_oslomsg_notify_userid: "swift"
|
||||
swift_oslomsg_notify_vhost: "/swift"
|
||||
swift_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
swift_oslomsg_rpc_vhost | default(
|
||||
(swift_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('swift', '/swift'))
|
||||
}}
|
||||
swift_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
swift_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
@ -199,7 +250,11 @@ trove_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
|
|||
trove_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
|
||||
trove_oslomsg_notify_userid: "{{ trove_oslomsg_rpc_userid | default('trove') }}"
|
||||
trove_oslomsg_notify_password: "{{ trove_ceilometer_enabled | ternary(trove_oslomsg_rpc_password, '') }}"
|
||||
trove_oslomsg_notify_vhost: "{{ trove_oslomsg_rpc_vhost | default('/trove') }}"
|
||||
trove_oslomsg_notify_vhost: >-
|
||||
{{
|
||||
trove_oslomsg_rpc_vhost | default(
|
||||
(trove_oslomsg_rabbit_quorum_queues | default(oslomsg_rabbit_quorum_queues | default(True)) | bool) | ternary('trove', '/trove'))
|
||||
}}
|
||||
trove_oslomsg_notify_ssl_version: "{{ oslomsg_rpc_ssl_version | default('TLSv1_2') }}"
|
||||
trove_oslomsg_notify_ssl_ca_file: "{{ oslomsg_rpc_ssl_ca_file | default('') }}"
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@ auth_strategy = keystone
|
|||
aodh_is_enabled = {{ ceilometer_aodh_enabled | bool }}
|
||||
|
||||
# RPC
|
||||
transport_url = {{ _oslomsg_url(ceilometer_oslomsg_rpc_transport, ceilometer_oslomsg_rpc_userid, ceilometer_oslomsg_rpc_password, groups[ceilometer_oslomsg_rpc_host_group], ceilometer_oslomsg_rpc_port, ceilometer_oslomsg_rpc_vhost, ceilometer_oslomsg_rpc_use_ssl, ceilometer_oslomsg_rpc_ssl_version, ceilometer_oslomsg_rpc_ssl_ca_file) }}
|
||||
transport_url = {{ _oslomsg_url(ceilometer_oslomsg_rpc_transport, ceilometer_oslomsg_rpc_userid, ceilometer_oslomsg_rpc_password, groups[ceilometer_oslomsg_rpc_host_group], ceilometer_oslomsg_rpc_port, _ceilometer_oslomsg_rpc_vhost_conf, ceilometer_oslomsg_rpc_use_ssl, ceilometer_oslomsg_rpc_ssl_version, ceilometer_oslomsg_rpc_ssl_ca_file) }}
|
||||
|
||||
{% if ceilometer_gnocchi_enabled | bool %}
|
||||
event_dispatchers = gnocchi
|
||||
|
@ -32,8 +32,13 @@ event_dispatchers = database
|
|||
|
||||
polling_namespaces = {{ _ceilometer_polling_namespaces | join(',') }}
|
||||
|
||||
{% if ceilometer_oslomsg_rpc_transport == 'rabbit' %}
|
||||
[oslo_messaging_rabbit]
|
||||
ssl = {{ ceilometer_oslomsg_rpc_use_ssl }}
|
||||
rabbit_quorum_queue = {{ ceilometer_oslomsg_rabbit_quorum_queues }}
|
||||
rabbit_quorum_delivery_limit = {{ ceilometer_oslomsg_rabbit_quorum_delivery_limit }}
|
||||
rabbit_quorum_max_memory_bytes = {{ ceilometer_oslomsg_rabbit_quorum_max_memory_bytes }}
|
||||
{% endif %}
|
||||
|
||||
{% if 'ceilometer_agent_notification' in group_names %}
|
||||
[notification]
|
||||
|
@ -43,7 +48,7 @@ store_events = {{ not ceilometer_gnocchi_enabled | bool }}
|
|||
# Notification queues to listen on
|
||||
|
||||
# Ceilometer needs to connect to it's own notification vhost
|
||||
messaging_urls = {{ _oslomsg_url(ceilometer_oslomsg_notify_transport, ceilometer_oslomsg_notify_userid, ceilometer_oslomsg_notify_password, groups[ceilometer_oslomsg_notify_host_group], ceilometer_oslomsg_notify_port, ceilometer_oslomsg_notify_vhost, ceilometer_oslomsg_notify_use_ssl, ceilometer_oslomsg_notify_ssl_version, ceilometer_oslomsg_notify_ssl_ca_file) }}
|
||||
messaging_urls = {{ _oslomsg_url(ceilometer_oslomsg_notify_transport, ceilometer_oslomsg_notify_userid, ceilometer_oslomsg_notify_password, groups[ceilometer_oslomsg_notify_host_group], ceilometer_oslomsg_notify_port, _ceilometer_oslomsg_notify_vhost_conf, ceilometer_oslomsg_notify_use_ssl, ceilometer_oslomsg_notify_ssl_version, ceilometer_oslomsg_notify_ssl_ca_file) }}
|
||||
|
||||
{% if cinder_ceilometer_enabled %}
|
||||
# Cinder notifications
|
||||
|
|
|
@ -22,6 +22,18 @@ ceilometer_osprofiler_event_definitions_user_content: "{{ lookup('file', ceilome
|
|||
ceilometer_polling_user_content: "{{ lookup('file', ceilometer_polling_default_file_path, errors='ignore') }}"
|
||||
ceilometer_pipeline_user_content: "{{ lookup('file', ceilometer_pipeline_default_file_path, errors='ignore') }}"
|
||||
|
||||
_ceilometer_oslomsg_rpc_vhost_conf: >-
|
||||
{{
|
||||
(ceilometer_oslomsg_rpc_vhost is string) | ternary(ceilometer_oslomsg_rpc_vhost, ceilometer_oslomsg_rpc_vhost | selectattr(
|
||||
'state', 'eq', 'present') | map(attribute='name') | first)
|
||||
}}
|
||||
|
||||
_ceilometer_oslomsg_notify_vhost_conf: >-
|
||||
{{
|
||||
(ceilometer_oslomsg_notify_vhost is string) | ternary(ceilometer_oslomsg_notify_vhost, ceilometer_oslomsg_notify_vhost | selectattr(
|
||||
'state', 'eq', 'present') | map(attribute='name') | first)
|
||||
}}
|
||||
|
||||
_ceilometer_polling_namespaces: |
|
||||
{% set _polling_namespaces = [] %}
|
||||
{% if 'ceilometer_agent_central' in group_names %}
|
||||
|
|
Loading…
Reference in New Issue