<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    Hi Hongbin,<br>
    <br>
    What would be the value of having COE-specific magnum command to go
    and talk to DB? As in that case, user may use the native client
    itself to fetch the data from COE, which even will have latest
    state.<br>
    <br>
    In a pluggable architecture there is always scope for common
    abstraction and driver implementation. I think it is too early to
    declare service/rc/pod as specific to k8s, as the other COEs may
    very well converge onto similar/same concepts.<br>
    <br>
    <pre class="moz-signature" cols="72">Regards,
SURO
irc//freenode: suro-patz
</pre>
    <div class="moz-cite-prefix">On 7/29/15 2:21 PM, Hongbin Lu wrote:<br>
    </div>
    <blockquote
cite="mid:0957CD8F4B55C0418161614FEC580D6BCAA446@SZXEMI503-MBS.china.huawei.com"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <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;}
@font-face
        {font-family:宋体;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
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;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;
        font-weight:normal;
        font-style:normal;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:304433677;
        mso-list-template-ids:469504212;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1
        {mso-list-id:329257996;
        mso-list-template-ids:-1572179360;}
@list l1:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2
        {mso-list-id:787744045;
        mso-list-template-ids:-1945453516;}
@list l2:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level2
        {mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l2:level3
        {mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l2:level4
        {mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l2:level5
        {mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l2:level6
        {mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l2:level7
        {mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l2:level8
        {mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l2:level9
        {mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3
        {mso-list-id:909924254;
        mso-list-template-ids:145641144;}
@list l3:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l3:level2
        {mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3:level3
        {mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3:level4
        {mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3:level5
        {mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3:level6
        {mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3:level7
        {mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3:level8
        {mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
@list l3:level9
        {mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></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]-->
      <div class="WordSection1">
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Suro,<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">I
            think service/pod/rc are k8s-specific. +1 for Jay’s
            suggestion about renaming COE-specific command, since the
            new naming style looks consistent with other OpenStack
            projects. In addition, it will eliminate name collision of
            different COEs. Also, if we are going to support pluggable
            COE, adding prefix to COE-specific command is unavoidable.<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Best
            regards,<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Hongbin<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
        <div>
          <div style="border:none;border-top:solid #B5C4DF
            1.0pt;padding:3.0pt 0cm 0cm 0cm">
            <p class="MsoNormal"><b><span
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext"
                  lang="EN-US">From:</span></b><span
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext"
                lang="EN-US"> SURO [<a class="moz-txt-link-freetext" href="mailto:suro.patz@gmail.com">mailto:suro.patz@gmail.com</a>]
                <br>
                <b>Sent:</b> July-29-15 4:03 PM<br>
                <b>To:</b> Jay Lau<br>
                <b>Cc:</b> <a class="moz-txt-link-abbreviated" href="mailto:suro@yahoo-inc.com">suro@yahoo-inc.com</a>; OpenStack Development
                Mailing List (not for usage questions)<br>
                <b>Subject:</b> Re: [openstack-dev] [magnum][blueprint]
                magnum-service-list<o:p></o:p></span></p>
          </div>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Hi Jay,<br>
          <br>
          'service'/'pod'/'rc' are conceptual abstraction at magnum
          level. Yes, the abstraction was inspired from the same in
          kubernetes, but the data stored in DB about a 'service' is
          properly abstracted and not k8s-specific at the top level.
          <br>
          <br>
          If we plan to change this to 'k8s-service-list', the same
          applies for even creation and other actions. This will give
          rise to COE-specific command and concepts and which may
          proliferate further. Instead, we can abstract swarm's service
          concept under the umbrella of magnum's 'service' concept
          without creating k8s-service and swarm-service.<br>
          <br>
          I suggest we should keep the concept/abstraction at Magnum
          level, as it is. <br>
          <br>
          <o:p></o:p></p>
        <pre>Regards,<o:p></o:p></pre>
        <pre>SURO<o:p></o:p></pre>
        <pre>irc//freenode: suro-patz<o:p></o:p></pre>
        <div>
          <p class="MsoNormal">On 7/28/15 7:59 PM, Jay Lau wrote:<o:p></o:p></p>
        </div>
        <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
          <div>
            <div>
              <div>
                <p class="MsoNormal" style="margin-bottom:12.0pt">Hi
                  Suro,<o:p></o:p></p>
              </div>
              <p class="MsoNormal" style="margin-bottom:12.0pt">Sorry
                for late. IMHO, even the "magnum service-list" is
                getting data from DB, but the DB is actually persisting
                some data for Kubernetes service, so my thinking is it
                possible to change "magnum service-list" to "magnum
                k8s-service-list", same for pod and rc.<o:p></o:p></p>
            </div>
            <div>
              <p class="MsoNormal" style="margin-bottom:12.0pt">I know
                this might bring some trouble for backward compatibility
                issue, not sure if it is good to do such modification at
                this time. Comments?<o:p></o:p></p>
            </div>
            <p class="MsoNormal">Thanks<o:p></o:p></p>
          </div>
          <div>
            <p class="MsoNormal"><o:p> </o:p></p>
            <div>
              <p class="MsoNormal">2015-07-27 20:12 GMT-04:00 SURO <<a
                  moz-do-not-send="true"
                  href="mailto:suro.patz@gmail.com" target="_blank"><a class="moz-txt-link-abbreviated" href="mailto:suro.patz@gmail.com">suro.patz@gmail.com</a></a>>:<o:p></o:p></p>
              <div>
                <p class="MsoNormal">Hi all,<br>
                  As we did not hear back further on the requirement of
                  this blueprint, I propose to keep the existing
                  behavior without any modification.<br>
                  <br>
                  We would like to explore the decision on this
                  blueprint on our next weekly IRC meeting[1].<br>
                    <o:p></o:p></p>
                <pre>Regards,<o:p></o:p></pre>
                <pre>SURO<o:p></o:p></pre>
                <pre>irc//freenode: suro-patz<o:p></o:p></pre>
                <pre><o:p> </o:p></pre>
                <pre>[1] - <a moz-do-not-send="true" href="https://wiki.openstack.org/wiki/Meetings/Containers" target="_blank">https://wiki.openstack.org/wiki/Meetings/Containers</a><o:p></o:p></pre>
                <table class="MsoNormalTable" border="0" cellpadding="0">
                  <tbody>
                    <tr>
                      <td style="padding:.75pt .75pt .75pt .75pt">
                        <p class="MsoNormal">2015-07-28 <o:p></o:p></p>
                      </td>
                      <td style="padding:.75pt .75pt .75pt .75pt">
                        <p class="MsoNormal">UTC 2200 Tuesday <o:p></o:p></p>
                      </td>
                    </tr>
                  </tbody>
                </table>
                <div>
                  <div>
                    <pre> <o:p></o:p></pre>
                    <div>
                      <p class="MsoNormal">On 7/21/15 4:54 PM, SURO
                        wrote: <o:p></o:p></p>
                    </div>
                    <blockquote
                      style="margin-top:5.0pt;margin-bottom:5.0pt">
                      <p class="MsoNormal">Hi all, [special attention:
                        Jay Lau] The bp[1] registered, asks for the
                        following implementation -
                        <o:p></o:p></p>
                      <ul type="disc">
                        <li class="MsoNormal"
                          style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l3
                          level1 lfo3">
                          'magnum service-list' should be similar to
                          'nova service-list'<o:p></o:p></li>
                        <li class="MsoNormal"
                          style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l3
                          level1 lfo3">
                          'magnum service-list' should be moved to be '
                          magnum k8s-service-list'. Also similar holds
                          true for 'pod-list'/'rc-list'<o:p></o:p></li>
                      </ul>
                      <p class="MsoNormal">As I dug some details, I find
                        - <o:p></o:p></p>
                      <ul type="disc">
                        <li class="MsoNormal"
                          style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2
                          level1 lfo6">
                          'magnum service-list' fetches data from
                          OpenStack DB[2], instead of the COE endpoint.
                          So technically it is not k8s-specific. magnum
                          is serving data for objects modeled as
                          'service', just the way we are catering for
                          'magnum container-list' in case of swarm bay.<o:p></o:p></li>
                        <li class="MsoNormal"
                          style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2
                          level1 lfo6">
                          If magnum provides a way to get the COE
                          endpoint details, users can use native tools
                          to fetch the status of the COE-specific
                          objects, viz. 'kubectl get services' here.<o:p></o:p></li>
                        <li class="MsoNormal"
                          style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2
                          level1 lfo6">
                          nova has lot more backend services, e.g. cert,
                          scheduler, consoleauth, compute etc. in
                          comparison to magnum's conductor only. Also,
                          not all the api's have this 'service-list'
                          available.
                          <o:p></o:p></li>
                      </ul>
                      <p class="MsoNormal">With these arguments in view,
                        can we have some more explanation/clarification
                        in favor of the ask in the blueprint? [1] -
                        <a moz-do-not-send="true"
                          href="https://blueprints.launchpad.net/magnum/+spec/magnum-service-list"
                          target="_blank">
https://blueprints.launchpad.net/magnum/+spec/magnum-service-list</a>
                        [2] - <a moz-do-not-send="true"
href="https://github.com/openstack/magnum/blob/master/magnum/objects/service.py#L114"
                          target="_blank">
https://github.com/openstack/magnum/blob/master/magnum/objects/service.py#L114</a>
                        <o:p></o:p></p>
                      <pre>-- <o:p></o:p></pre>
                      <pre>Regards,<o:p></o:p></pre>
                      <pre>SURO<o:p></o:p></pre>
                      <pre>irc//freenode: suro-patz<o:p></o:p></pre>
                    </blockquote>
                  </div>
                </div>
              </div>
            </div>
            <p class="MsoNormal"><br>
              <br clear="all">
              <br>
              -- <o:p></o:p></p>
            <div>
              <div>
                <div>
                  <div>
                    <div>
                      <p class="MsoNormal" style="margin-bottom:12.0pt">Thanks,<o:p></o:p></p>
                    </div>
                    <p class="MsoNormal">Jay Lau (Guangya Liu)<o:p></o:p></p>
                  </div>
                </div>
              </div>
            </div>
          </div>
        </blockquote>
        <p class="MsoNormal"><o:p> </o:p></p>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: <a class="moz-txt-link-abbreviated" href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a>
<a class="moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>