[openstack-dev] [neutron] BGP Dynamic Routing Development Going Forward

Tidwell, Ryan ryan.tidwell at hpe.com
Mon Jan 25 16:23:28 UTC 2016


Responses inline

From: Gal Sagie [mailto:gal.sagie at gmail.com]
Sent: Friday, January 22, 2016 9:49 PM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [neutron] BGP Dynamic Routing Development Going Forward

The real question that needs to be asked (at least for me) is how this feature can work with other plugins/ML2 drivers
that are not the reference implementation.


-                      Regardless of the ML2 drivers you use, ML2 is supported with the reference implementation.  The code we have only works with ML2 though, which is a concern for putting this in the main repo.

How hard (possible) it is to take the API part (or maybe even the agent) and use that in another Neutron implementation.
Then focus on which ever option that works best to achieve this.


-          The agent is actually very portable in my opinion.  The server-side code is not so portable, as mentioned above only ML2 is supported.  Identifying next-hops is done by querying the DB, it’s hard to make that portable between plugins.

I personally think that if the long term goal is to have this in a separate repo then this should happen right now.
"We will do this later" just won't work, it will be harder and it will just not happen (or it will cause a lot of pain to people
that started deploying this)
At least thats my opinion, of course it depends a lot on the people who actually work on this...


-                      I completely agree which is why I’m not too excited about deferring a split.  It doesn’t really set us back in our development efforts to move out to a separate repo.  We’re quickly closing in on being functionally complete and this code peels out of the main repo rather cleanly, so I feel we really lose nothing by just moving to out of the main repo immediately if that’s the direction we go for the long haul.  As you point out it saves users some pain in during a future upgrade.

Gal.

On Sat, Jan 23, 2016 at 2:15 AM, Vikram Choudhary <vikschw at gmail.com<mailto:vikschw at gmail.com>> wrote:

I agree with Armando and feel option 2 would be viable if we really want to deliver this feature in Mitaka time frame. Adding a new stadium project invites more work and can be done in N release.

Thanks
Vikram
On Jan 22, 2016 11:47 PM, "Armando M." <armamig at gmail.com<mailto:armamig at gmail.com>> wrote:


On 22 January 2016 at 08:57, Tidwell, Ryan <ryan.tidwell at hpe.com<mailto:ryan.tidwell at hpe.com>> wrote:
I wanted to raise the question of whether to develop BGP dynamic routing in the Neutron repo or spin it out to as a stadium project.  This question has been raised recently on reviews and in offline discussions.  For those unfamiliar with this work, BGP efforts in Neutron entail admin-only API’s for configuring and propagating BGP announcements of next-hops for floating IP’s, tenant networks, and host routes for each compute port when using DVR.  As we are getting late in the Mitaka cycle, I would like to be sure there is consensus on the approach for Mitaka.  As I see it, we have 3 courses of action:

1. Continue with development in the main repo without any intention of spinning out to a stadium project
2. Continue on the current development course for Mitaka while targeting a spin-out to a stadium project during the N cycle
3. Spin out to a stadium project immediately

Each has pros and cons.  This question seems to have arisen while looking at the sheer amount code being proposed, its place in the Neutron model, and questioning whether we really want to bring that code into Neutron.  As such, continuing with option 1 definitely requires us to come to some consensus.  Let me be clear that I’m not opposed to any of these options, I’m simply looking for some guidance.  With that said, if the end game is a stadium project I do question whether #2 makes sense.

Not sure if you followed the latest discussion on [1,2] ([1] capturing the latest events). Delivering something production worthy goes a lot more beyond simply posting code upstream. We, as a community, have promised to deliver BGP capabilities for many cycles, and failed so far. Choosing 3 is clearly going to defer this to N or even O because of the amount of effort required to set it all up (release, docs, testing, etc). Option 2, as painful as it may sound, gives us the ability to get immediate access to all that's required to deliver something to users so that they can play with it at the end of Mitaka if they choose to. In the meantime that will give us some breathing room to get ready as soon as N opens up.

I am operating under the assumption that what you guys have been working on is close to being functionally complete. If we don't even have that, then we're in trouble no matter which option we choose and we can defer this yet again :/

Having said that, we can all agree that option #1 is not what we all want. Just to be clear, I am in favor of #2.

Cheers,
Armando

[1] https://review.openstack.org/#/c/268727/
[2] https://review.openstack.org/#/c/268726/


-Ryan

https://review.openstack.org/#/c/201621/
https://review.openstack.org/#/q/topic:bp/bgp-dynamic-routing


__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



--
Best Regards ,

The G.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160125/5e0a0d01/attachment.html>


More information about the OpenStack-dev mailing list