<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">2014-03-03 23:44 GMT-03:00 Steve Gordon <span dir="ltr"><<a href="mailto:sgordon@redhat.com" target="_blank">sgordon@redhat.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div class="">----- Original Message -----<br>
> Hi everyone,<br>
><br>
> I'm currently taking part of a project at the Federal University of Campina<br>
> Grande called fogbow, which aims on providing an energy efficient scheduler<br>
> and an opportunistic compute node (which deactivates the service if the<br>
> host isn't idle) on top of openstack.<br>
<br>
</div>Hi Marcos,<br></blockquote><div><br></div><div>Hi Steve, thank you very much for the reply, </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<br>
This sounds like an interesting idea - have you had a look at the way this functionality is implemented in the oVirt (<a href="http://ovirt.org" target="_blank">http://ovirt.org</a>) scheduler [1] in case there are any ideas there that could be leveraged? I believe the determination there is also made by examining pCPU load (albeit with some additional computations applied) though it does not use powernap.<br>

</blockquote><div><br></div><div><span style="font-family:arial,sans-serif;font-size:13px">Regarding oVirt, thanks for the pointer. We'll take a look on how it implements this feature. </span></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">


<div class=""><br>
> Regarding the opportunistic aspect of the project, we're planning on using<br>
> powernap (<a href="http://manpages.ubuntu.com/manpages/lucid/man8/powernap.8.html" target="_blank">http://manpages.ubuntu.com/manpages/lucid/man8/powernap.8.html</a>)<br>
> to tell if the host is idle or not.<br>
><br>
> Finally, my question is: what do you guys think would be the best way for a<br>
> powernap action script to interact with nova-compute in order to stop all<br>
> running instances and disable the host?<br>
<br>
</div>If I understand correctly your suggestion here is that the powernap action script would run when powernapd on the host has determined it to be at low CPU usage at which point it would stop the instances and disable/poweroff the host, rather than having one of the other nova components monitor the load and initiate the required action?<br>

</blockquote><div><br></div><div><span style="font-family:arial,sans-serif;font-size:13px">Actually we want nova-compute to run opportunistically, in the sense that it should *only* run when the host is idle. Btw, by reading my previous message again, I realized it doesn't seem very clear.</span><br>

</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class=""><br>
> Would killing and respawning the nova-compute be an elegant way of doing<br>
> that in your opinion? Or do RPC calls sound better?<br>
<br>
</div>Is the desire necessarily to *stop* all instances, or evacuate/migrate them to another host so that you can consolidate instances on a subset of your compute hosts and either power the remainder down and/or disable the compute service on them? Another consideration here might be how much available pCPU you want to keep as a buffer in case of a burst in instance activity (probably something to make configurable?)?<br>

</blockquote><div><br></div><div><span style="font-family:arial,sans-serif;font-size:13px">Instances' migration is definitely a desirable feature, but we are not putting much effort on this for now. When we notice that the host is being actively used by a local user, we want to simply kill all running instances.</span><br>

</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
Thanks,<br>
<br>
Steve<br>
<br>
[1] <a href="http://www.ovirt.org/Features/oVirtSchedulerAPI#Balance" target="_blank">http://www.ovirt.org/Features/oVirtSchedulerAPI#Balance</a><br>
</blockquote></div><br></div></div>