<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=iso-8859-1">
<meta name="Generator" content="Microsoft Word 12 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@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:"\@SimSun";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","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
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
tt
        {mso-style-priority:99;
        font-family:"Courier New";}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.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;}
--></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-CA" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">Another use case I can think of is to cache the required docker images in the Glance image.<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">This is an important use case because we have containerized most of the COE components (e.g. kube-scheduler, swarm-manager, etc.). As a result, each bay needs
 to pull docker images over the Internet on provisioning or scaling stage. If a large number of bays pull docker images at the same time, it will generate a lot of traffic. Therefore, it is desirable to have all the required docker images pre-downloaded into
 the Glance image. I expect we can leverage diskimage-builder to achieve the goal.<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 lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif"">From:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:"Tahoma","sans-serif""> Ton Ngo [mailto:ton@us.ibm.com]
<br>
<b>Sent:</b> March-29-16 4:54 PM<br>
<b>To:</b> OpenStack Development Mailing List (not for usage questions)<br>
<b>Subject:</b> Re: [openstack-dev] [magnum] Generate atomic images using diskimage-builder<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p>In multiple occasions in the past, we have had to use version of some software that's not available yet<br>
in the upstream image for bug fixes or new features (Kubernetes, Docker, Flannel,...). Eventually the upstream
<br>
image would catch up, but having the tool to customize let us push forward with development, and gate tests<br>
if it makes sense.<br>
<br>
Ton Ngo,<br>
<br>
<br>
<img width="16" height="16" id="_x0000_i1025" src="cid:image001.gif@01D18A6D.C33035C0" alt="Inactive hide details for Yolanda Robla Mota ---03/29/2016 01:35:48 PM---So the advantages I can see with diskimage-builder are"><span style="color:#424282">Yolanda
 Robla Mota ---03/29/2016 01:35:48 PM---So the advantages I can see with diskimage-builder are: - we reuse the same tooling that is present</span><br>
<br>
<span style="font-size:10.0pt;color:#5F5F5F">From: </span><span style="font-size:10.0pt">Yolanda Robla Mota <<a href="mailto:yolanda.robla-mota@hpe.com">yolanda.robla-mota@hpe.com</a>></span><br>
<span style="font-size:10.0pt;color:#5F5F5F">To: </span><span style="font-size:10.0pt"><<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>></span><br>
<span style="font-size:10.0pt;color:#5F5F5F">Date: </span><span style="font-size:10.0pt">03/29/2016 01:35 PM</span><br>
<span style="font-size:10.0pt;color:#5F5F5F">Subject: </span><span style="font-size:10.0pt">Re: [openstack-dev] [magnum] Generate atomic images using diskimage-builder</span><o:p></o:p></p>
<div class="MsoNormal">
<hr size="2" width="100%" noshade="" style="color:#8091A5" align="left">
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
<br>
<br>
<tt><span style="font-size:10.0pt">So the advantages I can see with diskimage-builder are:</span></tt><span style="font-size:10.0pt;font-family:"Courier New""><br>
<tt>- we reuse the same tooling that is present in other openstack projects </tt>
<br>
<tt>to generate images, rather than relying on an external image</tt><br>
<tt>- it improves the control we have on the contents of the image, instead </tt>
<br>
<tt>of seeing that as a black box. At the moment we can rely on the default </tt>
<br>
<tt>tree for fedora 23, but this can be updated per magnum needs</tt><br>
<tt>- reusability: we have atomic 23 now, but why not create magnum images </tt><br>
<tt>with dib, for ubuntu, or any other distros ? Relying on </tt><br>
<tt>diskimage-builder makes it easy and flexible, because it's a matter of </tt><br>
<tt>adding the right elements.</tt><br>
<br>
<tt>Best</tt><br>
<tt>Yolanda</tt><br>
<br>
<tt>El 29/03/16 a las 21:54, Steven Dake (stdake) escribió:</tt><br>
<tt>> Adrian,</tt><br>
<tt>></tt><br>
<tt>> Makes sense.  Do the images have to be built to be mirrored though?  Can't</tt><br>
<tt>> they just be put on the mirror sites fro upstream?</tt><br>
<tt>></tt><br>
<tt>> Thanks</tt><br>
<tt>> -steve</tt><br>
<tt>></tt><br>
<tt>> On 3/29/16, 11:02 AM, "Adrian Otto" <<a href="mailto:adrian.otto@rackspace.com">adrian.otto@rackspace.com</a>> wrote:</tt><br>
<tt>></tt><br>
<tt>>> Steve,</tt><br>
<tt>>></tt><br>
<tt>>> I¹m very interested in having an image locally cached in glance in each</tt><br>
<tt>>> of the clouds used by OpenStack infra. The local caching of the glance</tt><br>
<tt>>> images will produce much faster gate testing times. I don¹t care about</tt><br>
<tt>>> how the images are built, but we really do care about the performance</tt><br>
<tt>>> outcome.</tt><br>
<tt>>></tt><br>
<tt>>> Adrian</tt><br>
<tt>>></tt><br>
<tt>>>> On Mar 29, 2016, at 10:38 AM, Steven Dake (stdake) <<a href="mailto:stdake@cisco.com">stdake@cisco.com</a>></tt><br>
<tt>>>> wrote:</tt><br>
<tt>>>></tt><br>
<tt>>>> Yolanda,</tt><br>
<tt>>>></tt><br>
<tt>>>> That is a fantastic objective.  Matthieu asked why build our own images</tt><br>
<tt>>>> if</tt><br>
<tt>>>> the upstream images work and need no further customization?</tt><br>
<tt>>>></tt><br>
<tt>>>> Regards</tt><br>
<tt>>>> -steve</tt><br>
<tt>>>></tt><br>
<tt>>>> On 3/29/16, 1:57 AM, "Yolanda Robla Mota" <<a href="mailto:yolanda.robla-mota@hpe.com">yolanda.robla-mota@hpe.com</a>></tt><br>
<tt>>>> wrote:</tt><br>
<tt>>>></tt><br>
<tt>>>>> Hi</tt><br>
<tt>>>>> The idea is to build own images using diskimage-builder, rather than</tt><br>
<tt>>>>> downloading the image from external sources. By that way, the image can</tt><br>
<tt>>>>> live in our mirrors, and is built using the same pattern as other</tt><br>
<tt>>>>> images</tt><br>
<tt>>>>> used in OpenStack.</tt><br>
<tt>>>>> It also opens the door to customize the images, using custom trees, if</tt><br>
<tt>>>>> there is a need for it. Actually we rely on official tree for Fedora 23</tt><br>
<tt>>>>> Atomic (<a href="https://dl.fedoraproject.org/pub/fedora/linux/atomic/23/">https://dl.fedoraproject.org/pub/fedora/linux/atomic/23/</a>) as</tt><br>
<tt>>>>> default.</tt><br>
<tt>>>>></tt><br>
<tt>>>>> Best,</tt><br>
<tt>>>>> Yolanda</tt><br>
<tt>>>>></tt><br>
<tt>>>>> El 29/03/16 a las 10:17, Mathieu Velten escribió:</tt><br>
<tt>>>>>> Hi,</tt><br>
<tt>>>>>></tt><br>
<tt>>>>>> We are using the official Fedora Atomic 23 images here (on Mitaka M1</tt><br>
<tt>>>>>> however) and it seems to work fine with at least Kubernetes and Docker</tt><br>
<tt>>>>>> Swarm.</tt><br>
<tt>>>>>> Any reason to continue building specific Magnum image ?</tt><br>
<tt>>>>>></tt><br>
<tt>>>>>> Regards,</tt><br>
<tt>>>>>></tt><br>
<tt>>>>>> Mathieu</tt><br>
<tt>>>>>></tt><br>
<tt>>>>>> Le mercredi 23 mars 2016 à 12:09 +0100, Yolanda Robla Mota a écrit :</tt><br>
<tt>>>>>>> Hi</tt><br>
<tt>>>>>>> I wanted to start a discussion on how Fedora Atomic images are being</tt><br>
<tt>>>>>>> built. Currently the process for generating the atomic images used</tt><br>
<tt>>>>>>> on</tt><br>
<tt>>>>>>> Magnum is described here:</tt><br>
<tt>>>>>>> <a href="http://docs.openstack.org/developer/magnum/dev/build-atomic-image.htm">
http://docs.openstack.org/developer/magnum/dev/build-atomic-image.htm</a></tt><br>
<tt>>>>>>> l.</tt><br>
<tt>>>>>>> The image needs to be built manually, uploaded to fedorapeople, and</tt><br>
<tt>>>>>>> then</tt><br>
<tt>>>>>>> consumed from there in the magnum tests.</tt><br>
<tt>>>>>>> I have been working on a feature to allow diskimage-builder to</tt><br>
<tt>>>>>>> generate</tt><br>
<tt>>>>>>> these images. The code that makes it possible is here:</tt><br>
<tt>>>>>>> <a href="https://review.openstack.org/287167">https://review.openstack.org/287167</a></tt><br>
<tt>>>>>>> This will allow that magnum images are generated on infra, using</tt><br>
<tt>>>>>>> diskimage-builder element. This element also has the ability to</tt><br>
<tt>>>>>>> consume</tt><br>
<tt>>>>>>> any tree we need, so images can be customized on demand. I generated</tt><br>
<tt>>>>>>> one</tt><br>
<tt>>>>>>> image using this element, and uploaded to fedora people. The image</tt><br>
<tt>>>>>>> has</tt><br>
<tt>>>>>>> passed tests, and has been validated by several people.</tt><br>
<tt>>>>>>></tt><br>
<tt>>>>>>> So i'm raising that topic to decide what should be the next steps.</tt><br>
<tt>>>>>>> This</tt><br>
<tt>>>>>>> change to generate fedora-atomic images has not already landed into</tt><br>
<tt>>>>>>> diskimage-builder. But we have two options here:</tt><br>
<tt>>>>>>> - add this element to generic diskimage-builder elements, as i'm</tt><br>
<tt>>>>>>> doing now</tt><br>
<tt>>>>>>> - generate this element internally on magnum. So we can have a</tt><br>
<tt>>>>>>> directory</tt><br>
<tt>>>>>>> in magnum project, called "elements", and have the fedora-atomic</tt><br>
<tt>>>>>>> element</tt><br>
<tt>>>>>>> here. This will give us more control on the element behaviour, and</tt><br>
<tt>>>>>>> will</tt><br>
<tt>>>>>>> allow to update the element without waiting for external reviews.</tt><br>
<tt>>>>>>></tt><br>
<tt>>>>>>> Once the code for diskimage-builder has landed, another step can be</tt><br>
<tt>>>>>>> to</tt><br>
<tt>>>>>>> periodically generate images using a magnum job, and upload these</tt><br>
<tt>>>>>>> images</tt><br>
<tt>>>>>>> to OpenStack Infra mirrors. Currently the image is based on Fedora</tt><br>
<tt>>>>>>> F23,</tt><br>
<tt>>>>>>> docker-host tree. But different images can be generated if we need a</tt><br>
<tt>>>>>>> better option.</tt><br>
<tt>>>>>>></tt><br>
<tt>>>>>>> As soon as the images are available on internal infra mirrors, the</tt><br>
<tt>>>>>>> tests</tt><br>
<tt>>>>>>> can be changed, to consume these internals images. By this way the</tt><br>
<tt>>>>>>> tests</tt><br>
<tt>>>>>>> can be a bit faster (i know that the bottleneck is on the functional</tt><br>
<tt>>>>>>> testing, but if we reduce the download time it can help), and tests</tt><br>
<tt>>>>>>> can</tt><br>
<tt>>>>>>> be more reilable, because we will be removing an external dependency.</tt><br>
<tt>>>>>>></tt><br>
<tt>>>>>>> So i'd like to get more feedback on this topic, options and next</tt><br>
<tt>>>>>>> steps</tt><br>
<tt>>>>>>> to achieve the goals. Best</tt><br>
<tt>>>>>>></tt><br>
<tt>>>>>></tt><br>
<tt>>>>>> _______________________________________________________________________</tt><br>
<tt>>>>>> __</tt><br>
<tt>>>>>> _</tt><br>
<tt>>>>>> OpenStack Development Mailing List (not for usage questions)</tt><br>
<tt>>>>>> Unsubscribe:</tt><br>
<tt>>>>>> <a href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a></tt><br>
<tt>>>>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><br>
<tt>>>>> -- </tt><br>
<tt>>>>> Yolanda Robla Mota</tt><br>
<tt>>>>> Cloud Automation and Distribution Engineer</tt><br>
<tt>>>>> +34 605641639</tt><br>
<tt>>>>> <a href="mailto:yolanda.robla-mota@hpe.com">yolanda.robla-mota@hpe.com</a></tt><br>
<tt>>>>></tt><br>
<tt>>>>></tt><br>
<tt>>>>></tt><br>
<tt>>>>> ________________________________________________________________________</tt><br>
<tt>>>>> __</tt><br>
<tt>>>>> OpenStack Development Mailing List (not for usage questions)</tt><br>
<tt>>>>> Unsubscribe:</tt><br>
<tt>>>>> <a href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a></tt><br>
<tt>>>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><br>
<tt>>>></tt><br>
<tt>>>></tt><br>
<tt>>>> _________________________________________________________________________</tt><br>
<tt>>>> _</tt><br>
<tt>>>> OpenStack Development Mailing List (not for usage questions)</tt><br>
<tt>>>> Unsubscribe:</tt><br>
<tt>>>> <a href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a></tt><br>
<tt>>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><br>
<tt>>></tt><br>
<tt>>> __________________________________________________________________________</tt><br>
<tt>>> OpenStack Development Mailing List (not for usage questions)</tt><br>
<tt>>> Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a></tt><br>
<tt>>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><br>
<tt>></tt><br>
<tt>> __________________________________________________________________________</tt><br>
<tt>> OpenStack Development Mailing List (not for usage questions)</tt><br>
<tt>> Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a></tt><br>
<tt>> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><br>
<br>
<tt>-- </tt><br>
<tt>Yolanda Robla Mota</tt><br>
<tt>Cloud Automation and Distribution Engineer</tt><br>
<tt>+34 605641639</tt><br>
<tt><a href="mailto:yolanda.robla-mota@hpe.com">yolanda.robla-mota@hpe.com</a></tt><br>
<br>
<br>
<tt>__________________________________________________________________________</tt><br>
<tt>OpenStack Development Mailing List (not for usage questions)</tt><br>
<tt>Unsubscribe: <a href="mailto:OpenStack-dev-request@lists.openstack.org?subject:unsubscribe">
OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a></tt><br>
<tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a></tt><br>
<br>
</span><br>
<br>
<o:p></o:p></p>
</div>
</body>
</html>