Add support for hybrid messaging backends

This commit separates the messaging rpc and notify transports in order
to support separate and different oslo.messaging backends

This patch:
* add rpc and notify variables
* update service role conf templates
* add example to globals.yaml
* add release note

Implements: blueprint hybrid-messaging
Change-Id: I34691c2895c8563f1f322f0850ecff98d11b5185
This commit is contained in:
Andrew Smith 2017-05-29 18:14:06 -04:00
parent 1175238420
commit fd1d3af0df
36 changed files with 136 additions and 41 deletions

View File

@ -123,6 +123,27 @@ keepalived_virtual_router_id: "51"
#######################
es_heap_size: "1G"
###################
# Messaging options
###################
# olso.messaging rpc transport valid options are [ rabbit, amqp ]
om_rpc_transport: "rabbit"
om_rpc_user: "{{ rabbitmq_user }}"
om_rpc_password: "{{ rabbitmq_password }}"
om_rpc_port: "{{ rabbitmq_port }}"
om_rpc_group: "rabbitmq"
rpc_transport_url: "{{ om_rpc_transport }}://{% for host in groups[om_rpc_group] %}{{ om_rpc_user }}:{{ om_rpc_password }}@{{ hostvars[host]['ansible_' + api_interface]['ipv4']['address'] }}:{{ om_rpc_port }}{% if not loop.last %},{% endif %}{% endfor %}"
# oslo.messaging notify transport valid options are [ rabbit ]
om_notify_transport: "rabbit"
om_notify_user: "{{ rabbitmq_user }}"
om_notify_password: "{{ rabbitmq_password }}"
om_notify_port: "{{ rabbitmq_port }}"
om_notify_group: "rabbitmq"
notify_transport_url: "{{ om_notify_transport }}://{% for host in groups[om_notify_group] %}{{ om_notify_user }}:{{ om_notify_password }}@{{ hostvars[host]['ansible_' + api_interface]['ipv4']['address'] }}:{{ om_notify_port }}{% if not loop.last %},{% endif %}{% endfor %}"
####################
# Networking options
####################
@ -240,7 +261,7 @@ panko_api_port: "8977"
placement_api_port: "8780"
qdrouterd_port: "15676"
qdrouterd_port: "31459"
rabbitmq_port: "5672"
rabbitmq_management_port: "15672"
@ -343,7 +364,7 @@ enable_mariadb: "yes"
enable_memcached: "yes"
enable_neutron: "yes"
enable_nova: "yes"
enable_rabbitmq: "yes"
enable_rabbitmq: "{{ 'yes' if om_rpc_transport == 'rabbit' or om_notify_transport == 'rabbit' else 'no' }}"
enable_outward_rabbitmq: "{{ enable_murano | bool }}"
# Additional optional OpenStack features and services are specified here
@ -423,7 +444,7 @@ enable_openvswitch: "{{ neutron_plugin_agent != 'linuxbridge' | bool }}"
enable_ovs_dpdk: "no"
enable_osprofiler: "no"
enable_panko: "no"
enable_qdrouterd: "no"
enable_qdrouterd: "{{ 'yes' if om_rpc_transport == 'amqp' else 'no' }}"
enable_rally: "no"
enable_redis: "no"
enable_sahara: "no"

View File

@ -5,7 +5,7 @@ log_dir = /var/log/kolla/aodh
debug = {{ aodh_logging_debug }}
notification_topics = notifications
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[api]
port = {{ aodh_api_port }}
@ -38,3 +38,6 @@ project_name = service
project_domain_id = {{ default_project_domain_id }}
user_domain_id = {{ default_user_domain_id }}
auth_type = password
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -12,7 +12,7 @@ max_allowed_request_size_in_bytes = 1000000
db_auto_create = False
sql_connection = mysql+pymysql://{{ barbican_database_user }}:{{ barbican_database_password }}@{{ barbican_database_address }}/{{ barbican_database_name }}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
# ================= Secret Store Plugin ===================
[secretstore]
@ -70,3 +70,6 @@ project_name = service
project_domain_id = {{ default_project_domain_id }}
user_domain_id = {{ default_user_domain_id }}
auth_type = password
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -3,7 +3,7 @@ debug = {{ ceilometer_logging_debug }}
log_dir = /var/log/kolla/ceilometer
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if enable_aodh | bool %}
evaluation_interval = 300
@ -49,3 +49,6 @@ insecure = {{ vmware_vcenter_insecure }}
ca_file = /etc/ceilometer/vmware_ca
{% endif %}
{% endif %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -57,9 +57,10 @@ api_paste_config = /etc/cinder/api-paste.ini
auth_strategy = keystone
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool or enable_searchlight | bool %}
driver = messagingv2
topics = notifications

View File

@ -8,7 +8,7 @@ log_dir = /var/log/kolla/cloudkitty
log_file = /var/log/kolla/cloudkitty/cloudkitty-api.log
{% endif %}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[database]
connection = mysql+pymysql://{{ cloudkitty_database_user }}:{{ cloudkitty_database_password }}@{{ cloudkitty_database_address }}/{{ cloudkitty_database_name }}

View File

@ -22,7 +22,7 @@ bind_host = {{ api_interface_address }}
bind_port = {{ congress_api_port }}
{% endif %}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[database]
connection = mysql+pymysql://{{ congress_database_user }}:{{ congress_database_password }}@{{ congress_database_address }}/{{ congress_database_name }}
@ -42,5 +42,8 @@ memcache_security_strategy = ENCRYPT
memcache_secret_key = {{ memcache_secret_key }}
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
[congress]
url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ congress_api_port }}

View File

@ -4,7 +4,7 @@ debug = {{ designate_logging_debug }}
log_dir = /var/log/kolla/designate
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[service:central]
default_pool_id = {{ designate_pool_id }}
@ -90,6 +90,7 @@ formatv6 = '%(hostname)s.%(zone)s'
formatv6 = '%(hostname)s.%(project)s.%(zone)s'
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
topics = notifications_designate
driver = messagingv2

View File

@ -18,7 +18,7 @@ show_multiple_locations = True
cinder_catalog_info = volume:cinder:internalURL
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[database]
connection = mysql+pymysql://{{ glance_database_user }}:{{ glance_database_password }}@{{ glance_database_address }}/{{ glance_database_name }}
@ -83,6 +83,7 @@ vmware_insecure = True
{% endif %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool or enable_searchlight | bool %}
driver = messagingv2
{% else %}

View File

@ -8,7 +8,7 @@ bind_host = {{ api_interface_address }}
bind_port = {{ glance_registry_port }}
workers = {{ openstack_service_workers }}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[database]
connection = mysql+pymysql://{{ glance_database_user }}:{{ glance_database_password }}@{{ glance_database_address }}/{{ glance_database_name }}
@ -32,6 +32,7 @@ memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansi
flavor = keystone
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool or enable_searchlight | bool %}
driver = messagingv2
{% else %}

View File

@ -20,7 +20,7 @@ trusts_delegated_roles = heat_stack_owner
num_engine_workers = {{ openstack_service_workers }}
{% endif %}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if service_name == 'heat-api' %}
[heat_api]
@ -76,6 +76,7 @@ auth_uri = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_publi
auth_uri = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool %}
driver = messagingv2
topics = 'notifications'

View File

@ -15,7 +15,10 @@ log_dir = /var/log/kolla/ironic
enabled_drivers = pxe_ipmitool
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if service_name == 'ironic-api' %}
[api]

View File

@ -1,7 +1,7 @@
[DEFAULT]
debug = {{ karbor_logging_debug }}
log_dir = /var/log/kolla/karbor
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if service_name == 'karbor-api' %}
osapi_karbor_listen = {{ api_interface_address }}
@ -42,3 +42,6 @@ password = {{ karbor_keystone_password }}
memcache_security_strategy = ENCRYPT
memcache_secret_key = {{ memcache_secret_key }}
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -2,9 +2,10 @@
debug = {{ keystone_logging_debug }}
{% if enable_cadf_notifications | bool %}
notification_format = cadf
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
{% endif %}
transport_url = {{ rpc_transport_url }}
# NOTE(elemoine) log_dir alone does not work for Keystone
log_file = /var/log/kolla/keystone/keystone.log
use_stderr = True
@ -39,8 +40,9 @@ backend = oslo_cache.memcache_pool
enabled = True
memcache_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
{% if enable_cadf_notifications | bool %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_cadf_notifications | bool %}
driver = messagingv2
{% endif %}

View File

@ -5,7 +5,7 @@ log_dir = /var/log/kolla/magnum
host = {{ api_interface_address }}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if service_name == 'magnum-api' %}
[api]
@ -85,6 +85,7 @@ cert_manager_type = x509keypair
{% endif %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool %}
driver = messaging
topics = 'notifications'

View File

@ -17,7 +17,7 @@ auth_strategy = keystone
os_region_name = {{ openstack_region_name }}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[oslo_concurrency]
lock_path = /var/lib/manila/tmp
@ -39,3 +39,6 @@ password = {{ manila_keystone_password }}
memcache_security_strategy = ENCRYPT
memcache_secret_key = {{ memcache_secret_key }}
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -12,7 +12,7 @@ log_file = /var/log/kolla/mistral/mistral-executor.log
# stderr and collected by Docker
use_stderr = False
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if service_name == 'mistral-api' %}
[api]
@ -54,6 +54,7 @@ os_actions_endpoint_type = internal
default_region = {{ openstack_region_name }}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
driver = noop
{% if enable_osprofiler | bool %}

View File

@ -8,7 +8,7 @@ bind_host = {{ api_interface_address }}
bind_port = {{ murano_api_port }}
{% endif %}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[engine]
engine_workers = {{ openstack_service_workers }}
@ -38,6 +38,7 @@ url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ murano_api_port }}
api_workers = {{ openstack_service_workers }}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
driver = messagingv2
{% if service_name == 'murano-engine' %}

View File

@ -52,7 +52,7 @@ l3_ha = true
max_l3_agents_per_router = {{ max_l3_agents_per_router }}
{% endif %}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if enable_neutron_dvr | bool %}
router_distributed = True
@ -105,6 +105,7 @@ memcache_secret_key = {{ memcache_secret_key }}
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if neutron_enabled_notification_topics %}
driver = messagingv2
topics = {{ neutron_enabled_notification_topics | map(attribute='name') | join(',') }}

View File

@ -4,8 +4,7 @@ control_exchange = neutron
rpc_backend = rabbit
log_dir = C:\OpenStack\Log
log_file = neutron-hyperv-agent.log
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[AGENT]
polling_interval = 2
@ -16,3 +15,6 @@ enable_qos_extension = false
[SECURITYGROUP]
firewall_driver = hyperv
enable_security_group = true
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -18,8 +18,7 @@ rpc_backend = rabbit
log_dir = C:\OpenStack\Log
log_file = nova-compute.log
force_config_drive = True
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[placement]
auth_type = password
@ -58,3 +57,6 @@ username = {{ neutron_keystone_user }}
password = {{ neutron_keystone_password }}
auth_url = {{ keystone_admin_url }}/v3
auth_type = v3password
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -48,7 +48,7 @@ compute_monitors=nova.compute.monitors.cpu.virt_driver
{% endif %}
{% endif %}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[api]
use_forwarded_for = true
@ -197,6 +197,7 @@ ca_file = /etc/nova/vmware_ca
compute = auto
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if nova_enabled_notification_topics %}
driver = messagingv2
topics = {{ nova_enabled_notification_topics | map(attribute='name') | join(',') }}

View File

@ -3,7 +3,7 @@ debug = {{ octavia_logging_debug }}
log_dir = /var/log/kolla/octavia
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[api_settings]
bind_host = {{ api_interface_address }}
@ -71,3 +71,6 @@ loadbalancer_topology = {{ octavia_loadbalancer_topology }}
[oslo_messaging]
topic = octavia_prov
rpc_thread_pool_size = 2
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -3,7 +3,7 @@ debug = {{ sahara_logging_debug }}
log_dir = /var/log/kolla/sahara
port = {{ sahara_api_port }}
host = {{ api_interface_address }}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
use_neutron = True
api_workers = {{ openstack_service_workers }}
@ -42,6 +42,7 @@ user_domain_id = {{ default_user_domain_id }}
auth_type = password
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool %}
driver = messagingv2
topics = 'notifications'

View File

@ -3,8 +3,7 @@ debug = {{ searchlight_logging_debug }}
policy_file = /etc/searchlight/policy.json
log_dir = /var/log/kolla/searchlight
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[api]
port = {{ searchlight_api_port }}
@ -36,6 +35,9 @@ memcache_security_strategy = ENCRYPT
memcache_secret_key = {{ memcache_secret_key }}
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
[service_credentials]
auth_uri = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }}
auth_url = {{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_port }}

View File

@ -7,7 +7,7 @@ log_dir = /var/log/kolla/senlin
num_engine_workers = {{ openstack_service_workers }}
{% endif %}
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if service_name == 'senlin-api' %}
[senlin_api]
@ -44,6 +44,7 @@ memcache_secret_key = {{ memcache_secret_key }}
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool %}
driver = messagingv2
topics = 'notifications'

View File

@ -1,7 +1,7 @@
[DEFAULT]
debug = {{ solum_logging_debug }}
log_dir = /var/log/kolla/solum
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if service_name == 'solum-api' %}
bind_host = {{ api_interface_address }}
@ -55,3 +55,7 @@ password = {{ solum_keystone_password }}
memcache_security_strategy = ENCRYPT
memcache_secret_key = {{ memcache_secret_key }}
memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -54,8 +54,7 @@ operator_roles = admin,{{ keystone_default_user_role }},ResellerAdmin
[filter:ceilometer]
paste.filter_factory = ceilometermiddleware.swift:filter_factory
control_exchange = swift
url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
url = {{ notify_transport_url }}
driver = messagingv2
topic = notifications
log_level = WARN

View File

@ -2,7 +2,7 @@
debug = {{ tacker_logging_debug }}
log_dir = /var/log/kolla/tacker
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
bind_host = {{ api_interface_address }}
bind_port = {{ tacker_server_port }}
@ -55,6 +55,7 @@ port = {{ tacker_server_port }}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool %}
driver = messagingv2
topics = notifications

View File

@ -6,7 +6,10 @@ trove_auth_url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone
conductor_manager = trove.conductor.manager.Manager
control_exchange = trove
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
[database]
connection = mysql+pymysql://{{ trove_database_user }}:{{ trove_database_password }}@{{ trove_database_address }}/{{ trove_database_name }}

View File

@ -8,7 +8,7 @@ nova_proxy_admin_tenant_name = services
nova_proxy_admin_user = trove
taskmanager_manager = trove.taskmanager.manager.Manager
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
trove_auth_url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }}/v3
{% if enable_nova | bool %}
@ -26,6 +26,7 @@ connection = mysql+pymysql://{{ trove_database_user }}:{{ trove_database_passwor
max_retries = -1
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool %}
driver = messagingv2
topics = 'notifications'

View File

@ -10,7 +10,7 @@ bind_host = {{ api_interface_address }}
trove_api_workers = {{ openstack_service_workers }}
auth_strategy = keystone
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
trove_auth_url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }}/v3
{% if enable_nova | bool %}
@ -39,6 +39,7 @@ auth_url = {{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_po
auth_type = password
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
{% if enable_ceilometer | bool %}
driver = messagingv2
topics = 'notifications'

View File

@ -3,7 +3,7 @@ debug = {{ watcher_logging_debug }}
log_dir = /var/log/kolla/watcher
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
{% if service_name == 'watcher-api' %}
[api]
@ -42,3 +42,6 @@ password = {{ watcher_keystone_password }}
[oslo_concurrency]
lock_path = /var/lib/watcher/tmp
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}

View File

@ -7,7 +7,7 @@ log_file = /var/log/kolla/zun/zun-api.log
{% endif %}
log_dir = /var/log/kolla/zun
transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %}
transport_url = {{ rpc_transport_url }}
state_path = /var/lib/zun
container_driver = docker.driver.DockerDriver
@ -16,6 +16,9 @@ db_type = sql
[network]
driver = kuryr
[oslo_messaging_notifications]
transport_url = {{ notify_transport_url }}
[api]
host_ip = {{ api_interface_address }}
port = {{ zun_api_port }}

View File

@ -57,6 +57,18 @@ kolla_internal_vip_address: "10.10.10.254"
#docker_registry_username: "sam"
#docker_registry_password: "correcthorsebatterystaple"
###################
# Messaging options
###################
# Below is an example of an separate backend that provides brokerless
# messaging for oslo.messaging RPC communications
#om_rpc_transport: "amqp"
#om_rpc_user: "{{ qdrouterd_user }}"
#om_rpc_password: "{{ qdrouterd_password }}"
#om_rpc_port: "{{ qdrouterd_port }}"
#om_rpc_group: "qdrouterd"
##############################
# Neutron - Networking Options

View File

@ -0,0 +1,3 @@
---
features:
- Allow use of separate backends for oslo.messaging rpc and notification.