<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>Hi, </div>
<div><br>
</div>
<div>It will be good to simplify the PoC scenario. In terms of policies and other constraints related to VM Placement, I guess we agree that not all policies/constraints have to originate from the policy framework such as Congress. The existing placement
engine logic that is present in the default Nova scheduler or say the Nova solver scheduler will be adding its own set of constraints to the placement calculations. </div>
<div><br>
</div>
<div>My idea would be make the Nova placement engine, (for e.g., solver scheduler) talk to Congress to get the Datalog rules / translated LP constraints, based on the defined policies pertaining to a particular tenant/user. This of course needs to be worked
out in terms of translation logic, constraint specifications, etc. Also, this workflow will be part of the scheduling/Placement workflow as part of the Nova boot instance API call (for the initial placement). </div>
<div><br>
</div>
<div>As the next phase, for migrations scenario, Congress can periodically trigger a check, if any of the violations/warnings are triggered, (corresponding tables getting populated, as you show in your example), if so, then trigger migrations, which will have
to go through another round of placement decisions for figuring out the best destinations, without violating the policies and other existing constraints. </div>
<div><br>
</div>
<div>Happy to discuss more and simplify a PoC scenario. </div>
<div><br>
</div>
<div>Thanks,</div>
<div>Yathi. </div>
<div><br>
</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div>
<div>On 2/27/15, 6:40 AM, "<a href="mailto:ruby.krishnaswamy@orange.com">ruby.krishnaswamy@orange.com</a>" <<a href="mailto:ruby.krishnaswamy@orange.com">ruby.krishnaswamy@orange.com</a>> wrote:</div>
</div>
<div><br>
</div>
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div 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">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}
@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:"Segoe UI";
panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
{font-family:o365IconsIE8;}
@font-face
{font-family:o365IconsMouse;}
/* 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;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
pre
{mso-style-priority:99;
mso-style-link:"Préformaté HTML Car";
margin:0cm;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
{mso-style-priority:99;
mso-style-link:"Texte de bulles Car";
margin:0cm;
margin-bottom:.0001pt;
font-size:8.0pt;
font-family:"Tahoma","sans-serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0cm;
margin-right:0cm;
margin-bottom:0cm;
margin-left:36.0pt;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ms-cui-menu, li.ms-cui-menu, div.ms-cui-menu
{mso-style-name:ms-cui-menu;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
background:white;
font-size:11.0pt;
font-family:"Segoe UI","sans-serif";
color:#333333;}
p.ms-cui-menusection-title, li.ms-cui-menusection-title, div.ms-cui-menusection-title
{mso-style-name:ms-cui-menusection-title;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";
display:none;}
p.ms-cui-ctl, li.ms-cui-ctl, div.ms-cui-ctl
{mso-style-name:ms-cui-ctl;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";
color:#333333;}
p.ms-cui-ctl-on, li.ms-cui-ctl-on, div.ms-cui-ctl-on
{mso-style-name:ms-cui-ctl-on;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
background:#DFEDFA;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ms-cui-img-cont-float, li.ms-cui-img-cont-float, div.ms-cui-img-cont-float
{mso-style-name:ms-cui-img-cont-float;
mso-style-priority:99;
margin-top:1.5pt;
margin-right:0cm;
margin-bottom:0cm;
margin-left:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ms-cui-smenu-inner, li.ms-cui-smenu-inner, div.ms-cui-smenu-inner
{mso-style-name:ms-cui-smenu-inner;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ms-owa-paste-option-icon, li.ms-owa-paste-option-icon, div.ms-owa-paste-option-icon
{mso-style-name:ms-owa-paste-option-icon;
mso-style-priority:99;
margin-top:1.5pt;
margin-right:3.0pt;
margin-bottom:0cm;
margin-left:3.0pt;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";
vertical-align:sub;}
p.ms-rtepasteflyout-option, li.ms-rtepasteflyout-option, div.ms-rtepasteflyout-option
{mso-style-name:ms-rtepasteflyout-option;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.ms-cui-menusection, li.ms-cui-menusection, div.ms-cui-menusection
{mso-style-name:ms-cui-menusection;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.wf, li.wf, div.wf
{mso-style-name:wf;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.wf-family-owa, li.wf-family-owa, div.wf-family-owa
{mso-style-name:wf-family-owa;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:o365IconsMouse;}
p.wf-owa-play-large, li.wf-owa-play-large, div.wf-owa-play-large
{mso-style-name:wf-owa-play-large;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.wf-size-play-large, li.wf-size-play-large, div.wf-size-play-large
{mso-style-name:wf-size-play-large;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";}
p.wf-family-owa1, li.wf-family-owa1, div.wf-family-owa1
{mso-style-name:wf-family-owa1;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:o365IconsIE8;}
p.wf-owa-play-large1, li.wf-owa-play-large1, div.wf-owa-play-large1
{mso-style-name:wf-owa-play-large1;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman","serif";
color:white;}
p.wf-owa-play-large2, li.wf-owa-play-large2, div.wf-owa-play-large2
{mso-style-name:wf-owa-play-large2;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
text-align:center;
font-size:12.0pt;
font-family:"Times New Roman","serif";
color:white;}
p.wf-size-play-large1, li.wf-size-play-large1, div.wf-size-play-large1
{mso-style-name:wf-size-play-large1;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:22.5pt;
font-family:"Times New Roman","serif";}
p.wf-size-play-large2, li.wf-size-play-large2, div.wf-size-play-large2
{mso-style-name:wf-size-play-large2;
mso-style-priority:99;
margin:0cm;
margin-bottom:.0001pt;
font-size:22.5pt;
font-family:"Times New Roman","serif";}
span.EmailStyle37
{mso-style-type:personal;
font-family:"Arial","sans-serif";
color:black;
font-weight:normal;
font-style:normal;}
span.PrformatHTMLCar
{mso-style-name:"Préformaté HTML Car";
mso-style-priority:99;
mso-style-link:"Préformaté HTML";
font-family:Consolas;}
span.TextedebullesCar
{mso-style-name:"Texte de bulles Car";
mso-style-priority:99;
mso-style-link:"Texte de bulles";
font-family:"Tahoma","sans-serif";}
span.EmailStyle42
{mso-style-type:personal-reply;
font-family:"Arial","sans-serif";
color:black;
font-weight:normal;
font-style:normal;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:562837415;
mso-list-type:hybrid;
mso-list-template-ids:-14367710 -105722318 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l0:level1
{mso-level-start-at:3;
mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:53.4pt;
text-indent:-18.0pt;
mso-ansi-font-size:12.0pt;
font-family:Wingdings;
mso-fareast-font-family:Calibri;
mso-bidi-font-family:"Times New Roman";
color:windowtext;}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:89.4pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:125.4pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:161.4pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:197.4pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:233.4pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:269.4pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:305.4pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:341.4pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l1
{mso-list-id:920062328;
mso-list-type:hybrid;
mso-list-template-ids:-1878756118 -255961220 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l1:level1
{mso-level-start-at:2;
mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:53.4pt;
text-indent:-18.0pt;
font-family:Wingdings;
mso-fareast-font-family:Calibri;
mso-bidi-font-family:"Times New Roman";}
@list l1:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:89.4pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l1:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:125.4pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l1:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:161.4pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l1:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:197.4pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l1:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:233.4pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l1:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:269.4pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l1:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:305.4pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l1:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:341.4pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l2
{mso-list-id:1003049695;
mso-list-type:hybrid;
mso-list-template-ids:13284550 8583636 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l2:level1
{mso-level-start-at:15;
mso-level-number-format:bullet;
mso-level-text:-;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Calibri","sans-serif";
mso-fareast-font-family:"Times New Roman";
mso-bidi-font-family:"Times New Roman";}
@list l2:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l2:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l2:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l2:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l2:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l2:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l2:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l2:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l3
{mso-list-id:1317566395;
mso-list-type:hybrid;
mso-list-template-ids:278404720 67895313 67895321 67895323 67895311 67895321 67895323 67895311 67895321 67895323;}
@list l3:level1
{mso-level-text:"%1\)";
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:18.0pt;
text-indent:-18.0pt;}
@list l3:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:54.0pt;
text-indent:-18.0pt;}
@list l3:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
margin-left:90.0pt;
text-indent:-9.0pt;}
@list l3:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:126.0pt;
text-indent:-18.0pt;}
@list l3:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:162.0pt;
text-indent:-18.0pt;}
@list l3:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
margin-left:198.0pt;
text-indent:-9.0pt;}
@list l3:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:234.0pt;
text-indent:-18.0pt;}
@list l3:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:270.0pt;
text-indent:-18.0pt;}
@list l3:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
margin-left:306.0pt;
text-indent:-9.0pt;}
@list l4
{mso-list-id:1350175818;
mso-list-type:hybrid;
mso-list-template-ids:-21618932 -2000632464 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l4:level1
{mso-level-start-at:15;
mso-level-number-format:bullet;
mso-level-text:-;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Arial","sans-serif";
mso-fareast-font-family:Calibri;}
@list l4:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l4:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l4:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l4:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l4:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l4:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l4:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l4:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l5
{mso-list-id:1609653194;
mso-list-type:hybrid;
mso-list-template-ids:-1359176026 -1085749712 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l5:level1
{mso-level-start-at:15;
mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;
mso-fareast-font-family:"Times New Roman";
mso-bidi-font-family:"Times New Roman";}
@list l5:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l5:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l5:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l5:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l5:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l5:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Symbol;}
@list l5:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l5:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l6
{mso-list-id:2057510848;
mso-list-type:hybrid;
mso-list-template-ids:-1279853874 1263277570 67895299 67895301 67895297 67895299 67895301 67895297 67895299 67895301;}
@list l6:level1
{mso-level-start-at:15;
mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:21.0pt;
text-indent:-18.0pt;
font-family:Wingdings;
mso-fareast-font-family:Calibri;
mso-bidi-font-family:"Times New Roman";}
@list l6:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:57.0pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l6:level3
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:93.0pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l6:level4
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:129.0pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l6:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:165.0pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l6:level6
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:201.0pt;
text-indent:-18.0pt;
font-family:Wingdings;}
@list l6:level7
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:237.0pt;
text-indent:-18.0pt;
font-family:Symbol;}
@list l6:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:273.0pt;
text-indent:-18.0pt;
font-family:"Courier New";}
@list l6:level9
{mso-level-number-format:bullet;
mso-level-text:;
mso-level-tab-stop:none;
mso-level-number-position:left;
margin-left:309.0pt;
text-indent:-18.0pt;
font-family:Wingdings;}
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 lang="FR" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">My first suggestion: why don’t we set up call together with Ramki, Yathi, Debo, as soon as possible ?<o:p></o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l2 level1 lfo10">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:black"><span style="mso-list:Ignore">-<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">How to go forward concretely with the 8 steps for the PoC (details within each step),<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:72.0pt;text-indent:-18.0pt;mso-list:l2 level2 lfo10">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.5pt;font-family:"Courier New";color:black"><span style="mso-list:Ignore">o<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Including nova integration points<o:p></o:p></span></p>
<p class="MsoListParagraph" style="text-indent:-18.0pt;mso-list:l2 level1 lfo10">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.5pt;font-family:"Calibri","sans-serif";color:black"><span style="mso-list:Ignore">-<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Identify “friction points” in the details above to resolve for beyond PoC<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
</div>
</div>
</blockquote>
</span><span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<div 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">
<div lang="FR" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Tim: Where does the rest of the program originate? I’m not saying the entire LP program is generated from the Datalog constraints; some of it
is generated by the solver independent of the Datalog. In the text, I gave the example of defining hMemUse[j].<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Tim: The VM-placement engine does 2 things: (I) translates Datalog to LP and (ii) generates additional LP constraints. (Both work items could
leverage any constraints that are builtin to a specific solver, e.g. the solver-scheduler. The point is that there are 2 distinct, conceptual origins of the LP constraints: those that represent the Datalog and those that codify the domain.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Tim: Each domain-specific solver can do whatever it wants, so it’s not clear to me what the value of choosing a modeling language actually is—unless
we want to build a library of common functionality that makes the construction of domain-specific engine (wrappers) easier. I’d prefer to spend our energy understanding whether the proposed workflow/interface works for a couple of different domain-specific
policy engines OR to flush this one out and build it.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoListParagraph"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-18.0pt;mso-list:l6 level1 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">The value of choosing a modeling language is related to how “best to automate translations” from Datalog constraints (to LP)?<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:57.0pt;text-indent:-18.0pt;mso-list:l6 level2 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black"><span style="mso-list:Ignore">o<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">We can have look for one unique way of generation, and not, “some of it is generated by the VM-placement engine
<s>solver</s> independent of the Datalog”.<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:57.0pt;text-indent:-18.0pt;mso-list:l6 level2 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black"><span style="mso-list:Ignore">o<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Datalog imposes most constraints (== policies)<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:57.0pt;text-indent:-18.0pt;mso-list:l6 level2 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black"><span style="mso-list:Ignore">o<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Two constraints are not “policies”<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:93.0pt;text-indent:-18.0pt;mso-list:l6 level3 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">§<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">A VM is allocated to only one host.<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:93.0pt;text-indent:-18.0pt;mso-list:l6 level3 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">§<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Host capacity is not exceeded.<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:129.0pt;text-indent:-18.0pt;mso-list:l6 level4 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size: 10pt; color: black;"><span style="mso-list:Ignore">·<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Over subscription
<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-18.0pt;mso-list:l6 level1 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Otherwise what was your suggestion? As follows?<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:57.0pt;text-indent:-18.0pt;mso-list:l6 level2 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black"><span style="mso-list:Ignore">o<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Use framework (extend) the nova-solver-scheduler currently implements (itself using PuLP). This framework specifies an API to write
constraints and cost functions (in a domain specific way). Modifying this framework:<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:93.0pt;text-indent:-18.0pt;mso-list:l6 level3 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">§<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">To read data in from DSE<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:93.0pt;text-indent:-18.0pt;mso-list:l6 level3 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">§<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">To obtain the cost function from Datalog (e.g. minimize Y[host1]…)<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:93.0pt;text-indent:-18.0pt;mso-list:l6 level3 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">§<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">To obtain Datalog constraints (e.g. <75% memory allocation constraint for hosts of special zone)<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:57.0pt;text-indent:-18.0pt;mso-list:l6 level2 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:"Courier New";color:black"><span style="mso-list:Ignore">o<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">We need to specify the “format” for this? It will likely to be a string of the form (?)<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:93.0pt;text-indent:-18.0pt;mso-list:l6 level3 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">§<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">“hMemUse[0] – 0.75*hMemCap[0] < 100*y[0], “ Memory allocation constraint on Host 0“,
<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:35.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:35.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:35.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-18.0pt;mso-list:l6 level1 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">From your doc (page 5, section 4)<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New';">warning(id) :-</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New';"> nova:host(id, name, service, zone, memory_capacity),</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New';"> legacy:special_zone(zone),</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New';"> ceilometer:statistics(id, "memory", avg, count, duration,
</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:36.0pt;text-indent:36.0pt"><span lang="EN-US" style="font-family: 'Courier New';">durstart, durend, max, min, period, perstart, perend,
</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:72.0pt"><span lang="EN-US" style="font-family: 'Courier New';">sum, unit),</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: 'Courier New';"> avg > 0.75 * memory_capacity</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt"><span lang="EN-US">Notice that this is a soft constraint, identified by the use of
</span><span lang="EN-US" style="font-family: 'Courier New';">warning</span><span lang="EN-US"> instead of
</span><span lang="EN-US" style="font-family: 'Courier New';">error</span><span lang="EN-US">. When compiling to LP, the VM-placement engine will attempt to minimize the number of rows in the
</span><span lang="EN-US" style="font-family: 'Courier New';">warning</span><span lang="EN-US"> table. That is, for each possible row
</span><span lang="EN-US" style="font-family: 'Courier New';">r</span><span lang="EN-US"> it will create a variable
</span><span lang="EN-US" style="font-family: 'Courier New';">Y[r]</span><span lang="EN-US"> and assign it True if the row is a warning and False otherwise</span><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:21.0pt;text-indent:14.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">
<o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:21.0pt;text-indent:14.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">The policy (warning) : when will it be evaluated? This should be done periodically? Then if the table has even one True entry, then the action should
be to generate the LP, solve, activate the migrations etc.<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:21.0pt;text-indent:-18.0pt;mso-list:l6 level1 lfo8">
<!--[if !supportLists]--><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">The “LP” cannot be generated when the VM-placement engine receives the policy snippet.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Ruby<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"><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: 10pt; font-family: Tahoma, sans-serif;">De :</span></b><span lang="EN-US" style="font-size: 10pt; font-family: Tahoma, sans-serif;"> Tim Hinrichs [<a href="mailto:thinrichs@vmware.com">mailto:thinrichs@vmware.com</a>]
<br>
<b>Envoyé :</b> jeudi 26 février 2015 19:17<br>
<b>À :</b> OpenStack Development Mailing List (not for usage questions)<br>
<b>Objet :</b> Re: [openstack-dev] [Congress][Delegation] Initial workflow design<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Inline.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><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: 11pt; font-family: Calibri, sans-serif; color: black;">From:
</span></b><span style="font-size: 11pt; font-family: Calibri, sans-serif; color: black;">"<a href="mailto:ruby.krishnaswamy@orange.com">ruby.krishnaswamy@orange.com</a>" <<a href="mailto:ruby.krishnaswamy@orange.com">ruby.krishnaswamy@orange.com</a>><br>
<b>Reply-To: </b>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<b>Date: </b>Wednesday, February 25, 2015 at 8:53 AM<br>
<b>To: </b>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a>><br>
<b>Subject: </b>Re: [openstack-dev] [Congress][Delegation] Initial workflow design<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Hi Tim, All,</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l3 level1 lfo2">
<!--[if !supportLists]--><span style="color:black"><span style="mso-list:Ignore">1)<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Step 3: The VM-placement engine is also a “datalog engine” . Right?</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">When policies are delegated:
</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:17.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">when policies are inserted? When the VM-placement engine has already registered itself all policies
are given to it?</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:17.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">
</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:17.4pt"><span lang="EN-US" style="color:black">“In our example, this would mean the domain-specific policy engine executes the following API call over the DSE”</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:53.4pt;text-indent:-18.0pt;mso-list:l0 level1 lfo4">
<!--[if !supportLists]--><span style="font-family:Wingdings"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="color:black">“domain-agnostic” ….</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Done.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l3 level1 lfo2">
<!--[if !supportLists]--><span style="color:black"><span style="mso-list:Ignore">2)<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Step 4:</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Ok</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">But finally: if Congress will likely “delegate”
</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Not sure what you’re suggesting here.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l3 level1 lfo2">
<!--[if !supportLists]--><span style="color:black"><span style="mso-list:Ignore">3)<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Step 5: Compilation of subpolicy to LP in VM-placement engine</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:35.4pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">For the PoC, it is likely that the LP program ( in PuLP or some other ML) is *<b>not</b>* completely generated by
compiler/translator.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:53.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo6">
<!--[if !supportLists]--><span style="font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Right?</span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Where does the rest of the program originate? I’m not saying the entire LP program is generated from the Datalog constraints; some of it is generated by the
solver independent of the Datalog. In the text, I gave the example of defining hMemUse[j].<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoNormal" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> You also indicate that some category of constraints (“</span><span lang="EN-US" style="color:black">the LP solver
doesn’t know what the relationship between assign[i][j], hMemUse[j], and vMemUse[i] actually is, so the VM-placement engine must also include constraints”) .</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:18.0pt"><span lang="EN-US" style="color:black"> </span><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">These constraints must be “explicitly” written?</span><span lang="EN-US" style="color:black">
</span><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">(e.g. max_ram_allocation etc that are constraints used in the solver-scheduler’s package).</span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">The VM-placement engine does 2 things: (I) translates Datalog to LP and (ii) generates additional LP constraints. (Both work items could leverage any constraints
that are builtin to a specific solver, e.g. the solver-scheduler. The point is that there are 2 distinct, conceptual origins of the LP constraints: those that represent the Datalog and those that codify the domain.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoNormal" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> So what “parts” will be generated:
</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> Cost function :
</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> Constraint from Policy : memory usage < 75%
</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">
</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> Then the rest should be “filled” up?</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> Could we convene on an intermediary “modeling language”?</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> @Yathi: do you think we could use some thing like AMPL ? Is this proprietary?</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> A detail: the example “</span><span lang="EN-US" style="font-family: 'Courier New'; color: black;">Y[host1] = hMemUse[host1] > 0.75 * hMemCap[host1]</span><span lang="EN-US" style="color:black">”</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:53.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo6">
<!--[if !supportLists]--><span style="font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">To be changed to a linear form (mi – Mi > 0 then Yi = 1 else Yi = 0) so something like (mi – Mi) < 100 yi</span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Each domain-specific solver can do whatever it wants, so it’s not clear to me what the value of choosing a modeling language actually is—unless we want to
build a library of common functionality that makes the construction of domain-specific engine (wrappers) easier. I’d prefer to spend our energy understanding whether the proposed workflow/interface works for a couple of different domain-specific policy engines
OR to flush this one out and build it.<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="color:black"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l3 level1 lfo2">
<!--[if !supportLists]--><span style="color:black"><span style="mso-list:Ignore">4)<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Step 6: This is completely internal to the VM-placement engine (and we could say this is “transparent” to Congress)</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">We should allow configuration of a solver (this itself could be a policy
</span><span lang="EN-US" style="font-size:10.0pt;font-family:Wingdings;color:black">J</span><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> )</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">How to invoke the solver API ? </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">The domain-specific placement engine could send out to DSE (action_handler: data)?</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">I had always envisioned the solver being just a library of code—not an entity that sits on the DSE itself. <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">3) Step 7 : Perform the migrations (according to the assignments computed in the step 6)</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> This part invokes OpenStack API (to perform migrations).</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> We may suppose that there are services implementing “action handlers”?</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> It can listen on the DSE and execute the action.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">That interface is supposed to exist by the Kilo release. I’ll check up on the progress.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l3 level1 lfo2">
<!--[if !supportLists]--><span style="color:black"><span style="mso-list:Ignore">5)<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Nova tables to use</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:36.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Policy
</span><span lang="EN-US" style="font-family: 'Courier New'; color: black;">warning(id) :-</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:36.0pt"><span lang="EN-US" style="font-family: 'Courier New'; color: black;"> nova:host(id, name, service, zone, memory_capacity),</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:36.0pt"><span lang="EN-US" style="font-family: 'Courier New'; color: black;"> legacy:special_zone(zone),</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:36.0pt"><span lang="EN-US" style="font-family: 'Courier New'; color: black;"> ceilometer:statistics(id, "memory", avg, count, duration,</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:180.0pt"><span lang="EN-US" style="font-family: 'Courier New'; color: black;"> durstart, durend, max, min, period,</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:180.0pt;text-indent:36.0pt"><span lang="EN-US" style="font-family: 'Courier New'; color: black;">perstart, perend, sum, unit),</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:36.0pt"><span lang="EN-US" style="font-family: 'Courier New'; color: black;"> avg > 0.75 * memory_capacity</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">I believe that ceilometer gives usage of VMs and not hosts. The host table (ComputeNode table) should give current
used capacity. </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Good to know. <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l3 level1 lfo2">
<!--[if !supportLists]--><span style="color:black"><span style="mso-list:Ignore">6)<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">One of the issues highlighted in OpenStack (scheduler) and also elsewhere (e.g. Omega scheduler by google) is :</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Reading “host utilization” state from the data bases and DB (nova:host table) updates and overhead of maintaining
in-memory state uptodate.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:53.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo6">
<!--[if !supportLists]--><span style="font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">This is expensive and current nova-scheduler does face this issue (many blogs/discussions).</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> While the first goal is a PoC, this will likely become a concern in terms of adoption.</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">So you’re saying we won’t have fresh enough data to make policy decisions? If the data changes so frequently that we can’t get an accurate view, then I’m
guessing we shouldn’t be migrating based on that data anyway.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Could you point me to some of these discussions?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l3 level1 lfo2">
<!--[if !supportLists]--><span style="color:black"><span style="mso-list:Ignore">7)<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">While in this document you have changed the “example” policy, could we drill down the set of policies for the PoC (the server under
utilization ?)</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:53.4pt;text-indent:-18.0pt;mso-list:l1 level1 lfo6">
<!--[if !supportLists]--><span style="font-family:Wingdings;color:black"><span style="mso-list:Ignore">ð<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">As a reference
</span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Sure. The only reason I chose this policy was because it doesn’t have aggregation. I’m guessing we’ll want to avoid aggregation for the POC because we don’t
yet have it in Congress, and it complicates the problem of translating Datalog to LP substantially. <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Tim<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"><o:p> </o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-right:0cm" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;">Ruby</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Arial, sans-serif; color: black;"> </span><span style="color:black"><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: 10pt; font-family: Tahoma, sans-serif; color: black;">De :</span></b><span lang="EN-US" style="font-size: 10pt; font-family: Tahoma, sans-serif; color: black;"> Yathiraj Udupi (</span><span style="font-size: 10pt; font-family: Tahoma, sans-serif; color: black;">yudupi)
[<a href="mailto:yudupi@cisco.com">mailto:yudupi@cisco.com</a>] <br>
<b>Envoyé :</b> mardi 24 février 2015 20:01<br>
<b>À :</b> OpenStack Development Mailing List (not for usage questions); Tim Hinrichs<br>
<b>Cc :</b> Debo Dutta (dedutta)<br>
<b>Objet :</b> Re: [openstack-dev] [Congress][Delegation] Initial workflow design</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>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Hi Tim, </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Thanks for your updated doc on Delegation from Congress to a domain-specific policy engine, in this case, you are planning to build a LP-based VM-Placement
engine to be the domain specific policy engine. </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">I agree your main goal is to first get the delegation interface sorted out. It will be good so that external services (like Solver-Scheduler) can also easily
integrate to the delegation model. </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">From the Solver-Scheduler point of view, we would actually want to start working on a PoC effort to start integrating Congress and the Solver-Scheduler. </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">We believe rather than pushing this effort to a long-term, it would add value to both the Solver Scheduler effort, as well as the Congress effort to try some
early integration now, as most of the LP solver work for VM placements is ready available now in Solver scheduler, and we need to spend some time thinking about translating your domain-agnostic policy to constraints that the Solver scheduler can use. </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">I would definitely need your help from the Congress interfaces and I hope you will share your early interfaces for the delegation, so I can start the effort
from the Solver scheduler side for integration. </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">I will reach out to you to get some initial help for integration w.r.t. Congress, and also keep you posted about the progress from our side. </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Thanks,</span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">Yathi. </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;">On 2/23/15, 11:28 AM, "Tim Hinrichs" <<a href="mailto:thinrichs@vmware.com">thinrichs@vmware.com</a>> wrote:</span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0cm 0cm 0cm 4.0pt;margin-left:3.75pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<div>
<div>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;">Hi all,</span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;">I made a heavy editing pass of the Delegation google doc, incorporating many of your comments and my latest investigations into VM-placement. I left the old stuff in
place at the end of the doc and put the new stuff at the top. </span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;">My goal was to propose an end-to-end workflow for a PoC that we could put together quickly to help us explore the delegation interface. We should iterate on this design
until we have something that we think is workable. And by all means pipe up if you think we need a totally different starting point to begin the iteration. </span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;">(BTW I'm thinking of the integration with solver-scheduler as a long-term solution to VM-placement, once we get the delegation interface sorted out.)</span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;"><a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.google.com_document_d_1ksDilJYXV-2D5AXWON8PLMedDKr9NpS8VbT0jIy-5FMIEtI_edit&d=AwMFAw&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=B6BWd4kFfgOzAREgThxkmTZKy7dDXE2-eBAmL0PBK7s&m=kF8jMOpogOhk8MJWvNMKJC3PiNImxWpZeD2o642YM2s&s=8PV5EW-kz8Q9aP9riFbIjJXJNZXchx2NsL-Z3Y7E5Vg&e=">https://docs.google.com/document/d/1ksDilJYXV-5AXWON8PLMedDKr9NpS8VbT0jIy_MIEtI/edit#</a></span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;"> </span><span style="color:black"><o:p></o:p></span></p>
<p style="background:white"><span style="font-family: Calibri, sans-serif; color: black;">Tim</span><span style="color:black"><o:p></o:p></span></p>
</div>
</div>
</div>
</blockquote>
<pre><span style="color:black">_________________________________________________________________________________________________________________________<o:p></o:p></span></pre>
<pre><span style="color:black"><o:p> </o:p></span></pre>
<pre><span style="color:black">Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc<o:p></o:p></span></pre>
<pre><span style="color:black">pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler<o:p></o:p></span></pre>
<pre><span style="color:black">a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,<o:p></o:p></span></pre>
<pre><span style="color:black">Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.<o:p></o:p></span></pre>
<pre><span style="color:black"><o:p> </o:p></span></pre>
<pre><span style="color:black">This message and its attachments may contain confidential or privileged information that may be protected by law;<o:p></o:p></span></pre>
<pre><span style="color:black">they should not be distributed, used or copied without authorisation.<o:p></o:p></span></pre>
<pre><span style="color:black">If you have received this email in error, please notify the sender and delete this message and its attachments.<o:p></o:p></span></pre>
<pre><span style="color:black">As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.<o:p></o:p></span></pre>
<pre><span style="color:black">Thank you.<o:p></o:p></span></pre>
</div>
</div>
</blockquote>
</div>
<pre>_________________________________________________________________________________________________________________________
Ce message et ses pieces jointes peuvent contenir des informations confidentielles ou privilegiees et ne doivent donc
pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu ce message par erreur, veuillez le signaler
a l'expediteur et le detruire ainsi que les pieces jointes. Les messages electroniques etant susceptibles d'alteration,
Orange decline toute responsabilite si ce message a ete altere, deforme ou falsifie. Merci.
This message and its attachments may contain confidential or privileged information that may be protected by law;
they should not be distributed, used or copied without authorisation.
If you have received this email in error, please notify the sender and delete this message and its attachments.
As emails may be altered, Orange is not liable for messages that have been modified, changed or falsified.
Thank you.
</pre>
</div>
</div>
</blockquote>
</span>
</body>
</html>