<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=us-ascii"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"Plain Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.5pt;
        font-family:"Calibri","sans-serif";}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
span.PlainTextChar
        {mso-style-name:"Plain Text Char";
        mso-style-priority:99;
        mso-style-link:"Plain Text";
        font-family:"Calibri","sans-serif";}
span.EmailStyle19
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Consolas","serif";}
span.EmailStyle22
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:black;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple style='word-wrap: break-word;-webkit-nbsp-mode: space;-webkit-line-break: after-white-space'><div class=WordSection1><p class=MsoNormal><span style='color:black'>Hi Erik, today we have compute, block/volume, and network all encompassed in nova. Along with image and object storage these make the whole of OpenStack today. The goal is to see where we are at wrt the OpenStack API (compute/network/volume/image) and coverage of the underlying implementation as well as what is available through the EC2 API today.<o:p></o:p></span></p><p class=MsoNormal><span style='color:black'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:black'>I would propose that volume and network API’s be exposed not through the core compute API, but as extensions. Once we create separate services and factor network and volume services out of nova these API’s will form the core API’s for these services. We may also need to up-version these service API’s between Cactus and Diablo as they are currently under heavy discussion and design.<o:p></o:p></span></p><p class=MsoNormal><span style='color:black'><o:p> </o:p></span></p><p class=MsoNormal><span style='color:black'>John<o:p></o:p></span></p><p class=MsoNormal><span style='color:black'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> Erik Carlin [mailto:erik.carlin@rackspace.com] <br><b>Sent:</b> Monday, February 28, 2011 3:16 PM<br><b>To:</b> John Purrier; openstack@lists.launchpad.net<br><b>Subject:</b> Re: [Openstack] OpenStack Compute API for Cactus (critical!)<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal><span style='font-size:10.5pt;color:black'>John -<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:10.5pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:10.5pt;color:black'>Are we just talking about compute aspects?  IMO, we should NOT be exposing block functionality in the OS compute API.  In Diablo, we will break out block into a separate service with it's own OS block API.  That means for now, there may be functionality in nova that isn't exposed (an artifact of originally mimicing EC2) until we can fully decompose nova into independent services.<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:10.5pt;color:black'><o:p> </o:p></span></p></div><div><p class=MsoNormal><span style='font-size:10.5pt;color:black'>Erik   <o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:10.5pt;color:black'><o:p> </o:p></span></p></div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='color:black'>From: </span></b><span style='color:black'>John Purrier <<a href="mailto:john@openstack.org">john@openstack.org</a>><br><b>Date: </b>Mon, 28 Feb 2011 14:16:20 -0600<br><b>To: </b><<a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a>><br><b>Subject: </b>[Openstack] OpenStack Compute API for Cactus (critical!)<o:p></o:p></span></p></div><div><p class=MsoNormal><span style='font-size:10.5pt;color:black'><o:p> </o:p></span></p></div><div><div><p class=MsoNormal><span style='color:black'>Has anyone done a gap analysis against the proposed OpenStack Compute API and a) the implemented code, and b) the EC2 API?<o:p></o:p></span></p><p class=MsoNormal><span style='color:black'> <o:p></o:p></span></p><p class=MsoNormal><span style='color:black'>It looks like we have had a breakdown in process, as the community review process of the proposed spec has not generated discussion of the missing aspects of the proposed spec. <o:p></o:p></span></p><p class=MsoNormal><span style='color:black'> <o:p></o:p></span></p><p class=MsoPlainText><span style='color:black'>Here is what we said on Feb 3 as the goal for Cactus:<o:p></o:p></span></p><p class=MsoPlainText><span style='color:black'> <o:p></o:p></span></p><p class=MsoPlainText><b><span style='font-size:14.0pt;color:black'>OpenStack Compute API completed. We need to complete a working set of API's that are <u>consistent and inclusive of all the exposed functionality</u>.</span></b><span style='color:black'><o:p></o:p></span></p><p class=MsoNormal><span style='color:black'> <o:p></o:p></span></p><p class=MsoNormal><span style='color:black'>We need to *<b>very</b>* quickly identify the missing elements that are required in the OpenStack Compute API, and then discuss how we mobilize to get this work done for Cactus. As this is the #1 priority for this release there are implications on milestones dates depending on the results of this exercise. The 1.1 spec should be complete and expose all current Nova functionality (superset of EC2/RS). <o:p></o:p></span></p><p class=MsoNormal><span style='color:black'> <o:p></o:p></span></p><p class=MsoNormal><span style='color:black'>Dendrobates, please take the lead on this, anyone who can help please coordinate with Rick. Can we get a fairly complete view by EOD tomorrow? Please set up a wiki page to identify the gaps, I suggest 3 columns (Actual code / EC2 / OpenStack Compute).<o:p></o:p></span></p><p class=MsoPlainText><span style='font-size:11.0pt;color:black'> </span><span style='color:black'><o:p></o:p></span></p><p class=MsoPlainText><span style='font-size:11.0pt;color:black'>Thanks,</span><span style='color:black'><o:p></o:p></span></p><p class=MsoPlainText><span style='font-size:11.0pt;color:black'> </span><span style='color:black'><o:p></o:p></span></p><p class=MsoPlainText><span style='font-size:11.0pt;color:black'>John</span><span style='color:black'><o:p></o:p></span></p></div></div><p class=MsoNormal><span style='font-size:10.5pt;color:black'>_______________________________________________ Mailing list: <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a> Post to : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a> Unsubscribe : <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a> More help : <a href="https://help.launchpad.net/ListHelp">https://help.launchpad.net/ListHelp</a> <o:p></o:p></span></p><pre><span style='color:black'><o:p> </o:p></span></pre><pre><span style='color:black'>Confidentiality Notice: This e-mail message (including any attached or<o:p></o:p></span></pre><pre><span style='color:black'>embedded documents) is intended for the exclusive and confidential use of the<o:p></o:p></span></pre><pre><span style='color:black'>individual or entity to which this message is addressed, and unless otherwise<o:p></o:p></span></pre><pre><span style='color:black'>expressly indicated, is confidential and privileged information of Rackspace.<o:p></o:p></span></pre><pre><span style='color:black'>Any dissemination, distribution or copying of the enclosed material is prohibited.<o:p></o:p></span></pre><pre><span style='color:black'>If you receive this transmission in error, please notify us immediately by e-mail<o:p></o:p></span></pre><pre><span style='color:black'>at abuse@rackspace.com, and delete the original message.<o:p></o:p></span></pre><pre><span style='color:black'>Your cooperation is appreciated.<o:p></o:p></span></pre></div></body></html>