<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=utf-8">
<meta name="Generator" content="Microsoft Word 15 (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:"\@SimSun";
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        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;}
span.EmailStyle17
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@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">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">For orchestration, Cloudify/TOSCA (getcloudify.org) might worth giving it a try.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">It provides “plugin” to integrate with Docker, Kubernetes and also support various underlying infrastructure such as AWS, OpenStack, VMware, etc (support for
 Azure,GCE are in progress).<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"><a name="_MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></a></p>
<p class="MsoNormal"><a name="_____replyseparator"></a><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> David F Flanders [mailto:flanders@openstack.org]
<br>
<b>Sent:</b> Monday, April 18, 2016 10:23 AM<br>
<b>To:</b> Fox, Kevin M <Kevin.Fox@pnnl.gov><br>
<b>Cc:</b> user-committee@lists.openstack.org<br>
<b>Subject:</b> Re: [User-committee] [app] 1st milestone for my first Openstack Application<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Worth noting the cloud's 'Cambrian explosion' we are experiencing for the "AppDev Toolbox" at the moment. <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">For example, just saw an options paper for K8S atop OpenStack, where there are several pages of options.  <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">^^ See Kubernetes slack/irc channel #OpenStack-SIG (I'll send the link anon currently in transit).<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Best, Flanders<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><br>
<br>
On Wednesday, April 13, 2016, Fox, Kevin M <<a href="mailto:Kevin.Fox@pnnl.gov">Kevin.Fox@pnnl.gov</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div name="Compose message area">
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">Hybrid cloud use case is kind of different then regular OpenStack apps...<br>
<br>
So, AWS and Heat both support CFN formatted templates, so the implementation can potentially be shared between those two, but if you need GCP or Azure, then that won't work.<br>
<br>
Some of the docker orchestration systems are starting to grow cross cloud options such as Kubernetes with Ubernetes. That abstraction might be a good target for a Hybrid cloud crossing multiple cloud providers different api's. I haven't used Ubernetes though
 so I'm not sure how well it works in practice yet. Just something to look at.<br>
<br>
Terraform might be another good cross cloud orchestration tool. I haven't used this one either, but some of my co-workers have to good affect.<br>
<br>
Thanks,<br>
Kevin<o:p></o:p></span></p>
<div>
<div class="MsoNormal" align="center" style="text-align:center"><span style="color:black">
<hr size="2" width="100%" align="center">
</span></div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black"> Bart Demeulenaere [<a href="javascript:_e(%7B%7D,'cvml','bart.demeulenaere@venean.com');" target="_blank">bart.demeulenaere@venean.com</a>]<br>
<b>Sent:</b> Tuesday, April 12, 2016 2:39 PM<br>
<b>To:</b> David F Flanders; Fox, Kevin M<br>
<b>Cc:</b> <a href="javascript:_e(%7B%7D,'cvml','user-committee@lists.openstack.org');" target="_blank">
user-committee@lists.openstack.org</a><br>
<b>Subject:</b> Re: [User-committee] [app] 1st milestone for my first Openstack Application</span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;color:black">Hi,</span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;color:black">@David - the webserver in my application is meant as a monitoring component for a group of distributed processing components (these are the ones that would require (at least) 3
 more VMs) - it was just easiest to do this component first as it has a nice way of providing feedback that it is up and running (http responses). I would like to make this cross-cloud indeed - AWS, GCP and some public Openstack provider (Dreamhost just came
 out with a nice offering). The big advantage of the Python script is that I can easily make it cross-cloud - and Python is great to work with.</span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;color:black">@Kevin - I will try Heat as well, have experimented with it before. The cross-cloud experimentation requires the coding though. As for fault tolerance, this could mean many things
 - I am pretty sure that I can make my script reliably and reproducibly launch at least 4 VMs that provide me with the processing and monitoring platform that I need. What I do like about the orchestration and ceilometer components together is that they should
 allow for elasiticity to be built in. I had one thing with Heat before though (and again in the Juno release), I  think in a devstack deployment, where I terminated a server (VM) from Horizon that had been created as part of a stack - and then I could no longer
 remove the stack. I did not try this again so far as I do not want to mess up my deployment.</span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;color:black">Kind regards,</span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Calibri",sans-serif;color:black">Bart</span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="color:black"> <o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal" style="background:whitesmoke"><b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">From:</span></b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">
<a href="javascript:_e(%7B%7D,'cvml','flanders@openstack.org');" target="_blank" title="flanders@openstack.org">
David F Flanders</a> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:whitesmoke"><b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">Sent:</span></b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black"> Tuesday, April 12, 2016 4:38 AM<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:whitesmoke"><b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">To:</span></b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">
<a href="javascript:_e(%7B%7D,'cvml','Kevin.Fox@pnnl.gov');" target="_blank" title="mailto:Kevin.Fox@pnnl.gov
Druk op CTRL en klik als je de link wilt volgen">
Fox, Kevin M</a> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:whitesmoke"><b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">Cc:</span></b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">
<a href="javascript:_e(%7B%7D,'cvml','bart.demeulenaere@venean.com');" target="_blank" title="bart.demeulenaere@venean.com">
Bart Demeulenaere</a> ; <a href="javascript:_e(%7B%7D,'cvml','user-committee@lists.openstack.org');" target="_blank" title="user-committee@lists.openstack.org">
user-committee@lists.openstack.org</a> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="background:whitesmoke"><b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black">Subject:</span></b><span style="font-size:10.0pt;font-family:"Tahoma",sans-serif;color:black"> Re: [User-committee] [app] 1st milestone
 for my first Openstack Application<o:p></o:p></span></p>
</div>
</div>
</div>
<div>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black">Hi Bart,  <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black">Is this script intended to run across multiple clouds to test the basics of being able to "build a webserver" on any given cloud, aka "AppDev usability of clouds"?  <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black">Hence not being able to use Heat, as Heat doesn't work with AWS, Azure, GCP, etc.?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black">Apologies if I've got crossed wires.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black">I've also love to hear your impression of ask.openstack from an AppDev PoV, but that for another thread.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-family:"Tahoma",sans-serif;color:black">Best, Flanders<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span style="color:black">On Tue, Apr 12, 2016 at 8:42 AM, Fox, Kevin M <<a href="javascript:_e(%7B%7D,'cvml','Kevin.Fox@pnnl.gov');" target="_blank">Kevin.Fox@pnnl.gov</a>> wrote:<o:p></o:p></span></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal"><span style="color:black">Cool. :)<br>
<br>
I'd recommend looking into OpenStack Heat very closely though for doing most of the heavy lifting. Doing the deployment Declaratively makes for significantly less code then trying to do it Imperatively and makes it much more fault tolerant.<br>
<br>
You can do something like:<br>
parameters:<br>
  Name: Server1<br>
  Flavor: m1.large<br>
  ExtraUserData: "yum install -y httpd; systemctl start httpd; systemctl enable httpd"<br>
  PrimarySecurityGroup: web<br>
  PrimaryNetworkId: cd5f6918-2870-48f4-85d1-722e70350ed4<br>
<br>
heat stack-create -e <the file above> -u <a href="https://raw.githubusercontent.com/EMSL-MSC/heat-templates/master/cfn/lib/SimpleServer.yaml" target="_blank">
https://raw.githubusercontent.com/EMSL-MSC/heat-templates/master/cfn/lib/SimpleServer.yaml</a> MyStack<br>
<br>
Done. :)<br>
<br>
I'm continuing development on the lib templates to make them even more generic/configurable to make it even easier to launch complicated setups without much code. See some of the parent directories for more examples.<br>
<br>
Thanks,<br>
Kevin<br>
<br>
________________________________________<br>
From: Bart Demeulenaere [<a href="javascript:_e(%7B%7D,'cvml','bart.demeulenaere@venean.com');" target="_blank">bart.demeulenaere@venean.com</a>]<br>
Sent: Monday, April 11, 2016 3:13 PM<br>
To: <a href="javascript:_e(%7B%7D,'cvml','user-committee@lists.openstack.org');" target="_blank">
user-committee@lists.openstack.org</a><br>
Subject: [User-committee] [app] 1st milestone for my first Openstack    Application<o:p></o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span style="color:black"><br>
Hi,<br>
<br>
Over the past 2 months with so little time I can dedicate to this effort I<br>
have been crawling towards my first Opensatck application. Today I have<br>
reached my first milestone. So what is this about?<br>
<br>
The Openstack deployment is:<br>
- Mirantis 6.0/Openstack Juno (so old) on a single hardware box in a bunch<br>
of Virtualbox VMs (6 of them) - the Openstack VMs have no internet access<br>
- Nova networking (could not get Neutron configured so I could use it)<br>
- Swift object storage<br>
<br>
My first milestone is a Python script that will upload a software archive to<br>
the Object storage, then launch a VM on Openstack that upon boot<br>
(cloud-init) will download that archive and start a webserver from it that<br>
is externally accessible. So prerequisites are an uploaded cloud-image for<br>
the VM and a security group (with SSH key and port rules). The webserver<br>
just returns 'exception' when contacted as it is supposed to monitor another<br>
part of y application that I have not yet up and running (next milestone).<br>
Point is though - it is auto-launched at VM creation time (running as a<br>
non-root user) and it is externally accessible, returning something.<br>
<br>
I used the nova-python sdk and swift-python sdk for this, tried first with<br>
the integrated OpenstackPythonSDK, but my deployment is likely too old and<br>
it has no Neutron, so that did not work out. I also had to as a question on<br>
Ask Openstack to get up to speed with the python SDK documentation. The<br>
answer I got to my question there provided snippets that did not run, but<br>
they kickstarted my understanding of the SDK, so they were more than welcome<br>
and extremely useful in that respect.<br>
<br>
Next milestone: get the other parts of the app deployed and running (at<br>
least 3 more VMs) and get all VMs communicating with each other.<br>
<br>
Kind regards,<br>
Bart<br>
<br>
--------------------------------------------------<br>
From: "Bonell Manjarrez, Marcela" <<a href="javascript:_e(%7B%7D,'cvml','marcela.bonell.manjarrez@intel.com');" target="_blank">marcela.bonell.manjarrez@intel.com</a>><br>
Sent: Monday, February 08, 2016 11:59 PM<br>
To: <<a href="javascript:_e(%7B%7D,'cvml','user-committee@lists.openstack.org');" target="_blank">user-committee@lists.openstack.org</a>><br>
Subject: [User-committee]  [app] Deploying FirstApp in Trystack<br>
<br>
> Hi folks,<br>
><br>
> Good news, I'm able to deploy the FirstApp (getting started script) in<br>
> Trystack [1] with shade!<br>
><br>
> First, I tried with libcloud without success, because libcloud has<br>
> problems with networking (security groups).<br>
> Then I tried with shade and everything worked fine!<br>
><br>
> The pre-work required to deploy the app is:<br>
><br>
> * Generate an API password (Settings tab)<br>
> * Create an internal network<br>
> * Create a router<br>
> * Connect the internal and public networks with the router<br>
><br>
> All these steps are well documented in a video[2] that is accessible from<br>
> Trystack horizon login page [3].<br>
><br>
> Despite the fact that Trystack is for testing purposes only (your<br>
> instances are available just for 1-3 days), it can be used for training or<br>
> to explore app development such as the FirstApp tutorial.<br>
><br>
> [1] <a href="http://trystack.org/" target="_blank">http://trystack.org/</a><br>
> [2] <a href="https://www.youtube.com/watch?v=z-M5Vt4-HYg" target="_blank">https://www.youtube.com/watch?v=z-M5Vt4-HYg</a><br>
> [3] <a href="https://x86.trystack.org/dashboard/auth/login/?next=/dashboard/" target="_blank">
https://x86.trystack.org/dashboard/auth/login/?next=/dashboard/</a><br>
><br>
> Marcela Bonell.<br>
> _______________________________________________<br>
> User-committee mailing list<br>
> <a href="javascript:_e(%7B%7D,'cvml','User-committee@lists.openstack.org');" target="_blank">
User-committee@lists.openstack.org</a><br>
> <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/user-committee" target="_blank">
http://lists.openstack.org/cgi-bin/mailman/listinfo/user-committee</a><br>
<br>
<br>
_______________________________________________<br>
User-committee mailing list<br>
<a href="javascript:_e(%7B%7D,'cvml','User-committee@lists.openstack.org');" target="_blank">User-committee@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/user-committee" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/user-committee</a><br>
<br>
_______________________________________________<br>
User-committee mailing list<br>
<a href="javascript:_e(%7B%7D,'cvml','User-committee@lists.openstack.org');" target="_blank">User-committee@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/user-committee" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/user-committee</a><o:p></o:p></span></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</body>
</html>