[Openstack] How to achieve HA and Scalability for Neutron

Jay Pipes jaypipes at gmail.com
Thu Dec 26 19:16:02 UTC 2013


On 12/26/2013 01:44 PM, Jay Pipes wrote:
> On 12/26/2013 12:54 PM, Clint Byrum wrote:
>> Excerpts from Jay Pipes's message of 2013-12-26 08:58:10 -0800:
>>> On 12/26/2013 07:43 AM, skywalker.nick at gmail.com wrote:
>>>> Hi stackers,
>>>> I'm preparing for an OpenStack cloud in the production system. I've
>>>> achieved HA and load balancing for most of the components to a certain
>>>> degree.
>>>> Finally I find it hard for Neutron to do such configuration. Are there
>>>> any ways to run multiple l3-agents and dhcp-agents and cluster them
>>>> together?
>>>
>>> Right, the Neutron L3 agent is the only OpenStack service that is not
>>> stateless, and therefore you cannot use traditional load-balancing
>>> across a set of identical nodes.
>>>
>>> That said, there's nothing wrong with running multiple L3 nodes, with
>>> routers for different tenants hosted on different L3 agents. We do this
>>> successfully in our deployment using a custom Neutron scheduler that my
>>> colleague Alan Meadows wrote [1] and a Python script (also written by
>>> Alan) that runs in cron looking for failures on an L3 agent and if
>>> found, moves the routers from the failed node to a working one. [2]
>>
>> This sounds pretty great Jay. Do you have plans to submit it to Neutron
>> as a standard feature? Pretty much everybody needs this.
>
> Alan submitted a couple fixes it a long time ago [1] during the time
> when he wrote the least utilized scheduler but they were rejected
> because of ML2 rework going through at the time, so he didn't think
> there was much use trying to get the scheduler in...
>
> Starting in the new year, I will be working on contributing to Neutron's
> core and scheduling code and will go ahead and submit Alan's work, along
> with unit tests as one of my first patches. I'm also working on
>
> Best,
> -jay
>
> [1]
> https://review.openstack.org/#/q/project:openstack/neutron+owner:alanmeadows,n,z

Actually, it looks like Sylvain already added similar functionality in 
Icehouse a couple weeks ago:

https://github.com/openstack/neutron/commit/91a7697b1e4f3fde9f71983ed61512ee193c5f7d

-jay





More information about the Openstack mailing list