Define unique hostname for QManager

Due to the shortcoming of QManager implementation [1], in case of uWSGI
usage on metal hosts, the flow ends up with having the same
hostname/processname set, making services to fight over same file
under SHM.

In order to avoid this, we prepend the hostname with a service_name.
We can not change processname instead, since it will lead to the fight
between different processes of the same service.

[1] https://bugs.launchpad.net/oslo.messaging/+bug/2065922

Change-Id: If92f81bee0ffd3556e1b1e1f26e7572af04ff1b2
This commit is contained in:
Dmitriy Rabotyagov 2024-05-25 15:38:03 +02:00 committed by Dmitriy Rabotyagov
parent 37097eacb3
commit 428a647bdc
2 changed files with 6 additions and 0 deletions

View File

@ -35,6 +35,9 @@ rabbit_quorum_queue = {{ trove_guest_oslomsg_rabbit_quorum_queues }}
rabbit_transient_quorum_queue = {{ trove_guest_oslomsg_rabbit_transient_quorum_queues }}
rabbit_qos_prefetch_count = {{ trove_guest_oslomsg_rabbit_qos_prefetch_count }}
use_queue_manager = {{ trove_guest_oslomsg_rabbit_queue_manager }}
{% if trove_guest_oslomsg_rabbit_queue_manager %}
hostname = {{ [ansible_facts['hostname'], 'guest', trove_service_name] | join('-') }}
{% endif %}
rabbit_stream_fanout = {{ trove_guest_oslomsg_rabbit_stream_fanout }}
rabbit_quorum_delivery_limit = {{ trove_oslomsg_rabbit_quorum_delivery_limit }}
rabbit_quorum_max_memory_bytes = {{ trove_oslomsg_rabbit_quorum_max_memory_bytes }}

View File

@ -130,6 +130,9 @@ rabbit_quorum_queue = {{ trove_oslomsg_rabbit_quorum_queues }}
rabbit_transient_quorum_queue = {{ trove_oslomsg_rabbit_transient_quorum_queues }}
rabbit_qos_prefetch_count = {{ trove_oslomsg_rabbit_qos_prefetch_count }}
use_queue_manager = {{ trove_oslomsg_rabbit_queue_manager }}
{% if trove_oslomsg_rabbit_queue_manager %}
hostname = {{ [ansible_facts['hostname'], trove_service_name] | join('-') }}
{% endif %}
rabbit_stream_fanout = {{ trove_oslomsg_rabbit_stream_fanout }}
rabbit_quorum_delivery_limit = {{ trove_oslomsg_rabbit_quorum_delivery_limit }}
rabbit_quorum_max_memory_bytes = {{ trove_oslomsg_rabbit_quorum_max_memory_bytes }}