Excerpts from Yaniv Kaul's message of Tue Dec 20 20:58:55 +1000 2011:On 12/20/2011 10:22 AM, Steven Lawrance wrote:Knowing whether we can provision that VM immediately is important because otherwise we can move onto the search for a "real" system that matches the requirements, i.e. we wouldn't want a job held up because it *could* be run via RHEV while there are idle baremetal boxes sitting in the lab. But at the same time, we don't want to poll RHEVM continually for all jobs sitting in the queue.The only real way to know if a guest can run is actually execute it.Could RHEVM notify Beaker of changes in available resources (such as when a guest is destroyed or created)? Maybe Beaker itself could track RHEV's available resources and just poll for changes at the start of each loop over the queued recipes, rather than repeatedly asking RHEVM whether it could provision each one?But I think we are optimizing for the worst case scenario, where we ran out of resources. I expect us to have enough resources to handle peak loads. And btw, we are talking about tens to hundreds of concurrent instances, right?I don't think it's safe to make that assumption (particularly not for all Beaker instances). In fact, we can probably assume the opposite...
So if we can't distinguish not being able to provision a particular recipe via RHEV "right now" as opposed to "never (with current resources)", then we at least need a cheap way to determine the former in order to avoid a bottleneck in the scheduler.
That is, when a job is submitted, we want to determine whether it _can_ be satisfied by RHEV without then restricting it to RHEV and preventing it from going to baremetal hardware in the lab. Perhaps it is enough for Beaker to retry executing virtualisable recipes when it knows the situation has changed (e.g. another recipe completed thereby freeing resources, or if it can be informed of events like new virt hosts being added). But if tens or hundreds of virtualisable recipes are sitting in the queue, that could still take quite a long time.All events can be registered to and sent via an email notification.Is any other notification method available?
Steven. _______________________________________________ Beaker-devel mailing list Beaker-devel@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/beaker-devel