From 77478dfd99e1fc302aa353c3a358f3c893a0eff6 Mon Sep 17 00:00:00 2001 From: Dmitriy Rabotyagov Date: Fri, 10 May 2024 16:23:44 +0200 Subject: [PATCH] Implement variables to address oslo.messaging improvements During last release cycle oslo.messaging has landed [1] series of extremely useful changes that are designed to implement modern messaging techniques for rabbitmq quorum queues. Since these changes are breaking and require queues being re-created, it makes total sense to align these with migration to quorum queues by default. [1] https://review.opendev.org/q/topic:%22bug-2031497%22 Change-Id: I88e1fd869fa0e1e13184d17d5fa16364f87d14bd --- defaults/main.yml | 4 ++++ templates/octavia.conf.j2 | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/defaults/main.yml b/defaults/main.yml index 9c61f0c3..447d61f0 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -138,6 +138,10 @@ octavia_oslomsg_notify_policies: [] ## RabbitMQ integration octavia_oslomsg_rabbit_quorum_queues: "{{ oslomsg_rabbit_quorum_queues | default(True) }}" +octavia_oslomsg_rabbit_stream_fanout: "{{ oslomsg_rabbit_stream_fanout | default(octavia_oslomsg_rabbit_quorum_queues) }}" +octavia_oslomsg_rabbit_transient_quorum_queues: "{{ oslomsg_rabbit_transient_quorum_queues | default(octavia_oslomsg_rabbit_stream_fanout) }}" +octavia_oslomsg_rabbit_qos_prefetch_count: "{{ oslomsg_rabbit_qos_prefetch_count | default(octavia_oslomsg_rabbit_stream_fanout | ternary(10, 0)) }}" +octavia_oslomsg_rabbit_queue_manager: "{{ oslomsg_rabbit_queue_manager | default(octavia_oslomsg_rabbit_quorum_queues) }}" octavia_oslomsg_rabbit_quorum_delivery_limit: "{{ oslomsg_rabbit_quorum_delivery_limit | default(0) }}" octavia_oslomsg_rabbit_quorum_max_memory_bytes: "{{ oslomsg_rabbit_quorum_max_memory_bytes | default(0) }}" diff --git a/templates/octavia.conf.j2 b/templates/octavia.conf.j2 index 9a53faab..0ea43b66 100644 --- a/templates/octavia.conf.j2 +++ b/templates/octavia.conf.j2 @@ -24,6 +24,10 @@ topic = octavia_prov [oslo_messaging_rabbit] ssl = {{ octavia_oslomsg_rpc_use_ssl }} rabbit_quorum_queue = {{ octavia_oslomsg_rabbit_quorum_queues }} +rabbit_transient_quorum_queue = {{ octavia_oslomsg_rabbit_transient_quorum_queues }} +rabbit_qos_prefetch_count = {{ octavia_oslomsg_rabbit_qos_prefetch_count }} +use_queue_manager = {{ octavia_oslomsg_rabbit_queue_manager }} +rabbit_stream_fanout = {{ octavia_oslomsg_rabbit_stream_fanout }} rabbit_quorum_delivery_limit = {{ octavia_oslomsg_rabbit_quorum_delivery_limit }} rabbit_quorum_max_memory_bytes = {{ octavia_oslomsg_rabbit_quorum_max_memory_bytes }}