<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<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">
Hello, Mitch.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<ul data-editing-info="{"orderedStyleType":1,"unorderedStyleType":4}">
<li style="list-style-type: "➢ "; color: rgb(0, 0, 0);"><span><span style="text-align: start; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0">"Please let me know I should follow a particular procedure.
Otherwise I intend to create a story in storyboard."</span><br>
</span></li></ul>
<div><span style="text-align: start; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0">I believe that's the way to go. Just so you know, for the work under the /virtualbox directory of the same repository,
we used the <a href="https://storyboard.openstack.org/#!/story/2005051" title="https://storyboard.openstack.org/#!/story/2005051" data-loopstyle="linkonly" id="LPlnk764044">
original story</a> with the Task that merged the code back in 2019, adding new Tasks to it.</span></div>
<div><span style="text-align: start; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0"><br>
</span></div>
<div><span style="text-align: start; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0 ContentPasted1">Regarding the "Install StarlingX Kubernetes in a virtual environment" page, you might want to
look at what we're proposing at <a href="https://review.opendev.org/c/starlingx/docs/+/886178" id="LPlnk945433">https://review.opendev.org/c/starlingx/docs/+/886178</a>. </span><span style="">Basically,
</span><u style="font-family: inherit; font-size: inherit; font-style: inherit; font-variant-ligatures: inherit; font-variant-caps: inherit; font-weight: inherit;">for now</u><span style="">, we don't remove all the detailed procedures but provide an additional
"automated install" guide at the top.</span></div>
<div><span style="text-align: start; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0 ContentPasted1"><br>
</span></div>
<div><span style="text-align: start; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0 ContentPasted1">Regards,</span></div>
<div><span style="text-align: start; display: inline !important; color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" class="ContentPasted0 ContentPasted1">Bruno.</span></div>
</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> Thebeau, Michel <Michel.Thebeau@windriver.com><br>
<b>Sent:</b> Wednesday, June 28, 2023 16:50<br>
<b>To:</b> starlingx-discuss@lists.starlingx.io <starlingx-discuss@lists.starlingx.io><br>
<b>Subject:</b> [Starlingx-discuss] Intentions toward enhancements for Starlingx Libvirt deployment method host utilization</font>
<div> </div>
</div>
<style type="text/css" style="display:none">
<!--
p
{margin-top:0;
margin-bottom:0}
-->
</style>
<div dir="ltr">
<table border="0" cellspacing="0" cellpadding="0" width="100%" align="left" style="border:0; display:table; width:100%; table-layout:fixed; border-collapse:seperate; float:none">
<tbody style="display:block">
<tr>
<td valign="middle" width="1px" bgcolor="#A6A6A6" cellpadding="7px 2px 7px 2px" style="padding:7px 2px 7px 2px; background-color:#A6A6A6">
</td>
<td valign="middle" width="100%" bgcolor="#EAEAEA" cellpadding="7px 5px 7px 15px" color="#212121" style="width:100%; background-color:#EAEAEA; padding:7px 5px 7px 15px; font-family:wf_segoe-ui_normal,Segoe UI,Segoe WP,Tahoma,Arial,sans-serif; font-size:12px; font-weight:normal; color:#212121; text-align:left; word-wrap:break-word">
<div>You don't often get email from michel.thebeau@windriver.com. <a href="https://aka.ms/LearnAboutSenderIdentification">
Learn why this is important</a></div>
</td>
<td valign="middle" align="left" width="75px" bgcolor="#EAEAEA" cellpadding="7px 5px 7px 5px" color="#212121" style="width:75px; background-color:#EAEAEA; padding:7px 5px 7px 5px; font-family:wf_segoe-ui_normal,Segoe UI,Segoe WP,Tahoma,Arial,sans-serif; font-size:12px; font-weight:normal; color:#212121; text-align:left; word-wrap:break-word">
</td>
</tr>
</tbody>
</table>
<div>
<div></div>
<table width="100%" style="table-layout:auto; font-size:12px; background-color:rgb(211,205,203); border-width:1px 1px 1px 6px; border-style:solid; border-color:rgb(116,114,113); font-family:Arial!important; padding:8px!important; border-collapse:separate!important">
<tbody>
<tr>
<td style="background-color:rgb(211,205,203); font-family:Arial!important; font-size:12px!important; color:black">
<font color="#FF2626">External Mail: </font>Do not click links or open attachments unless you recognize the sender and know the content is safe.
</td>
</tr>
</tbody>
</table>
<span style="display:none; font-size:0px; line-height:0; max-height:0px; max-width:0px; opacity:0; overflow:hidden"></span>
<div></div>
<div>
<div class="x_elementToProof x_ContentPasted0" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Hi,<br>
</div>
<div class="x_elementToProof x_ContentPasted0" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<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.</div>
<div class="x_elementToProof x_ContentPasted0" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<br>
</div>
<div class="x_elementToProof x_ContentPasted0" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
Mitch.<br>
===<br>
Starlingx Libvirt deployment method host utilization enhancements
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">References:</div>
<div class="x_ContentPasted0">"Install StarlingX Kubernetes in a virtual environment" - https://docs.starlingx.io/deploy_install_guides/release/index-install-r7-8966076f0e81.html#index-install-r7-8966076f0e81</div>
<div class="x_ContentPasted0">Libvirt deployment method in starlingx/tools - https://opendev.org/starlingx/tools/src/branch/master/deployment/libvirt</div>
<div class="x_ContentPasted0">Libvirt deployment method moved this week to starlingx/virtual-deployment - https://opendev.org/starlingx/virtual-deployment/src/branch/master/libvirt</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Motivation is to:</div>
<div class="x_ContentPasted0"> A) maintain attributes for more than one virtual lab</div>
<div class="x_ContentPasted0"> B) improve the usage and selection of the host's resources for disk, memory and cpu</div>
<div class="x_ContentPasted0"> C) isolate cluster networks where more than one virtual lab may be running</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Philosophy of continuity: </div>
<div class="x_ContentPasted0">Introduce changes and developments in continuity with established examples and approaches.</div>
<div class="x_ContentPasted0"> - Maintain the existing examples for default setting and the 'mad' override.</div>
<div class="x_ContentPasted0"> - 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.</div>
<div class="x_ContentPasted0"> - Maintain and extend the use of overridable variable definitions for the attributes of a lab.</div>
<div class="x_ContentPasted0"> - Maintain and extend the use of command line parameters for configuration selection, such as "-c 'simplex'".</div>
<div class="x_ContentPasted0"> - Maintain and extend the existing workflow: "exporting variables, setup_network.sh, setup_configation.sh, destroy_configuration.sh, destroy_network.sh".</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">A) Maintain configurations for more than one virtual cluster:</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Motivation: allow a lab's attributes to be recalled from a configuration file and operate upon that lab specifically.</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">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.</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Provide a default configuration file that will reset the variables to defaults as they currently exist within the deployment/libvirt scripts, including:</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0"> BRIDGE_INTERFACE=${BRIDGE_INTERFACE:-stxbr}</div>
<div class="x_ContentPasted0"> EXTERNAL_NETWORK=${EXTERNAL_NETWORK:-10.10.10.0/24}</div>
<div class="x_ContentPasted0"> EXTERNAL_IP=${EXTERNAL_IP:-10.10.10.1/24}</div>
<div class="x_ContentPasted0"> CONFIGURATION=${CONFIGURATION:-simplex}</div>
<div class="x_ContentPasted0"> CONTROLLER=${CONTROLLER:-controller}</div>
<div class="x_ContentPasted0"> WORKER=${WORKER:-worker}</div>
<div class="x_ContentPasted0"> STORAGE=${STORAGE:-storage}</div>
<div class="x_ContentPasted0"> WORKER_NODES_NUMBER=${WORKER_NODES_NUMBER:-1}</div>
<div class="x_ContentPasted0"> STORAGE_NODES_NUMBER=${STORAGE_NODES_NUMBER:-1}</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">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.</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">If necessary provide an option to select values, or a script to set variables, from that configuration file.</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">B) Improve usage and selection of host's resources:</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">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</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Note: Ensure that all changes are providing defaults that are equivalent to the existing implementation.</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Values to add to the lab's attributes:</div>
<div class="x_ContentPasted0"> Add DOMAIN_DIRECTORY to the set of overridable variables</div>
<div class="x_ContentPasted0"> Add an override variable for the DISK file location for each node in a virtual lab. (currently hardcoded /var/lib/libvirt/images in functions.sh)</div>
<div class="x_ContentPasted0"> Add an override variable for the MEMORY setting for each node (currently XML hardcoded <memory>)</div>
<div class="x_ContentPasted0"> Add an override variable for the CPU setting of each node (currently XML hardcoded <vcpu>)</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Add scripting to assist with supervising the host's resources, such as:</div>
<div class="x_ContentPasted0"> - listing the lab's nodes and networks;</div>
<div class="x_ContentPasted0"> - inspecting the lab's network configurations;</div>
<div class="x_ContentPasted0"> - inspecting the host's and lab's disk usage per configured disk;</div>
<div class="x_ContentPasted0"> - listing a lab's nodes' cpu and memory allocations</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">C) Isolate cluster networks where more than one cluster may be running:</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Motivation: on a host that has a capacity to run virtual clusters, ensure that there is no networking crosstalk between the running clusters.</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">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:</div>
<div class="x_ContentPasted0"> - ipv4 and/or ipv6</div>
<div class="x_ContentPasted0"> - a lab specific iptables CHAIN</div>
<div><br class="x_ContentPasted0">
</div>
<div class="x_ContentPasted0">Probably: omit running this script automatically, since it changes the deployment behaviour. Consider adding an optional parameter to setup_network.sh.</div>
<br>
</div>
</div>
</div>
</div>
</body>
</html>