<br><br><div class="gmail_quote">On Mon, Jan 31, 2011 at 10:40 AM, John Purrier <span dir="ltr"><<a href="mailto:john@openstack.org">john@openstack.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

<div link="blue" vlink="purple" lang="EN-US"><div><p class="MsoNormal"><span style="font-size: 11pt; color: black;">In order to bring this discussion to a close and get everyone on the same page for Cactus development, here is where we have landed:</span></p>

<p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p><p><span style="font-size: 11pt; color: black;"><span>1.<span style="font: 7pt "Times New Roman";">       </span></span></span><span style="font-size: 11pt; color: black;">We will *<b>not</b>* be separating the network and volume controllers and API servers from the Nova project.</span></p>

</div></div></blockquote><div><br>I think this is definitely the right move. <br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div link="blue" vlink="purple" lang="EN-US">

<div><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p><p><span style="font-size: 11pt; color: black;"><span>2.<span style="font: 7pt "Times New Roman";">       </span></span></span><span style="font-size: 11pt; color: black;">On-going work to extend the Nova capabilities in these areas will be done within the existing project and be based on extending the existing implementation. The folks working on these projects will determine the best approach for code re-use, extending functionality, and potential integration of additional community contributions in each area.</span></p>

<p><span style="font-size: 11pt; color: black;"> </span></p><p><span style="font-size: 11pt; color: black;"><span>3.<span style="font: 7pt "Times New Roman";">       </span></span></span><span style="font-size: 11pt; color: black;">Like all efforts for Cactus, correct trade-offs must be made to maintain deployability, stability, and reliability (key themes of the release).</span></p>

<p><span style="font-size: 11pt; color: black;"> </span></p><p><span style="font-size: 11pt; color: black;"><span>4.<span style="font: 7pt "Times New Roman";">       </span></span></span><span style="font-size: 11pt; color: black;">Core design concepts allowing each service to horizontally scale independently, present public/management/event interfaces through a documented OpenStack API, and allow services to be deployed independently of each other must be maintained. If issues arise that do not allow the current code structure to support these concepts the teams should raise the issues and open discussions on how to best address.</span></p>

<p><span style="font-size: 11pt; color: black;"> </span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;">We will target the Diablo design summit to discuss and review the progress made on these services and determine if the best approach to the project has been made.</span></p>

<p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;">Thoughts?</span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p>

<p class="MsoNormal"><span style="font-size: 11pt; color: black;">John</span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p><div style="border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; padding: 3pt 0in 0in;">

<p class="MsoNormal"><b><span style="font-size: 10pt;">From:</span></b><span style="font-size: 10pt;"> Andy Smith [mailto:<a href="mailto:andyster@gmail.com" target="_blank">andyster@gmail.com</a>] <br><b>Sent:</b> Friday, January 28, 2011 4:06 PM<div>

<div></div><div class="h5"><br><b>To:</b> John Purrier<br><b>Cc:</b> Rick Clark; Jay Pipes; Ewan Mellor; Søren Hansen; <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br><b>Subject:</b> Re: [Openstack] Network Service for L2/L3 Network Infrastructure blueprint</div>

</div></span></p></div><div><div></div><div class="h5"><p class="MsoNormal"> </p><p class="MsoNormal" style="margin-bottom: 12pt;"> </p><div><p class="MsoNormal">On Fri, Jan 28, 2011 at 1:19 PM, John Purrier <<a href="mailto:john@openstack.org" target="_blank">john@openstack.org</a>> wrote:</p>

<div><div><p class="MsoNormal"><span style="font-size: 11pt; color: black;">Thanks for the response, Andy. I think we actually agree on this </span><span style="font-size: 11pt; font-family: Wingdings; color: black;">J</span><span style="font-size: 11pt; color: black;">.</span></p>

<div><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;">You said:</span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p>

<p class="MsoNormal" style="margin-left: 0.5in;"><i>This statement is invalid, nova is already broken into services, each of which can be dealt with individually and scaled as such, whether the code is part of the same repository has little bearing on that. The goals of scaling are orthogonal to the location of the code and are much more related to separation of concerns in the code, making</i> sure <i>that volume code does not rely on compute code for example (which at this point it doesn't particularly).</i></p>

<p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p></div><p class="MsoNormal"><span style="font-size: 11pt; color: black;">The fact that the volume code and the compute code are not coupled make the separation easy. One factor that I did not mention is that each service will present public, management, and optional extension APIs, allowing each service to be deployed independently.</span></p>

</div></div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">So far that is all possible under the existing auspices of Nova. DirectAPI will happily sit in front of any of the services independently, any of the services when run can be configured with different instances of RabbitMQ to point at, DirectAPI supports a large amount of extensibility and pluggable managers/drivers support a bunch more.</p>

</div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">Decoupling of the code has always been a goal, as have been providing public, management, and extension APIs and we aren't doing so bad.</p></div><div>

<p class="MsoNormal"> </p></div><div><p class="MsoNormal">I don't think we disagree about wanting to run things independently, but for the moment I have seen no convincing arguments for separating the codebase.</p></div>

<div><p class="MsoNormal"> </p></div><div><p class="MsoNormal"> </p></div><blockquote style="border-width: medium medium medium 1pt; border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color rgb(204, 204, 204); padding: 0in 0in 0in 6pt; margin-left: 4.8pt; margin-right: 0in;">

<div><div><div><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;">You said:</span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p>

<p class="MsoNormal" style="margin-left: 0.5in;"><i>That suggestion is contradictory, first you say not to separate then you suggest creating separate projects. I am against creating separate projects, the development is part of Nova until at least Cactus.</i></p>

<p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p></div><p class="MsoNormal"><span style="font-size: 11pt; color: black;">This is exactly my suggestion below. Keep Nova monolithic until Cactus, then integrate the new services once Cactus is shipped. There is work to be done to create the service frameworks, API engines, extension mechanisms, and porting the existing functionality. All of this can be done in parallel to the stability work being done in the Nova code base. As far as I know there are not major updates coming in either the volume or network management code for this milestone.</span></p>

</div></div></blockquote><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">Where is this parallel work being done if not in a separate project?</p></div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">

--andy</p></div><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal"> </p></div><blockquote style="border-width: medium medium medium 1pt; border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color rgb(204, 204, 204); padding: 0in 0in 0in 6pt; margin-left: 4.8pt; margin-right: 0in;">

<div><div><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;">John</span></p><p class="MsoNormal"><span style="font-size: 11pt; color: black;"> </span></p>

<div style="border-width: 1pt medium medium; border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; padding: 3pt 0in 0in;"><p class="MsoNormal"><b><span style="font-size: 10pt;">From:</span></b><span style="font-size: 10pt;"> Andy Smith [mailto:<a href="mailto:andyster@gmail.com" target="_blank">andyster@gmail.com</a>] <br>

<b>Sent:</b> Friday, January 28, 2011 12:45 PM<br><b>To:</b> John Purrier<br><b>Cc:</b> Rick Clark; Jay Pipes; Ewan Mellor; Søren Hansen; <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a></span></p>

<div><div><p class="MsoNormal"><br><b>Subject:</b> Re: [Openstack] Network Service for L2/L3 Network Infrastructure blueprint</p></div></div></div><div><div><p class="MsoNormal"> </p><p class="MsoNormal" style="margin-bottom: 12pt;">

 </p><div><p class="MsoNormal">On Fri, Jan 28, 2011 at 10:18 AM, John Purrier <<a href="mailto:john@openstack.org" target="_blank">john@openstack.org</a>> wrote:</p><p class="MsoNormal">Some clarification and a suggestion regarding Nova and the two new proposed services (Network/Volume).<br>

<br>To be clear, Nova today contains both volume and network services. We can specify, attach, and manage block devices and also specify network related items, such as IP assignment and VLAN creation. I have heard there is some confusion on this, since we started talking about creating OpenStack services around these areas that will be separate from the cloud controller (Nova).<br>

<br>The driving factors to consider creating independent services for VM, Images, Network, and Volumes are 1) To allow deployment scenarios that may be scoped to a single service, so that we don't drag all of the Nova code in if we just want to deploy virtual volumes, and 2) To allow greater innovation and community contribution to the individual services.<br>

<br>Another nice effect of separation of services is that each service can scale horizontally per the demands of the deployment, independent of the other services.</p><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">

This statement is invalid, nova is already broken into services, each of which can be dealt with individually and scaled as such, whether the code is part of the same repository has little bearing on that. The goals of scaling are orthogonal to the location of the code and are much more related to separation of concerns in the code, making sure that volume code does not rely on compute code for example (which at this point it doesn't particularly).</p>

</div><div><p class="MsoNormal"> </p></div><blockquote style="border-width: medium medium medium 1pt; border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color rgb(204, 204, 204); padding: 0in 0in 0in 6pt; margin: 5pt 0in 5pt 4.8pt;">

<p class="MsoNormal" style="margin-bottom: 12pt;"><br>We have an existing blueprint discussing the Network Service. We have *not* published a blueprint discussing the Volume Service, this will be coming soon.</p></blockquote>

<blockquote style="border-width: medium medium medium 1pt; border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color rgb(204, 204, 204); padding: 0in 0in 0in 6pt; margin: 5pt 0in 5pt 4.8pt;">

<p class="MsoNormal" style="margin-bottom: 12pt;">The net is that creating the correct architecture in OpenStack Compute (automation and infrastructure) is a good thing as we look to the future evolution of the project.<br>

<br>Here is the suggestion. It is clear from the response on the list that refactoring Nova in the Cactus timeframe will be too risky, particularly as we are focusing Cactus on Stability, Reliability, and Deployability (along with a complete OpenStack API). For Cactus we should leave the network and volume services alone in Nova to minimize destabilizing the code base. In parallel, we can initiate the Network and Volume Service projects in Launchpad and allow the teams that form around these efforts to move in parallel, perhaps seeding their projects from the existing Nova code.</p>

</blockquote><div><p class="MsoNormal"> </p></div><div><p class="MsoNormal">That suggestion is contradictory, first you say not to separate then you suggest creating separate projects. I am against creating separate projects, the development is part of Nova until at least Cactus.</p>

</div><div><p class="MsoNormal"> </p></div><blockquote style="border-width: medium medium medium 1pt; border-style: none none none solid; border-color: -moz-use-text-color -moz-use-text-color -moz-use-text-color rgb(204, 204, 204); padding: 0in 0in 0in 6pt; margin: 5pt 0in 5pt 4.8pt;">

<p class="MsoNormal">Once we complete Cactus we can have discussions at the Diablo DS about progress these efforts have made and how best to move forward with Nova integration and determine release targets.<br><br>Thoughts?<br>

<span style="color: rgb(136, 136, 136);"><br>John</span></p><div><div><p class="MsoNormal" style="margin-bottom: 12pt;"><br>-----Original Message-----<br>From: openstack-bounces+john=<a href="http://openstack.org" target="_blank">openstack.org</a>@<a href="http://lists.launchpad.net" target="_blank">lists.launchpad.net</a> [mailto:<a href="mailto:openstack-bounces%2Bjohn" target="_blank">openstack-bounces+john</a>=<a href="http://openstack.org" target="_blank">openstack.org</a>@<a href="http://lists.launchpad.net" target="_blank">lists.launchpad.net</a>] On Behalf Of Rick Clark<br>

Sent: Friday, January 28, 2011 9:06 AM<br>To: Jay Pipes<br>Cc: Ewan Mellor; Søren Hansen; <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>Subject: Re: [Openstack] Network Service for L2/L3 Network Infrastructure blueprint<br>

<br>On 01/28/2011 08:55 AM, Jay Pipes wrote:<br>> On Fri, Jan 28, 2011 at 8:47 AM, Rick Clark <<a href="mailto:rick@openstack.org" target="_blank">rick@openstack.org</a>> wrote:<br>> I recognise the desire to do this for Cactus, but I feel that pulling<br>

> out the network controller (and/or volume controller) into their own<br>> separate OpenStack subprojects is not a good idea for Cactus.  Looking<br>> at the (dozens of) blueprints slated for Cactus, doing this kind of<br>

> major rework will mean that most (if not all) of those blueprints will<br>> have to be delayed while this pulling out of code occurs. This will<br>> definitely jeopardise the Cactus release.<br>><br>> My vote is to delay this at a minimum to the Diablo release.<br>

><br>> And, for the record, I haven't seen any blueprints for the network as<br>> a service or volume as a service projects. Can someone point us to<br>> them?<br>><br>> Thanks!<br>> jay<br><br>Whew, Jay I thought you were advocating major changes in Cactus.  That would completely mess up my view of the world :)<br>

<br><a href="https://blueprints.launchpad.net/nova/+spec/bexar-network-service" target="_blank">https://blueprints.launchpad.net/nova/+spec/bexar-network-service</a><br><a href="https://blueprints.launchpad.net/nova/+spec/bexar-extend-network-model" target="_blank">https://blueprints.launchpad.net/nova/+spec/bexar-extend-network-model</a><br>

<a href="https://blueprints.launchpad.net/nova/+spec/bexar-network-service" target="_blank">https://blueprints.launchpad.net/nova/+spec/bexar-network-service</a><br><br><br>It was discussed at ODS, but I have not seen any code or momentum, to date.<br>

<br>I think it is worth while to have an open discussion about what if any of this can be safely done in Cactus.  I like you, Jay, feel a bit conservative.  I think we lost focus of the reason we chose time based releases. It is time to focus on nova being a solid trustworthy platform.  Features land when they are of sufficient quality, releases contain only the features that passed muster.<br>

<br>I will be sending an email about the focus and theme of Cactus in a little while.<br><br>Rick<br><br><br></p></div></div><div><div><p class="MsoNormal">_______________________________________________<br>Mailing list: <a href="https://launchpad.net/%7Eopenstack" target="_blank">https://launchpad.net/~openstack</a><br>

Post to     : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>Unsubscribe : <a href="https://launchpad.net/%7Eopenstack" 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></p></div></div></blockquote></div><p class="MsoNormal"> </p></div></div></div></div></blockquote></div><p class="MsoNormal">

 </p></div></div></div></div><br>_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/%7Eopenstack" 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/%7Eopenstack" 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></blockquote></div><br><br clear="all"><br>-- <br>~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>Dan Wendlandt <br>Nicira Networks, Inc. <br><a href="http://www.nicira.com">www.nicira.com</a> | <a href="http://www.openvswitch.org">www.openvswitch.org</a><br>

Sr. Product Manager <br>cell: 650-906-2650<br>~~~~~~~~~~~~~~~~~~~~~~~~~~~<br><br>