Update to use oslo.messaging service for RPC and Notify

This introduces oslo.messaging variables that define the RPC and
Notify transports for the OpenStack services. These parameters
replace the rabbitmq values and are used to generate the messaging
transport_url for the service. The association of the messaging
backend server to the oslo.messaging services will then be
transparent to the neutron service.

This patch:
* Add oslo.messaging variables for RPC and Notify to defaults
* Update transport_url generation
* Add oslo.messaging to tests inventories
* Add release note

Depends-On: If4326a6848d2d32af284fdbb94798eb0b03734d5
Depends-On: I2b09145b60116c029fc85477399c24f94974b61d
Change-Id: I717880458f69870acf75a101481b7776d250ebf4
This commit is contained in:
Andrew Smith 2018-04-23 16:34:44 -04:00
parent 431032a5f4
commit 4db9c95d6f
8 changed files with 75 additions and 17 deletions

View File

@ -192,14 +192,32 @@ neutron_galera_use_ssl: "{{ galera_use_ssl | default(False) }}"
neutron_galera_ssl_ca_cert: "{{ galera_ssl_ca_cert | default('/etc/ssl/certs/galera-ca.pem') }}"
###
### RPC (RabbitMQ) integration
### Oslo Messaging
###
# RPC
neutron_oslomsg_rpc_transport: rabbit
neutron_oslomsg_rpc_servers: 127.0.0.1
neutron_oslomsg_rpc_port: 5672
neutron_oslomsg_rpc_use_ssl: False
neutron_oslomsg_rpc_userid: neutron
neutron_oslomsg_rpc_vhost: /neutron
# Notify
neutron_oslomsg_notify_transport: rabbit
neutron_oslomsg_notify_servers: 127.0.0.1
neutron_oslomsg_notify_port: 5672
neutron_oslomsg_notify_use_ssl: False
neutron_oslomsg_notify_userid: neutron
neutron_oslomsg_notify_vhost: /neutron
###
### (RabbitMQ) integration
###
neutron_rabbitmq_userid: neutron
neutron_rabbitmq_vhost: /neutron
neutron_rabbitmq_port: 5672
neutron_rabbitmq_servers: 127.0.0.1
neutron_rabbitmq_use_ssl: False
neutron_rpc_thread_pool_size: 64
neutron_rpc_conn_pool_size: 30
neutron_rpc_response_timeout: 60
@ -239,14 +257,6 @@ neutron_service_in_ldap: false
neutron_ceilometer_enabled: False
# Configuration for notifications communication, i.e. [oslo_messaging_notifications]
neutron_rabbitmq_telemetry_userid: "{{ neutron_rabbitmq_userid }}"
neutron_rabbitmq_telemetry_password: "{{ neutron_rabbitmq_password }}"
neutron_rabbitmq_telemetry_vhost: "{{ neutron_rabbitmq_vhost }}"
neutron_rabbitmq_telemetry_port: "{{ neutron_rabbitmq_port }}"
neutron_rabbitmq_telemetry_servers: "{{ neutron_rabbitmq_servers }}"
neutron_rabbitmq_telemetry_use_ssl: "{{ neutron_rabbitmq_use_ssl }}"
###
### Designate integration
###

View File

@ -0,0 +1,19 @@
---
features:
- Support separate oslo.messaging services for RPC and Notifications
to enable operation of separate and different messaging backend servers.
deprecations:
- |
The rabbitmq server parameters have been replaced by corresponding
oslo.messaging RPC and Notify parameters in order to abstract the
messaging service from the actual backend server deployment.
- neutron_oslomsg_rpc_servers replaces neutron_rabbitmq_servers
- neutron_oslomsg_rpc_port replaces neutron_rabbitmq_port
- neutron_oslomsg_rpc_use_ssl replaces neutron_rabbitmq_use_ssl
- neutron_oslomsg_rpc_userid replaces neutron_rabbitmq_userid
- neutron_oslomsg_rpc_vhost replaces neutron_rabbitmq_vhost
- neutron_oslomsg_notify_servers replaces neutron_rabbitmq_telemetry_servers
- neutron_oslomsg_notify_port replaces neutron_rabbitmq_telemetry_port
- neutron_oslomsg_notify_use_ssl replaces neutron_rabbitmq_telemetry_use_ssl
- neutron_oslomsg_notify_userid replaces neutron_rabbitmq_telemetry_userid
- neutron_oslomsg_notify_vhost replaces neutron_rabbitmq_telemetry_vhost

View File

@ -26,7 +26,7 @@ log_file = {{ neutron_log_dir }}/neutron.log
## Rpc all
executor_thread_pool_size = {{ neutron_rpc_thread_pool_size }}
rpc_response_timeout = {{ neutron_rpc_response_timeout }}
transport_url = rabbit://{% for host in neutron_rabbitmq_servers.split(',') %}{{ neutron_rabbitmq_userid }}:{{ neutron_rabbitmq_password }}@{{ host }}:{{ neutron_rabbitmq_port }}{% if not loop.last %},{% else %}/{{ neutron_rabbitmq_vhost }}{% endif %}{% endfor %}
transport_url = {{ neutron_oslomsg_rpc_transport }}://{% for host in neutron_oslomsg_rpc_servers.split(',') %}{{ neutron_oslomsg_rpc_userid }}:{{ neutron_oslomsg_rpc_password }}@{{ host }}:{{ neutron_oslomsg_rpc_port }}{% if not loop.last %},{% else %}/{{ neutron_oslomsg_rpc_vhost }}{% if neutron_oslomsg_rpc_use_ssl | bool %}?ssl=1{% else %}?ssl=0{% endif %}{% endif %}{% endfor %}
# Domain to use for building hostnames
dns_domain = {{ neutron_dns_domain }}
@ -250,7 +250,6 @@ root_helper = sudo {{ neutron_bin }}/neutron-rootwrap {{ neutron_conf_dir }}/roo
# Messaging
[oslo_messaging_rabbit]
ssl = {{ neutron_rabbitmq_use_ssl }}
rpc_conn_pool_size = {{ neutron_rpc_conn_pool_size }}
# Notifications
@ -265,7 +264,7 @@ rpc_conn_pool_size = {{ neutron_rpc_conn_pool_size }}
{% endif %}
notification_topics = {{ notification_topics | join(',') }}
driver = messagingv2
transport_url = rabbit://{% for host in neutron_rabbitmq_telemetry_servers.split(',') %}{{ neutron_rabbitmq_telemetry_userid }}:{{ neutron_rabbitmq_telemetry_password }}@{{ host }}:{{ neutron_rabbitmq_telemetry_port }}{% if not loop.last %},{% else %}/{{ neutron_rabbitmq_telemetry_vhost }}{% endif %}{% endfor %}
transport_url = {{ neutron_oslomsg_notify_transport }}://{% for host in neutron_oslomsg_notify_servers.split(',') %}{{ neutron_oslomsg_notify_userid }}:{{ neutron_oslomsg_notify_password }}@{{ host }}:{{ neutron_oslomsg_notify_port }}{% if not loop.last %},{% else %}/{{ neutron_oslomsg_notify_vhost }}{% if neutron_oslomsg_notify_use_ssl | bool %}?ssl=1{% else %}?ssl=0{% endif %}{% endif %}{% endfor %}
{% endif %}
# Concurrency (locking mechanisms)

View File

@ -16,6 +16,12 @@ server2
agents1
agents2
[oslomsg_rpc_all]
infra1
[oslomsg_notify_all]
infra1
[rabbitmq_all]
infra1

View File

@ -16,6 +16,12 @@ server2
agents1
agents2
[oslomsg_rpc_all]
infra1
[oslomsg_notify_all]
infra1
[rabbitmq_all]
infra1

View File

@ -16,6 +16,12 @@ server2
agents1
agents2
[oslomsg_rpc_all]
infra1
[oslomsg_notify_all]
infra1
[rabbitmq_all]
infra1

View File

@ -16,6 +16,12 @@ server2
agents1
agents2
[oslomsg_rpc_all]
infra1
[oslomsg_notify_all]
infra1
[rabbitmq_all]
infra1

View File

@ -16,6 +16,12 @@ server2
agents1
agents2
[oslomsg_rpc_all]
infra1
[oslomsg_notify_all]
infra1
[rabbitmq_all]
infra1