Managing HP Serviceguard for Linux, Seventh Edition, July 2007

Planning and Documenting an HA Cluster
Package Configuration Planning
Chapter 4 119
3. All packages with no_priority are by definition of equal priority,
and there is no other way to assign equal priorities; a numerical
priority must be unique within the cluster. See priority (page 206)
for more information.
If pkg1 depends on pkg2, and pkg1’s priority is lower than or
equal to pkg2’s, pkg2’s node order dominates. Assuming pkg2’s
node order is node1, node2, node3, then:
•On startup:
pkg2 will start on node1, or node2 if node1 is not available or
does not at present meet all of its dependencies, etc.
pkg1 will start on whatever node pkg2 has started on (no
matter where that node appears on pkg1’s node_name list)
provided all of pkg1’s other dependencies are met there.
If the node where pkg2 has started does not meet all pkg1’s
dependencies, pkg1 will not start.
On failover:
—If pkg2 fails on node1, pkg2 will fail over to node2 (or node3 if
node2 is not available or does not currently meet all of its
dependencies, etc.)
pkg1 will fail over to whatever node pkg2 has restarted on
(no matter where that node appears on pkg1’s node_name
list) provided all of pkg1’s dependencies are met there.
If the node where pkg2 has restarted does not meet all
pkg1’s dependencies, pkg1 will not restart.
—If pkg1 fails, pkg1 will not fail over.
This is because pkg1 cannot restart on any adoptive node until
pkg2 is running there, and pkg2 is still running on the original
node. pkg1 cannot drag pkg2 because it has insufficient priority
to do so.
On failback:
If both packages have moved from node1
to node2 and node1
becomes available, pkg2 will fail back to node1 only if pkg2’s
priority is higher than pkg1’s: