Eugene,<div><br></div><div>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.</div><div><br>

</div><div>--</div><div>Best regards,</div><div>Oleg Gelbukh</div><div>Mirantis, Inc.<br><br><div class="gmail_quote">On Mon, Jul 23, 2012 at 10:58 PM, Eugene Kirpichov <span dir="ltr"><<a href="mailto:ekirpichov@gmail.com" target="_blank">ekirpichov@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I'm working on a RabbitMQ H/A patch right now.<br>
<br>
It actually involves more than just using H/A queues (unless you're<br>
willing to add a TCP load balancer on top of your RMQ cluster).<br>
You also need to add support for multiple RabbitMQ's directly to nova.<br>
This is not hard at all, and I have the patch ready and tested in<br>
production.<br>
<br>
Alessandro, if you need this urgently, I can send you the patch right<br>
now before the discussion codereview for inclusion in core nova.<br>
<br>
The only problem is, it breaks backward compatibility a bit: my patch<br>
assumes you have a flag "rabbit_addresses" which should look like<br>
"rmq-host1:5672,rmq-host2:5672" instead of the prior rabbit_host and<br>
rabbit_port flags.<br>
<br>
Guys, can you advise on a way to do this without being ugly and<br>
without breaking compatibility?<br>
Maybe have "rabbit_host", "rabbit_port" be ListOpt's? But that sounds<br>
weird, as their names are in singular.<br>
Maybe have "rabbit_host", "rabbit_port" and also "rabbit_host2",<br>
"rabbit_port2" (assuming we only have clusters of 2 nodes)?<br>
Something else?<br>
<div class="HOEnZb"><div class="h5"><br>
On Mon, Jul 23, 2012 at 11:27 AM, Jay Pipes <<a href="mailto:jaypipes@gmail.com">jaypipes@gmail.com</a>> wrote:<br>
> On 07/23/2012 09:02 AM, Alessandro Tagliapietra wrote:<br>
>> Hi guys,<br>
>><br>
>> just an idea, i'm deploying Openstack trying to make it HA.<br>
>> The missing thing is rabbitmq, which can be easily started in<br>
>> active/active mode, but it needs to declare the queues adding an<br>
>> x-ha-policy entry.<br>
>> <a href="http://www.rabbitmq.com/ha.html" target="_blank">http://www.rabbitmq.com/ha.html</a><br>
>> It would be nice to add a config entry to be able to declare the queues<br>
>> in that way.<br>
>> If someone know where to edit the openstack code, else i'll try to do<br>
>> that in the next weeks maybe.<br>
><br>
> <a href="https://github.com/openstack/openstack-common/blob/master/openstack/common/rpc/impl_kombu.py" target="_blank">https://github.com/openstack/openstack-common/blob/master/openstack/common/rpc/impl_kombu.py</a><br>


><br>
> You'll need to add the config options there and the queue is declared<br>
> here with the options supplied to the ConsumerBase constructor:<br>
><br>
> <a href="https://github.com/openstack/openstack-common/blob/master/openstack/common/rpc/impl_kombu.py#L114" target="_blank">https://github.com/openstack/openstack-common/blob/master/openstack/common/rpc/impl_kombu.py#L114</a><br>


><br>
> Best,<br>
> -jay<br>
><br>
> _______________________________________________<br>
> Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
> Post to     : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>
> Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
> More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
<br>
<br>
<br>
</div></div><span class="HOEnZb"><font color="#888888">--<br>
Eugene Kirpichov<br>
<a href="http://www.linkedin.com/in/eugenekirpichov" target="_blank">http://www.linkedin.com/in/eugenekirpichov</a><br>
</font></span><div class="HOEnZb"><div class="h5"><br>
_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to     : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
</div></div></blockquote></div><br></div>