<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Good morning Greg,<br>
<br>
Thanks for letting me know.<br>
<br>
I was not aware that the documents were out-of-sync and that the examples under virtual deployment were out-of-date. Especially: I had not noticed any out-of-date instruction while using the examples from virtual section.<br>
<br>
To answer your first question: I have an intention of not impacting the canonical examples and current usage/use-case. In this way I did not anticipate documentation changes. I especially intend that if one were using the libvirt deployment method as it is
presented today, then the changes I intend would have no impact on that usage.<br>
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<span style="display: inline !important; background-color: rgb(255, 255, 255);" class="ContentPasted0">I am not prepared to accept the assignment this morning. </span>I can, for example, contribute to ensuring that a merging of the documents will continue
to accurately reflect the libvirt virtual deployment method - either by proposing changes or reviewing the changes. Please feel free to bring me into the conversation.<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
M</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Waines, Greg <Greg.Waines@windriver.com><br>
<b>Sent:</b> 10 July 2023 8:24 AM<br>
<b>To:</b> Thebeau, Michel <Michel.Thebeau@windriver.com>; starlingx-discuss@lists.starlingx.io <starlingx-discuss@lists.starlingx.io><br>
<b>Cc:</b> Balaraj, Juanita <Juanita.Balaraj@windriver.com>; Stone, Ronald <Ronald.Stone@windriver.com><br>
<b>Subject:</b> RE: Intentions toward enhancements for Starlingx Libvirt deployment method host utilization</font>
<div> </div>
</div>
<style>
<!--
@font-face
{font-family:Wingdings}
@font-face
{font-family:"Cambria Math"}
@font-face
{font-family:Calibri}
p.x_MsoNormal, li.x_MsoNormal, div.x_MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif}
a:link, span.x_MsoHyperlink
{color:blue;
text-decoration:underline}
p.x_MsoListParagraph, li.x_MsoListParagraph, div.x_MsoListParagraph
{margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
font-size:11.0pt;
font-family:"Calibri",sans-serif}
span.x_EmailStyle19
{font-family:"Calibri",sans-serif;
color:windowtext}
.x_MsoChpDefault
{font-size:10.0pt}
@page WordSection1
{margin:1.0in 1.0in 1.0in 1.0in}
div.x_WordSection1
{}
ol
{margin-bottom:0in}
ul
{margin-bottom:0in}
-->
</style>
<div lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="x_WordSection1">
<p class="x_MsoNormal">Hey Mich,</p>
<p class="x_MsoNormal">Thanksfor looking at this.</p>
<p class="x_MsoNormal"> </p>
<p class="x_MsoNormal">Do you intent to update the virtual install guides as well ? … as part of this work ?</p>
<p class="x_MsoNormal">e.g. <a href="https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex_install_kubernetes.html">
https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex_install_kubernetes.html</a></p>
<p class="x_MsoNormal"> </p>
<p class="x_MsoNormal">A heads up if you do … (I think I’ve mentioned this a couple of times)</p>
<ul type="disc" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in">The bare-metal install guides have been enhanced/updated and maintained over the last few stx releases</li><li class="x_MsoListParagraph" style="margin-left:0in">… but the virtual install guides have not</li><ul type="circle" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in">E.g. if you compare</li><ul type="square" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in"><a href="https://docs.starlingx.io/deploy_install_guides/release/bare_metal/aio_simplex_install_kubernetes.html">https://docs.starlingx.io/deploy_install_guides/release/bare_metal/aio_simplex_install_kubernetes.html</a></li><li class="x_MsoListParagraph" style="margin-left:0in">And</li><li class="x_MsoListParagraph" style="margin-left:0in"><a href="https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex.html">https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex.html</a></li><ul type="disc" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in"><a href="https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex_environ.html">https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex_environ.html</a></li><ul type="circle" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in"><a href="https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex_install_kubernetes.html">https://docs.starlingx.io/deploy_install_guides/release/virtual/aio_simplex_install_kubernetes.html</a></li></ul>
</ul>
</ul>
</ul>
</ul>
<p class="x_MsoNormal" style="margin-left:1.0in">you’ll see several differences that are not necessarily due virtual versus bare-metal.</p>
<ul type="disc" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in">We (doc team) did not maintain the virtual install guides because we were thinking that
</li><ul type="circle" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in">It was too much overhead maintaining both guides,
</li><li class="x_MsoListParagraph" style="margin-left:0in">Instead we were going to combine the guides</li><ul type="square" style="margin-top:0in">
<li class="x_MsoListParagraph" style="margin-left:0in">And just have in the very few places, the difference between virtual versus bare-metal</li></ul>
<li class="x_MsoListParagraph" style="margin-left:0in">BUT <br>
… we have not had time to look at this.</li><li class="x_MsoListParagraph" style="margin-left:0in"></li><li class="x_MsoListParagraph" style="margin-left:0in">If you are interested in doing this … let me, Juanita and Ron know and we can provide some guidance here.</li></ul>
</ul>
<p class="x_MsoNormal"> </p>
<p class="x_MsoNormal">Greg.</p>
<p class="x_MsoNormal"> </p>
<div>
<div style="border:none; border-top:solid #E1E1E1 1.0pt; padding:3.0pt 0in 0in 0in">
<p class="x_MsoNormal"><b>From:</b> Thebeau, Michel <Michel.Thebeau@windriver.com>
<br>
<b>Sent:</b> Wednesday, June 28, 2023 3:51 PM<br>
<b>To:</b> starlingx-discuss@lists.starlingx.io<br>
<b>Subject:</b> [Starlingx-discuss] Intentions toward enhancements for Starlingx Libvirt deployment method host utilization</p>
</div>
</div>
<p class="x_MsoNormal"> </p>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Hi,</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"><br>
I prepared the following description of enhancements I intend towards the libvirt virtual deployment method. Please let me know I should follow a particular procedure. Otherwise I intend to create a story in storyboard.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Mitch.<br>
===<br>
Starlingx Libvirt deployment method host utilization enhancements </span></p>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">References:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">"Install StarlingX Kubernetes in a virtual environment" -
<a href="https://urldefense.com/v3/__https:/docs.starlingx.io/deploy_install_guides/release/index-install-r7-8966076f0e81.html*index-install-r7-8966076f0e81__;Iw!!AjveYdw8EvQ!Z4_8uAlE2hflEwoj6PLS-fkscNHofrzze0Z8TcwKqUWt8eZuvXR2BYDbfdQ1NRxwAPidwaXpiTs6mEaYmZdFwN3y3g0pfSBm$">
https://docs.starlingx.io/deploy_install_guides/release/index-install-r7-8966076f0e81.html#index-install-r7-8966076f0e81</a></span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Libvirt deployment method in starlingx/tools -
<a href="https://urldefense.com/v3/__https:/opendev.org/starlingx/tools/src/branch/master/deployment/libvirt__;!!AjveYdw8EvQ!Z4_8uAlE2hflEwoj6PLS-fkscNHofrzze0Z8TcwKqUWt8eZuvXR2BYDbfdQ1NRxwAPidwaXpiTs6mEaYmZdFwN3y3i5MQhv-$">
https://opendev.org/starlingx/tools/src/branch/master/deployment/libvirt</a></span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Libvirt deployment method moved this week to starlingx/virtual-deployment -
<a href="https://urldefense.com/v3/__https:/opendev.org/starlingx/virtual-deployment/src/branch/master/libvirt__;!!AjveYdw8EvQ!Z4_8uAlE2hflEwoj6PLS-fkscNHofrzze0Z8TcwKqUWt8eZuvXR2BYDbfdQ1NRxwAPidwaXpiTs6mEaYmZdFwN3y3sDypkJm$">
https://opendev.org/starlingx/virtual-deployment/src/branch/master/libvirt</a></span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Motivation is to:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> A) maintain attributes for more than one virtual lab</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> B) improve the usage and selection of the host's resources for disk, memory and cpu</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> C) isolate cluster networks where more than one virtual lab may be running</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Philosophy of continuity:
</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Introduce changes and developments in continuity with established examples and approaches.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - Maintain the existing examples for default setting and the 'mad' override.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - Establish regression test based on the default setting and 'mad' override to ensure that a user of the deployment method can continue to do the same thing they used to do.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - Maintain and extend the use of overridable variable definitions for the attributes of a lab.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - Maintain and extend the use of command line parameters for configuration selection, such as "-c 'simplex'".</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - Maintain and extend the existing workflow: "exporting variables,
<a href="https://urldefense.com/v3/__http:/setup_network.sh__;!!AjveYdw8EvQ!Z4_8uAlE2hflEwoj6PLS-fkscNHofrzze0Z8TcwKqUWt8eZuvXR2BYDbfdQ1NRxwAPidwaXpiTs6mEaYmZdFwN3y3h6jVq1i$">
setup_network.sh</a>, <a href="https://urldefense.com/v3/__http:/setup_configation.sh__;!!AjveYdw8EvQ!Z4_8uAlE2hflEwoj6PLS-fkscNHofrzze0Z8TcwKqUWt8eZuvXR2BYDbfdQ1NRxwAPidwaXpiTs6mEaYmZdFwN3y3s6zQf--$">
setup_configation.sh</a>, <a href="https://urldefense.com/v3/__http:/destroy_configuration.sh__;!!AjveYdw8EvQ!Z4_8uAlE2hflEwoj6PLS-fkscNHofrzze0Z8TcwKqUWt8eZuvXR2BYDbfdQ1NRxwAPidwaXpiTs6mEaYmZdFwN3y3p-0jJRx$">
destroy_configuration.sh</a>, destroy_network.sh".</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">A) Maintain configurations for more than one virtual cluster:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Motivation: allow a lab's attributes to be recalled from a configuration file and operate upon that lab specifically.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Establish a precedent for a configuration file used to override the default attributes. Refer to the README.rst "Overview" section which lists environment variables CONTROLLER, WORKER, BRIDGE_INTERFACE,
EXTERNAL_NETWORK, EXTERNAL_IP.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Provide a default configuration file that will reset the variables to defaults as they currently exist within the deployment/libvirt scripts, including:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> BRIDGE_INTERFACE=${BRIDGE_INTERFACE:-stxbr}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> EXTERNAL_NETWORK=${EXTERNAL_NETWORK:-10.10.10.0/24}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> EXTERNAL_IP=${EXTERNAL_IP:-10.10.10.1/24}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> CONFIGURATION=${CONFIGURATION:-simplex}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> CONTROLLER=${CONTROLLER:-controller}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> WORKER=${WORKER:-worker}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> STORAGE=${STORAGE:-storage}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> WORKER_NODES_NUMBER=${WORKER_NODES_NUMBER:-1}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> STORAGE_NODES_NUMBER=${STORAGE_NODES_NUMBER:-1}</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Provide an example configuration file that sets a lab's attributes deviating from the default. Especially, the default and the example should co-exist. Consider honouring the "mad" example
in README.rst.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">If necessary provide an option to select values, or a script to set variables, from that configuration file.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">B) Improve usage and selection of host's resources:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Motivation: allow lab specific attributes for the host's resources and provide tools to inspect those resources within the contexts of the virtual labs and/or overall</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Note: Ensure that all changes are providing defaults that are equivalent to the existing implementation.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Values to add to the lab's attributes:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> Add DOMAIN_DIRECTORY to the set of overridable variables</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> Add an override variable for the DISK file location for each node in a virtual lab. (currently hardcoded /var/lib/libvirt/images in
<a href="https://urldefense.com/v3/__http:/functions.sh__;!!AjveYdw8EvQ!Z4_8uAlE2hflEwoj6PLS-fkscNHofrzze0Z8TcwKqUWt8eZuvXR2BYDbfdQ1NRxwAPidwaXpiTs6mEaYmZdFwN3y3svzl4kA$">
functions.sh</a>)</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> Add an override variable for the MEMORY setting for each node (currently XML hardcoded <memory>)</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> Add an override variable for the CPU setting of each node (currently XML hardcoded <vcpu>)</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Add scripting to assist with supervising the host's resources, such as:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - listing the lab's nodes and networks;</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - inspecting the lab's network configurations;</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - inspecting the host's and lab's disk usage per configured disk;</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - listing a lab's nodes' cpu and memory allocations</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">C) Isolate cluster networks where more than one cluster may be running:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Motivation: on a host that has a capacity to run virtual clusters, ensure that there is no networking crosstalk between the running clusters.</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Provide scripting to add/remove iptables restrictions for a lab's networks. Initially assume no inter-cluster communication, and only the OAM network will route to external networks. Include:</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - ipv4 and/or ipv6</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> - a lab specific iptables CHAIN</span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
<div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black">Probably: omit running this script automatically, since it changes the deployment behaviour. Consider adding an optional parameter to setup_network.sh.</span></p>
</div>
<p class="x_MsoNormal"><span style="font-size:12.0pt; color:black"> </span></p>
</div>
</div>
</div>
</body>
</html>