<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<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);">
Hi Chris,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
I wanted to chime in as somebody who operates an environment where users make advanced reservations for bare metal nodes (we have ~500 in total) via Blazar, which are provisioned by Ironic. The way this used to work (pre-Stein) was that Blazar would create
 host aggregates in Nova associated with a reservation ID, and then a special Blazar scheduler filter in Nova would narrow the list of hosts to only the ones tied to a reservation ID (specified as a scheduler hint, I believe.) This worked well enough but ran
 a bit against the grain of how Nova was designed and we often experience issues with large launches due to Nova's design, whereby one design assumption is that there is significant headroom available, and thus retries are a sane and practical mechanism to
 step around provision failures. In our use-case, trying to provision 50 nodes against an aggregate with 50 hosts results in many provisioning errors because Nova isn't doing inventory management and will try to launch 2 bare metal instances on one host. Correct
 me if I'm wrong, but I think the Placement API addresses this better.<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Anyways, there was a lot of work[1] done in Stein to change the approach for one aspect of Blazar reservations: instance reservations (VMs). With the new approach, which uses the Placement API, a custom resource class is created to represent the reservation.
 I believe it is the intent of the Blazar core team to implement this for host reservations, whereby a user reserves an entire compute host; this is particularly relevant for Ironic.<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Advanced reservations are a thorny problem especially when you are dealing with more complex use-cases. To be honest the division of responsibility between Blazar, Nova, and Placement is still not clear to me. So, more conversation between these working groups,
 which you are trying to facilitate, feels like a good idea.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
I'm a bit of an OpenStack newbie still, so I'm still working on wrapping my head around all the pieces and how they ideally fit together, so some of this may be nonsense, and that would be why.</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Cheers,</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
/Jason</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<b>Chameleon Cloud<br>
</b></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<b></b><a href="https://www.chameleoncloud.org/" id="LPNoLP684825">https://www.chameleoncloud.org/</a><br>
</div>
<br>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
[1]: <a href="https://review.openstack.org/#/q/topic:bp/placement-api" id="LPlnk901015">
https://review.openstack.org/#/q/topic:bp/placement-api</a><br>
</div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Chris Dent <cdent+os@anticdent.org><br>
<b>Sent:</b> Tuesday, April 9, 2019 06:56<br>
<b>To:</b> OpenStack-discuss@lists.openstack.org<br>
<b>Subject:</b> [placement][ironic][blazar][ptg] "direct baremetal reservations" with ironic+blazar</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText"><br>
The etherpad [1] doesn't have any additional notes besides the topic<br>
but the general questions are:<br>
<br>
* Do people want to do baremetal reservations with some combination<br>
   of Ironic, Placement and Blazar, now or ever?<br>
<br>
* What about Ironic and Placement, sans-Nova?<br>
<br>
* If so, what would need to happen to make those things possible?<br>
<br>
Based on my observations at the recent OpenInfra Days UK, I'd say<br>
there's definitely an underserved need for this kind of<br>
functionality. From the Placement side of things I would guess<br>
there's little that would need to be done; it's more a matter of<br>
getting other pieces and parts getting data in and out of Placement.<br>
<br>
Discuss...<br>
<br>
[1] <a href="https://etherpad.openstack.org/p/placement-ptg-train">https://etherpad.openstack.org/p/placement-ptg-train</a><br>
<br>
-- <br>
Chris Dent                       ٩◔̯◔۶           <a href="https://anticdent.org/">
https://anticdent.org/</a><br>
freenode: cdent                                         tw: @anticdent</div>
</span></font></div>
</body>
</html>