[Haizea] How to customize the host selection policy in Haizea with opennebula?Thank you!

Borja Sotomayor borja at borjanet.com
Thu Oct 29 17:47:45 CDT 2009


Hi,

> I want to implement Load-aware Policy which impletmented by using those
> nodes with more FREECPU first.

As you point out, one way of accomplishing this would be to write a
new Host Selection policy. However, how to access information like the
available resources on each node is not properly documented yet (it
involves using the SlotTable and AvailabilityWindow classes).
Furthermore, Haizea's slot table is not dynamically updated with the
FREECPU information provided by OpenNebula (Haizea assumes there are
no other VMs running other than the ones it manage, which is arguably
a reasonable assumption).

So, unfortunately, the only advice I can give at this point is (1)
take a look at the greedy mapper and the greedy host allocation policy
for examples of how the AvailabilityWindow is used to determine the
amount of available resources on the nodes, and (2) wait until the
missing documentation is written (there is not time frame for this so
far)


> More desireble, I can use Load-aware Policy by the way as follows!
>
> If I have a VM template file named test1.cfg,like this:
>
> [snip]

Allowing the user to decide what allocation policy must be used looks
odd to me. Only an administrator should be able to decide what
allocation policy is going to be used, which is why this is specified
in the Haizea configuration file, not on each individual request. You
are certainly free to modify Haizea to do this in your own
experiments, but it is not something that I would be interested in
doing myself.


> The last question is how to use Haizea group option.
>
> The group means :
>
> [snip]
>
> Can you give me a example how to use Haizea group option.

If you submit multiple VMs to OpenNebula with the HAIZEA parameter
having the same value for the group option, e.g.:

HAIZEA = [
  start        = "best_effort",
  duration     = "01:00:00",
  preemptible  = "yes",
  group = "group1"
]

All the VMs with the same group identifier will be scheduled in an
all-or-nothing fashion (Haizea will try to schedule all the VMs to run
at the same time; if that is not possible, the VMs are not scheduled,
or remain queued, depending on the type of lease)

Cheers!
--Borja


More information about the Haizea mailing list