<div dir="ltr"><div><div>Thanks Neil, we'll review this during the drivers meeting this week. It's getting late in the Liberty cycle, but if you can get Brian, Cedric and Carl to review this and ensure they are onboard, this is the best way to move forward. Ensuring the L3 team is ok with the direction would make me comfortable here.<br><br></div>Thanks!<br></div>Kyle<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Aug 19, 2015 at 9:42 AM, Neil Jerram <span dir="ltr"><<a href="mailto:Neil.Jerram@metaswitch.com" target="_blank">Neil.Jerram@metaswitch.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">FYI, I've raised the new RFE bug that I suggested below:<br>
<a href="https://bugs.launchpad.net/neutron/+bug/1486649" rel="noreferrer" target="_blank">https://bugs.launchpad.net/neutron/+bug/1486649</a><br>
<br>
Neil<br>
<br>
<br>
On 18/08/15 23:22, Neil Jerram wrote:<br>
> Although the DHCP-related patches below are I think very close to mergeable, Brian Haley on IRC queried what, process-wise, motivates merging them now (for Liberty).<br>
><br>
> I think he's right that something is missing, so I'd like to discuss filling that hole here. What has happened so far is this:<br>
><br>
> - <a href="https://review.openstack.org/#/c/198439/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/198439/</a> described 'routed networking', which is the ultimate motivation for these patches.<br>
><br>
> - I realised/was told that there should be an RFE bug, per current process, so raised <a href="https://bugs.launchpad.net/neutron/+bug/1472704" rel="noreferrer" target="_blank">https://bugs.launchpad.net/neutron/+bug/1472704</a><br>
><br>
> - Those contributed to the beginning of discussions about supporting 'routed' or 'L3' networks in Neutron - which are ongoing and will take Mitaka at least to refine.<br>
><br>
> - Nevertheless, the DHCP-related patches are still valuable now (as explained below) and feasible within the Liberty timescale, so I've continued refining those.<br>
><br>
> - Discussions, which I believe supported this in principle, took place in neutron-drivers [1][2] and main Neutron [3] IRC meetings.<br>
><br>
> [1] <a href="http://eavesdrop.openstack.org/meetings/neutron_drivers/2015/neutron_drivers.2015-07-14-15.04.log.html" rel="noreferrer" target="_blank">http://eavesdrop.openstack.org/meetings/neutron_drivers/2015/neutron_drivers.2015-07-14-15.04.log.html</a><br>
><br>
> [2]<br>
> <a href="http://eavesdrop.openstack.org/meetings/neutron_drivers/2015/neutron_drivers.2015-07-21-15.00.log.html" rel="noreferrer" target="_blank">http://eavesdrop.openstack.org/meetings/neutron_drivers/2015/neutron_drivers.2015-07-21-15.00.log.html</a><br>
><br>
> [3] discussion between 14:49:44 and 14:56:49 at <a href="http://eavesdrop.openstack.org/meetings/networking/2015/networking.2015-07-28-14.01.log.html" rel="noreferrer" target="_blank">http://eavesdrop.openstack.org/meetings/networking/2015/networking.2015-07-28-14.01.log.html</a><br>
><br>
> The specific process issue now is that the patches that (IMO) make sense for Liberty reference a bug (1472704) that has a much wider scope and so is quite correctly not approved for Liberty.<br>
><br>
> So, what to do? My guess is to raise a new RFE bug that just motivates the DHCP agent support that I'd like to achieve - by way of the existing patches - in the Liberty timescale, ask neutron-drivers to approve that, and update the patches to reference that bug instead.<br>
><br>
> Does that sound right?<br>
><br>
> Regards,<br>
> Neil<br>
><br>
><br>
> <br>
> Original Message<br>
> From: Neil Jerram<br>
> Sent: Monday, 17 August 2015 18:47<br>
> To: OpenStack Development Mailing List (not for usage questions)<br>
> Reply To: OpenStack Development Mailing List (not for usage questions)<br>
> Subject: [openstack-dev] [neutron] New networking-calico project<br>
><br>
> I'd like to announce networking-calico, a new project within the Neutron<br>
> stadium to provide OpenStack integration pieces for Project Calico<br>
> [1][2]. In a sentence, Calico is a backend that uses routing and<br>
> iptables to provide IP-level connectivity between VMs, instead of - as<br>
> most Neutron backends do - using bridging to provide an effective L2<br>
> broadcast domain. You can read about why that might be interesting at<br>
> [1][2], or in more OpenStack-centric terms at [3].<br>
><br>
> Calico's semantics are not fully describable by the current Neutron API,<br>
> and I plan to contribute to API and data model work to address this.<br>
> Discussion about that has already begun at [3] and in the email thread<br>
> about 'routed, segmented networks' [4], and I hope it will continue<br>
> through the end of this cycle, in Tokyo, and during Mitaka.<br>
><br>
> For a practical deployment, though, and with some semantic caveats [5],<br>
> Calico-style connectivity can be used already in an OpenStack cluster -<br>
> and we have several operator partners interested in and trialling that.<br>
> My team has been developing and refining this since Icehouse, using<br>
> Calico-specific patches to Nova and Neutron, but we are now within<br>
> touching distance, we think, of working with vanilla OpenStack when<br>
> Liberty is released. We released our v1.0 milestone of the core Calico<br>
> code last week [14], our Nova patches were merged in July, and we have<br>
> the following core Neutron patches currently in review.<br>
><br>
> [6] <a href="https://review.openstack.org/#/c/205181/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/205181/</a><br>
> [7] <a href="https://review.openstack.org/#/c/206078/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/206078/</a><br>
> [8] <a href="https://review.openstack.org/#/c/206077/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/206077/</a><br>
> [9] <a href="https://review.openstack.org/#/c/206079/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/206079/</a><br>
><br>
> These patches have been through many cycles of review - thanks in<br>
> particular to Cedric and Oleg - and are now, I believe, fully tested and<br>
> polished. They make small generalizations to the DHCP agent code so<br>
> that a networking-calico-provided interface driver will be able to use<br>
> it, instead of having to provide a parallel DHCP agent implementation.<br>
> I would particularly appreciate if Neutron core reviewers would consider<br>
> reviewing and approving [6] and [7] now, as they are the changes that<br>
> would be messiest if I had to reimplement them out-of-tree using some<br>
> kind of subclassing approach.<br>
><br>
> Then the plan for networking-calico is that it will contain docs, an ML2<br>
> mechanism driver, a DHCP interface driver, and a Devstack plugin for<br>
> Calico. These aren't yet at [10], but I will be getting on with that<br>
> shortly, and you can already see those pieces in other forms (which will<br>
> be retired) at [11], [12] and [13]. Hence, within the next few weeks, I<br>
> hope that networking-calico and the vanilla Neutron tree (+ the core<br>
> Calico project) will provide a complete demonstration of this kind of<br>
> networking.<br>
><br>
> Looking ahead, we will also set up a regular IRC meeting for people<br>
> interested in networking-calico. I'll write again at the time, but<br>
> please do let me know if you'd like to be pinged when that is being<br>
> arranged.<br>
><br>
> Many thanks for your attention - please do let me know if you have<br>
> questions!<br>
><br>
> Neil<br>
><br>
><br>
><br>
> [1] <a href="http://www.projectcalico.org/" rel="noreferrer" target="_blank">http://www.projectcalico.org/</a><br>
> [2] <a href="http://docs.projectcalico.org/en/latest/" rel="noreferrer" target="_blank">http://docs.projectcalico.org/en/latest/</a><br>
> [3] <a href="https://review.openstack.org/#/c/198439/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/198439/</a><br>
> [4] <a href="http://lists.openstack.org/pipermail/openstack-dev/2015-July/070028.html" rel="noreferrer" target="_blank">http://lists.openstack.org/pipermail/openstack-dev/2015-July/070028.html</a><br>
> [5] <a href="http://docs.projectcalico.org/en/latest/calico-neutron-api.html" rel="noreferrer" target="_blank">http://docs.projectcalico.org/en/latest/calico-neutron-api.html</a><br>
> [10] <a href="https://git.openstack.org/cgit/openstack/networking-calico" rel="noreferrer" target="_blank">https://git.openstack.org/cgit/openstack/networking-calico</a><br>
> [11] <a href="https://github.com/projectcalico/calico/tree/master/calico/openstack" rel="noreferrer" target="_blank">https://github.com/projectcalico/calico/tree/master/calico/openstack</a><br>
> [12] <a href="https://review.openstack.org/#/c/197578/" rel="noreferrer" target="_blank">https://review.openstack.org/#/c/197578/</a><br>
> [13] <a href="https://github.com/projectcalico/calico/tree/routed/devstack" rel="noreferrer" target="_blank">https://github.com/projectcalico/calico/tree/routed/devstack</a><br>
> [14] <a href="http://www.projectcalico.org/announcing-calico-v1-0/" rel="noreferrer" target="_blank">http://www.projectcalico.org/announcing-calico-v1-0/</a><br>
><br>
><br>
> __________________________________________________________________________<br>
> OpenStack Development Mailing List (not for usage questions)<br>
> Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
><br>
<br>
<br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" rel="noreferrer" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" rel="noreferrer" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</blockquote></div><br></div>