C.2. Sibling Start Ordering and Resource Child Ordering The Service resource determines the start order and the stop order of a child resource according to whether it designates a child-type attribute for a child resource as follows: Designates child-type attribute ( typed child resource) - If the Service resource designates a child-type attribute for a child resource, the child resource is typed . The child-type attribute explicitly determines the start and the stop order of the child resource. Does not designate child-type attribute ( non-typed child resource) - If the Service resource does not designate a child-type attribute for a child resource, the child resource is non-typed . The Service resource does not explicitly control the starting order and stopping order of a non-typed child resource. However, a non-typed child resource is started and stopped according to its order in /etc/cluster/cluster.conf . In addition, non-typed child resources are started after all typed child resources have started and are stopped before any typed child resources have stopped. Note The only resource to implement defined child resource type ordering is the Service resource. For more information about typed child resource start and stop ordering, see Section C.2.1, "Typed Child Resource Start and Stop Ordering" . For more information about non-typed child resource start and stop ordering, see Section C.2.2, "Non-typed Child Resource Start and Stop Ordering" . C.2.1. Typed Child Resource Start and Stop Ordering For a typed child resource, the type attribute for the child resource defines the start order and the stop order of each resource type with a number that can range from 1 to 100; one value for start, and one value for stop. The lower the number, the earlier a resource type starts or stops. For example, Table C.1, "Child Resource Type Start and Stop Order" shows the start and stop values for each resource type; Example C.2, "Resource Start and Stop Values: Excerpt from Service Resource Agent, service.sh " shows the start and stop values as they appear in the Service resource agent, service.sh . For the Service resource, all LVM children are started first, followed by all File System children, followed by all Script children, and so forth. Table C.1. Child Resource Type Start and Stop Order Resource Child Type Start-order Value Stop-order Value LVM lvm 1 9 File System fs 2 8 GFS2 File System clusterfs 3 7 NFS Mount netfs 4 6 NFS Export nfsexport 5 5 NFS Client nfsclient 6 4 IP Address ip 7 2 Samba smb 8 3 Script script 9 1 Example C.2. Resource Start and Stop Values: Excerpt from Service Resource Agent, service.sh Ordering within a resource type is preserved as it exists in the cluster configuration file, /etc/cluster/cluster.conf . For example, consider the starting order and stopping order of the typed child resources in Example C.3, "Ordering Within a Resource Type" . Example C.3. Ordering Within a Resource Type Typed Child Resource Starting Order In Example C.3, "Ordering Within a Resource Type" , the resources are started in the following order: lvm:1 - This is an LVM resource. All LVM resources are started first. lvm:1 ( <lvm name="1" .../> ) is the first LVM resource started among LVM resources because it is the first LVM resource listed in the Service foo portion of /etc/cluster/cluster.conf . lvm:2 - This is an LVM resource. All LVM resources are started first. lvm:2 ( <lvm name="2" .../> ) is started after lvm:1 because it is listed after lvm:1 in the Service foo portion of /etc/cluster/cluster.conf . fs:1 - This is a File System resource. If there were other File System resources in Service foo , they would start in the order listed in the Service foo portion of /etc/cluster/cluster.conf . ip:10.1.1.1 - This is an IP Address resource. If there were other IP Address resources in Service foo , they would start in the order listed in the Service foo portion of /etc/cluster/cluster.conf . script:1 - This is a Script resource. If there were other Script resources in Service foo , they would start in the order listed in the Service foo portion of /etc/cluster/cluster.conf . Typed Child Resource Stopping Order In Example C.3, "Ordering Within a Resource Type" , the resources are stopped in the following order: script:1 - This is a Script resource. If there were other Script resources in Service foo , they would stop in the reverse order listed in the Service foo portion of /etc/cluster/cluster.conf . ip:10.1.1.1 - This is an IP Address resource. If there were other IP Address resources in Service foo , they would stop in the reverse order listed in the Service foo portion of /etc/cluster/cluster.conf . fs:1 - This is a File System resource. If there were other File System resources in Service foo , they would stop in the reverse order listed in the Service foo portion of /etc/cluster/cluster.conf . lvm:2 - This is an LVM resource. All LVM resources are stopped last. lvm:2 ( <lvm name="2" .../> ) is stopped before lvm:1 ; resources within a group of a resource type are stopped in the reverse order listed in the Service foo portion of /etc/cluster/cluster.conf . lvm:1 - This is an LVM resource. All LVM resources are stopped last. lvm:1 ( <lvm name="1" .../> ) is stopped after lvm:2 ; resources within a group of a resource type are stopped in the reverse order listed in the Service foo portion of /etc/cluster/cluster.conf .

Commands:
<special tag="rgmanager"> <attributes root="1" maxinstances="1"/> <child type="lvm" start="1" stop="9"/> <child type="fs" start="2" stop="8"/> <child type="clusterfs" start="3" stop="7"/> <child type="netfs" start="4" stop="6"/> <child type="nfsexport" start="5" stop="5"/> <child type="nfsclient" start="6" stop="4"/> <child type="ip" start="7" stop="2"/> <child type="smb" start="8" stop="3"/> <child type="script" start="9" stop="1"/> </special>
<service name="foo"> <script name="1" .../> <lvm name="1" .../> <ip address="10.1.1.1" .../> <fs name="1" .../> <lvm name="2" .../> </service>