diff --git a/defaults/main.yml b/defaults/main.yml index 399a44b7..6b721503 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -62,22 +62,23 @@ cinder_galera_database: cinder cinder_galera_use_ssl: "{{ galera_use_ssl | default(False) }}" cinder_galera_ssl_ca_cert: "{{ galera_ssl_ca_cert | default('/etc/ssl/certs/galera-ca.pem') }}" -## RabbitMQ info +## Oslo Messaging -## Configuration for RPC communications -cinder_rabbitmq_userid: cinder -cinder_rabbitmq_vhost: /cinder -cinder_rabbitmq_port: 5672 -cinder_rabbitmq_servers: 127.0.0.1 -cinder_rabbitmq_use_ssl: False +# RPC +cinder_oslomsg_rpc_transport: rabbit +cinder_oslomsg_rpc_servers: 127.0.0.1 +cinder_oslomsg_rpc_port: 5672 +cinder_oslomsg_rpc_use_ssl: False +cinder_oslomsg_rpc_userid: cinder +cinder_oslomsg_rpc_vhost: /cinder -## Configuration for notifications communication, i.e. [oslo_messaging_notifications] -cinder_rabbitmq_telemetry_userid: "{{ cinder_rabbitmq_userid }}" -cinder_rabbitmq_telemetry_password: "{{ cinder_rabbitmq_password }}" -cinder_rabbitmq_telemetry_vhost: "{{ cinder_rabbitmq_vhost }}" -cinder_rabbitmq_telemetry_port: "{{ cinder_rabbitmq_port }}" -cinder_rabbitmq_telemetry_servers: "{{ cinder_rabbitmq_servers }}" -cinder_rabbitmq_telemetry_use_ssl: "{{ cinder_rabbitmq_use_ssl }}" +# Notify +cinder_oslomsg_notify_transport: rabbit +cinder_oslomsg_notify_servers: 127.0.0.1 +cinder_oslomsg_notify_port: 5672 +cinder_oslomsg_notify_use_ssl: False +cinder_oslomsg_notify_userid: cinder +cinder_oslomsg_notify_vhost: /cinder ## Cinder User / Group cinder_system_user_name: cinder diff --git a/releasenotes/notes/oslo-messaging-separate-backends-06a1b30ffb228f22.yaml b/releasenotes/notes/oslo-messaging-separate-backends-06a1b30ffb228f22.yaml new file mode 100644 index 00000000..ec1e2f76 --- /dev/null +++ b/releasenotes/notes/oslo-messaging-separate-backends-06a1b30ffb228f22.yaml @@ -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. + - cinder_oslomsg_rpc_servers replaces cinder_rabbitmq_servers + - cinder_oslomsg_rpc_port replaces cinder_rabbitmq_port + - cinder_oslomsg_rpc_use_ssl replaces cinder_rabbitmq_use_ssl + - cinder_oslomsg_rpc_userid replaces cinder_rabbitmq_userid + - cinder_oslomsg_rpc_vhost replaces cinder_rabbitmq_vhost + - cinder_oslomsg_notify_servers replaces cinder_rabbitmq_telemetry_servers + - cinder_oslomsg_notify_port replaces cinder_rabbitmq_telemetry_port + - cinder_oslomsg_notify_use_ssl replaces cinder_rabbitmq_telemetry_use_ssl + - cinder_oslomsg_notify_userid replaces cinder_rabbitmq_telemetry_userid + - cinder_oslomsg_notify_vhost replaces cinder_rabbitmq_telemetry_vhost diff --git a/templates/cinder.conf.j2 b/templates/cinder.conf.j2 index 776c64ec..0dc27fc8 100644 --- a/templates/cinder.conf.j2 +++ b/templates/cinder.conf.j2 @@ -47,7 +47,7 @@ backup_ceph_pool = {{ cinder_service_backup_ceph_pool }} executor_thread_pool_size = {{ cinder_rpc_executor_thread_pool_size }} rpc_response_timeout = {{ cinder_rpc_response_timeout }} -transport_url = rabbit://{% for host in cinder_rabbitmq_servers.split(',') %}{{ cinder_rabbitmq_userid }}:{{ cinder_rabbitmq_password }}@{{ host }}:{{ cinder_rabbitmq_port }}{% if not loop.last %},{% else %}/{{ cinder_rabbitmq_vhost }}{% endif %}{% endfor %} +transport_url = {{ cinder_oslomsg_rpc_transport }}://{% for host in cinder_oslomsg_rpc_servers.split(',') %}{{ cinder_oslomsg_rpc_userid }}:{{ cinder_oslomsg_rpc_password }}@{{ host }}:{{ cinder_oslomsg_rpc_port }}{% if not loop.last %},{% else %}/{{ cinder_oslomsg_rpc_vhost }}{% if cinder_oslomsg_rpc_use_ssl | bool %}?ssl=1{% else %}?ssl=0{% endif %}{% endif %}{% endfor %} ## Quota quota_volumes = {{ cinder_quota_volumes }} @@ -104,12 +104,12 @@ enabled_backends={% for backend in cinder_backends|dictsort %}{{ backend.0 }}{% connection = mysql+pymysql://{{ cinder_galera_user }}:{{ cinder_container_mysql_password }}@{{ cinder_galera_address }}/{{ cinder_galera_database }}?charset=utf8{% if cinder_galera_use_ssl | bool %}&ssl_ca={{ cinder_galera_ssl_ca_cert }}{% endif %} [oslo_messaging_rabbit] -ssl = {{ cinder_rabbitmq_use_ssl }} +ssl = {{ cinder_oslomsg_rpc_use_ssl }} {% if cinder_ceilometer_enabled %} [oslo_messaging_notifications] driver = messagingv2 -transport_url = rabbit://{% for host in cinder_rabbitmq_telemetry_servers.split(',') %}{{ cinder_rabbitmq_telemetry_userid }}:{{ cinder_rabbitmq_telemetry_password }}@{{ host }}:{{ cinder_rabbitmq_telemetry_port }}{% if not loop.last %},{% else %}/{{ cinder_rabbitmq_telemetry_vhost }}{% endif %}{% endfor %} +transport_url = {{ cinder_oslomsg_notify_transport }}://{% for host in cinder_oslomsg_notify_servers.split(',') %}{{ cinder_oslomsg_notify_userid }}:{{ cinder_oslomsg_notify_password }}@{{ host }}:{{ cinder_oslomsg_notify_port }}{% if not loop.last %},{% else %}/{{ cinder_oslomsg_notify_vhost }}{% if cinder_oslomsg_notify_use_ssl | bool %}?ssl=1{% else %}?ssl=0{% endif %}{% endif %}{% endfor %} {% endif %} [oslo_concurrency] diff --git a/tests/inventory b/tests/inventory index 93ed5a0e..89ab86f1 100644 --- a/tests/inventory +++ b/tests/inventory @@ -9,6 +9,12 @@ infra1 keystone cinder +[oslomsg_rpc_all] +infra1 + +[oslomsg_notify_all] +infra1 + [rabbitmq_all] infra1