Bug 1347371 - RFE: Balance Rabbitmq Queue Master Location on queue declaration with min-masters strategy
Summary: RFE: Balance Rabbitmq Queue Master Location on queue declaration with min-mas...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-heat-templates
Version: 10.0 (Newton)
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: rc
: 10.0 (Newton)
Assignee: Michele Baldessari
QA Contact: Marian Krcmarik
URL:
Whiteboard:
Depends On:
Blocks: 1384167
TreeView+ depends on / blocked
 
Reported: 2016-06-16 15:53 UTC by Marian Krcmarik
Modified: 2023-02-22 23:02 UTC (History)
13 users (show)

Fixed In Version: openstack-tripleo-heat-templates-5.0.0-0.20161008015357.0d3e3e3.1.el7ost
Doc Type: Enhancement
Doc Text:
With this enhancement, RabbitMQ introduces the new HA feature of Queue Master distribution. One of the strategies is `min-masters`, which picks the node hosting the minimum number of masters. This was added because of the possibility that one of the controllers may become unavailable, with Queue Masters then located on available controllers during queue declarations. Once the lost controller becomes available again, masters of newly-declared queues are not placed with priority to the controller with an obviously lower number of queue masters, and consequently the distribution may be unbalanced, with one of the controllers under significantly higher load in the event of multiple fail-overs. As a result, this enhancement spreads out the queues across controllers after a controller fail-over.
Clone Of:
Environment:
Last Closed: 2016-12-14 15:40:14 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1629010 0 None None None 2016-09-29 16:43:28 UTC
OpenStack gerrit 379596 0 None None None 2016-09-29 16:52:33 UTC
Red Hat Product Errata RHEA-2016:2948 0 normal SHIPPED_LIVE Red Hat OpenStack Platform 10 enhancement update 2016-12-14 19:55:27 UTC

Description Marian Krcmarik 2016-06-16 15:53:41 UTC
Description of problem:
It may happen that one of the controllers may become unvailable and Queue Masters will be located on available controllers during queue declarations. Once lost controller will be become available masters of newly declared queues are not placed  prioritly to such controller with obviously lower number of queue masters and thus the distribution may be unbalanced and one of the controllers may become under significantly higher load in some circumstainces of multiple failovers.

rabbitmq introduced a new HA feature of Queue masters distribution - one of the strategies is min-masters, which picks the node hosting the minimum number of masters.

One of the ways how to turn such min-masters strategy on is by adding following into configuration file - rabbitmq.config
{rabbit,[ .
          .
          {queue_master_locator, <<"min-masters">>},
          .
          . ]},

The other two strategies are Client-Local (default) and Random.

Please consider turning min-masters strategy on in rabbitmq configuration.

Comment 2 Andrew Beekhof 2016-06-28 23:36:42 UTC
The goal of balancing the queues seems like a good one to me.

Chris, can you take care of updating director after validating with Peter that this is the best way to achieve it please?  I'd not expect this option to decrease availability in any way, but best to be sure.

Comment 6 Marian Krcmarik 2016-10-19 20:41:14 UTC
Verified.

$ sudo grep min-masters /etc/rabbitmq/rabbitmq.config
    {queue_master_locator, <<"min-masters">>},

Comment 8 errata-xmlrpc 2016-12-14 15:40:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-2948.html


Note You need to log in before you can comment on or make changes to this bug.