[Pacemaker] Load Balancing, Node Scores and Stickiness

Colin colin.hch at gmail.com
Wed Oct 21 12:06:16 UTC 2009


Hi All,

it seems from the documentation that Pacemaker has some inherent
tendency to to load-balancing, in the sense of, given equal choice,
not starting all resources on a single node...

Now, I would like to be able to choose freely on a scale between
"always move everything to achieve good load balancing" and "don't
gratuitously migrate resources", and would therefore like to
understand the algorithms in Pacemaker better.

Given a bunch of nodes and resources with a simple setup, i.e. no
resource colocation constraints, no groups etc., I understand that a
global score is calculated for each resource and each node, where

score( resource, node ) = sum of all rsc_location constraints for that
resource and node + if the resource is already running on this node,
the stickiness (the stickiness of the resource or the global default
stickiness)

How does the assignment of nodes proceed? My guess is something like:

for every resource in order of resource priority
   choose node with highest score for that resource
   ??? somehow modify scores to prevent all resources on one node

Are the details documented anywhere [except for the source]?

Regards, Colin




More information about the Pacemaker mailing list