[Pacemaker] Resource capacity limit

Yan Gao ygao at novell.com
Fri Nov 13 07:23:20 UTC 2009


Hi Andrew, Lars,

Andrew Beekhof wrote:
> I'd like to see the while-block from native_color() be a function that
> is called from native_assign_node().
It seems to be too late to filter out the nodes without enough capacity from
native_assign_node(). I wrote a have_enough_capacity() function which is
called from native_choose_node() to achieve that.

> And instead of a limit-utilization option, we'd have
> placement-strategy=(default|utilization|minimal)
Done. And added a "balanced" option as Lars advised.

> 
> Default ::= what we do now
> Utilization ::= what you've implemented
> Minimal ::= what you've implemented _without_ the load balancing we
> currently do.
> 
> (Maybe the names could be improved, but hopefully you get the idea).
> 
> The last one is interesting because it allows us to concentrate
> services on the minimum number of required nodes (and potentially
> power some of the others down).
Done.

Minimal:
Consider the utilization of nodes and resources. While if a resource has
the same score for several available nodes, do _not_ balance the load.
That implies that the resources  will be concentrated to minimal number of nodes.

Balanced:
Consider the utilization of nodes and resources. If a resource has
the same score for several available nodes:
* First, balance the load according to the remaining capacity of nodes.
(implemented from compare_capacity())
* If the nodes still have the equal remaining capacity, then balance
the load according to the numbers of resources that the nodes will run.

The strategies are determined mainly from sort_node_weight(), so I changed the
prototypes of some functions a bit.

Please help to review and test it. Any comments and suggestions are welcome:-)

Thanks,
  Yan

-- 
ygao at novell.com
Software Engineer
China Server Team, OPS Engineering

Novell, Inc.
Making IT Work As One™
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pacemaker-placement-strategy.patch
Type: text/x-patch
Size: 16986 bytes
Desc: not available
URL: <https://lists.clusterlabs.org/pipermail/pacemaker/attachments/20091113/4d94a840/attachment-0002.bin>


More information about the Pacemaker mailing list