C.2. 同级资源启动顺序以及下级资源顺序
服务资源根据是否为子资源指定子类型属性决定子资源的启动和停止顺序,如下:
- 指定子类型属性(归类的子资源)— 如果服务资源为子资源指定子类型属性,则该子资源就被归类了。该子类型属性明确决定该子资源的启动和停止顺序。
- 不指定子类型属性(不归类子资源)— 如果服务资源不为子资源指定子类型属性,则该子资源是不归类的。该服务资源不会明确控制不归类子资源的启动和停止顺序。但不归类子资源根据其在
/etc/cluster/cluster.conf
中的顺序启动和停止。另外,不归类子资源在所有归类子资源启动后启动,并在所有归类子资源停止前停止。
注意
使用定义的子资源类型排序的唯一资源是服务资源。
有关归类子资源启动和停止顺序的详情请参考 第 C.2.1 节 “归类子资源启动和停止顺序”。有关不归类子资源启动和停止顺序的详情请参考 第 C.2.2 节 “不归类子资源启动和停止顺序”。
C.2.1. 归类子资源启动和停止顺序
在归类子资源中,子资源的类型属性定义每个资源类型的启动和停止顺序,数字从 1 到 100,一个数值用于启动顺序,一个数值用于停止顺序。数字越小,越早启动或者停止该资源类型。例如:在 表 C.1 “子资源类型启动和停止顺序” 中演示的每个资源类型值;例 C.2 “资源启动和停止值:服务资源代理
service.sh
除外” 中演示的在服务资源代理 service.sh
中显示的启动和停止值。在服务资源中,首先启动所有 LVM 子资源,然后是所有文件系统子资源,之后是所有脚本子资源,依此类推。
资源 | 子类型 | 启动顺序值 | 停止顺序值 |
---|---|---|---|
LVM | lvm | 1 | 9 |
文件系统 | fs | 2 | 8 |
GFS2 文件系统 | clusterfs | 3 | 7 |
NFS Mount | netfs | 4 | 6 |
NFS 导出 | nfsexport | 5 | 5 |
NFS 客户端 | nfsclient | 6 | 4 |
IP 地址 | ip | 7 | 2 |
Samba | smb | 8 | 3 |
脚本 | script | 9 | 1 |
例 C.2. 资源启动和停止值:服务资源代理 service.sh
除外
<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>
资源类型的顺序与其在集群配置文件
/etc/cluster/cluster.conf
中保留的顺序一致。例如:将其视为 例 C.3 “资源类型中的排序” 中的归类子资源启动和停止顺序。
例 C.3. 资源类型中的排序
<service name="foo"> <script name="1" .../> <lvm name="1" .../> <ip address="10.1.1.1" .../> <fs name="1" .../> <lvm name="2" .../> </service>
归类子资源的启动顺序
在 例 C.3 “资源类型中的排序” 中,资源按如下顺序启动:
lvm:1
— 这是 LVM 资源。首先启动所有 LVM 资源。lvm:1
(<lvm name="1" .../>
)是 LVM 资源中第一个启动的 LVM 资源,因为它是/etc/cluster/cluster.conf
文件 Service foo 部分的第一个 LVM 资源。lvm:2
— 这是 LVM 资源。首先启动所有 LVM 资源。lvm:2
(<lvm name="2" .../>
)是在lvm:1
之后启动的资源,因为它列在/etc/cluster/cluster.conf
文件 Service foo 部分lvm:1
之后。fs:1
— 这是文件系统资源。如果在 Service foo 中还有其它文件系统资源,则应按照/etc/cluster/cluster.conf
文件 Service foo 部分的顺序启动。ip:10.1.1.1
— 这是 IP 地址资源。如果在 Service foo 中还有其它 IP 地址资源,则应按照/etc/cluster/cluster.conf
文件 Service foo 部分的顺序启动。script:1
— 这是脚本资源。如果在 Service foo 中还有其它脚本资源,则应按照/etc/cluster/cluster.conf
文件 Service foo 部分的顺序启动。
归类的子资源停止顺序
在 例 C.3 “资源类型中的排序” 中资源按照如下顺序停止:
script:1
— 这是脚本资源。如果在 Service foo 中还有其它脚本资源,则应按照与/etc/cluster/cluster.conf
文件 Service foo 部分相反的顺序停止。ip:10.1.1.1
— 这是 IP 地址资源。如果在 Service foo 中还有其它 IP 地址资源,则应按照与/etc/cluster/cluster.conf
文件 Service foo 部分相反的顺序停止。fs:1
— 这是文件系统资源。如果在 Service foo 中还有其它文件系统资源,则应按照与/etc/cluster/cluster.conf
文件 Service foo 部分相反的顺序停止。lvm:2
— 这是 LVM 资源。最后停止所有 LVM 资源。lvm:2
(<lvm name="2" .../>
)是在lvm:1
之前停止的资源,资源类型组中的资源按照/etc/cluster/cluster.conf
文件 Service foo 部分的相反顺序停止。lvm:1
— 这是 LVM 资源。最后停止所有 LVM 资源。lvm:1
(<lvm name="1" .../>
)是在lvm:2
之后停止的资源,资源类型组中的资源按照/etc/cluster/cluster.conf
文件 Service foo 部分的相反顺序停止。