Managing HP Serviceguard for Linux, Tenth Edition, September 2012

NOTE: pkg1 can depend on more than one other package, and pkg2 can depend
on another package or packages; we are assuming only two packages in order to make
the rules as clear as possible.
pkg1 will not start on any node unless pkg2 is running on that node.
pkg1’s package_type (page 206) and failover_policy (page 209) constrain
the type and characteristics of pkg2, as follows:
If pkg1 is a multi-node package, pkg2 must be a multi-node or system multi-node
package. (Note that system multi-node packages are not supported for general
use.)
If pkg1 is a failover package and its failover_policy is
min_package_node, pkg2 must be a multi-node or system multi-node package.
If pkg1 is a failover package and its failover_policy is configured_node,
pkg2 must be:
a multi-node or system multi-node package, or
a failover package whose failover_policy is configured_node.
pkg2 cannot be a failover package whose failover_policy is
min_package_node.
pkg2’s node_name list (page 206) must contain all of the nodes on pkg1s.
This means that if pkg1 is configured to run on any node in the cluster (*), pkg2
must also be configured to run on any node.
NOTE: If pkg1 lists all the nodes, rather than using the asterisk (*), pkg2 must
also list them.
Preferably the nodes should be listed in the same order if the dependency is
between packages whose failover_policy is configured_node;
cmcheckconf and cmapplyconf will warn you if they are not.
A package cannot depend on itself, directly or indirectly.
That is, not only must pkg1 not specify itself in the dependency_condition
(page 211), but pkg1 must not specify a dependency on pkg2 if pkg2 depends on
pkg1, or if pkg2 depends on pkg3 which depends on pkg1, etc.
If pkg1 is a failover package and pkg2 is a multi-node or system multi-node package,
and pkg2 fails, pkg1 will halt and fail over to the next node on its node_name list
on which pkg2 is running (and any other dependencies, such as resource
dependencies or a dependency on a third package, are met).
Package Configuration Planning 131