Managing HP Serviceguard for Linux Ninth Edition, April 2009

If both packages have moved from node1 to node2 and node1 becomes
available, pkg2 will fail back to node1 only if pkg2s priority is higher than
pkg1’s:
If the priorities are equal, neither package will fail back (unless pkg1 is not
running; in that case pkg2 can fail back).
If pkg2s priority is higher than pkg1s, pkg2 will fail back to node1;
pkg1 will fail back to node1 provided all of pkg1s other dependencies are
met there;
if pkg2 has failed back to node1 and node1 does not meet all of pkg1s
dependencies, pkg1 will halt.
If pkg1 depends on pkg2, and pkg1’s priority is higher than pkg2’s, pkg1’s node
order dominates. Assuming pkg1s node order is node1, node2, node3, then:
On startup:
pkg1 will select node1 to start on.
pkg2 will start on node1, provided it can run there (no matter where node1
appears on pkg2s node_name list).
If pkg2 is already running on another node, it will be dragged to node1,
provided it can run there.
If pkg2 cannot start on node1, then both packages will attempt to start on
node2 (and so on).
Note that the nodes will be tried in the order of pkg1s node_name list, and pkg2
will be dragged to the first suitable node on that list whether or not it is currently
running on another node.
On failover:
If pkg1 fails on node1, pkg1 will select node2 to fail over to (or node3 if it
can run there and node2 is not available or does not meet all of its dependencies;
etc.)
pkg2 will be dragged to whatever node pkg1 has selected, and restart there;
then pkg1 will restart there.
On failback:
If both packages have moved to node2 and node1 becomes available, pkg1
will fail back to node1 if both packages can run there;
otherwise, neither package will fail back.
Guidelines for Simple Dependencies
As you can see from the above Dragging Rules for Simple Dependencies, if pkg1
depends on pkg2, it can sometimes be a good idea to assign a higher priority to pkg1,
because that provides the best chance for a successful failover (and failback) if pkg1
fails.
Package Configuration Planning 125