[Openstack] High Available queues in rabbitmq

Eugene Kirpichov ekirpichov at gmail.com
Mon Jul 23 19:46:17 UTC 2012


Yup, that's basically the same thing that Jay suggested :) Obvious in
retrospect...

On Mon, Jul 23, 2012 at 12:42 PM, Oleg Gelbukh <ogelbukh at mirantis.com> wrote:
> Eugene,
>
> I suggest just add option 'rabbit_servers' that will override
> 'rabbit_host'/'rabbit_port' pair, if present. This won't break anything, in
> my understanding.
>
> --
> Best regards,
> Oleg Gelbukh
> Mirantis, Inc.
>
>
> On Mon, Jul 23, 2012 at 10:58 PM, Eugene Kirpichov <ekirpichov at gmail.com>
> wrote:
>>
>> Hi,
>>
>> I'm working on a RabbitMQ H/A patch right now.
>>
>> It actually involves more than just using H/A queues (unless you're
>> willing to add a TCP load balancer on top of your RMQ cluster).
>> You also need to add support for multiple RabbitMQ's directly to nova.
>> This is not hard at all, and I have the patch ready and tested in
>> production.
>>
>> Alessandro, if you need this urgently, I can send you the patch right
>> now before the discussion codereview for inclusion in core nova.
>>
>> The only problem is, it breaks backward compatibility a bit: my patch
>> assumes you have a flag "rabbit_addresses" which should look like
>> "rmq-host1:5672,rmq-host2:5672" instead of the prior rabbit_host and
>> rabbit_port flags.
>>
>> Guys, can you advise on a way to do this without being ugly and
>> without breaking compatibility?
>> Maybe have "rabbit_host", "rabbit_port" be ListOpt's? But that sounds
>> weird, as their names are in singular.
>> Maybe have "rabbit_host", "rabbit_port" and also "rabbit_host2",
>> "rabbit_port2" (assuming we only have clusters of 2 nodes)?
>> Something else?
>>
>> On Mon, Jul 23, 2012 at 11:27 AM, Jay Pipes <jaypipes at gmail.com> wrote:
>> > On 07/23/2012 09:02 AM, Alessandro Tagliapietra wrote:
>> >> Hi guys,
>> >>
>> >> just an idea, i'm deploying Openstack trying to make it HA.
>> >> The missing thing is rabbitmq, which can be easily started in
>> >> active/active mode, but it needs to declare the queues adding an
>> >> x-ha-policy entry.
>> >> http://www.rabbitmq.com/ha.html
>> >> It would be nice to add a config entry to be able to declare the queues
>> >> in that way.
>> >> If someone know where to edit the openstack code, else i'll try to do
>> >> that in the next weeks maybe.
>> >
>> >
>> > https://github.com/openstack/openstack-common/blob/master/openstack/common/rpc/impl_kombu.py
>> >
>> > You'll need to add the config options there and the queue is declared
>> > here with the options supplied to the ConsumerBase constructor:
>> >
>> >
>> > https://github.com/openstack/openstack-common/blob/master/openstack/common/rpc/impl_kombu.py#L114
>> >
>> > Best,
>> > -jay
>> >
>> > _______________________________________________
>> > Mailing list: https://launchpad.net/~openstack
>> > Post to     : openstack at lists.launchpad.net
>> > Unsubscribe : https://launchpad.net/~openstack
>> > More help   : https://help.launchpad.net/ListHelp
>>
>>
>>
>> --
>> Eugene Kirpichov
>> http://www.linkedin.com/in/eugenekirpichov
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~openstack
>> Post to     : openstack at lists.launchpad.net
>> Unsubscribe : https://launchpad.net/~openstack
>> More help   : https://help.launchpad.net/ListHelp
>
>



-- 
Eugene Kirpichov
http://www.linkedin.com/in/eugenekirpichov




More information about the Openstack mailing list