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 <[email protected]>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 <[email protected]> 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 : [email protected] > > 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 : [email protected] > Unsubscribe : https://launchpad.net/~openstack > More help : https://help.launchpad.net/ListHelp >
_______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : [email protected] Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp

