第 13 章 确定运行集群资源的顺序
要确定资源运行的顺序,您需要配置一个顺序约束。
以下显示了命令配置排序约束的格式。
pcs constraint order [action] resource_id then [action] resource_id [options]
下表总结了配置排序约束的属性和选项。
项 | 描述 |
---|---|
resource_id | 执行某个操作的资源的名称。 |
action | 资源操作。action 属性可能的值如下:
*
*
*
*
如果没有指定操作,则 |
|
如何强制实施约束。
*
*
* |
|
如果为 true,则代表反向约束适用于相反的操作(例如,如果 B 在 A 启动后启动,则 B 会在 A 停止前停止)。对于 |
使用以下命令从任何排序约束中删除资源。
pcs constraint order remove resource1 [resourceN]...
13.1. 配置必须的排序
一个强制的顺序约束表示,在第一次操作成功完成了第一个资源之前,不应该对第二个资源启动第二个操作。可以排序的操作是 stop
、start
,对于可升级克隆,还有 demote
和 promote
。例如:"A then B"(相当于 "start A then start B")表示 B 不会被启动,直到 A 成功启动为止。如果约束的 kind
选项被设置为 Mandatory
,或保留为默认值,则排序约束是必须的。
如果 symmetrical
选项设定为 true
或保留为默认值,则相反的操作将遵循相反的排序。start
和 stop
操作是相反的操作,demote
和 promote
是相反的操作。例如:一个对称 "promote A" 排序意味着 "stop B then demote A" 表示 A 不能被降级,直到 B 成功停止。对称排序表示 A 状态的改变可能会导致操作调度到 B。例如,给定为 "A then B",如果出现故障,B 将首先停止,A 将被停止,A 将启动,然后启动 A,那么 B 将启动。
请注意,集群会响应每个状态的更改。如果第一个资源在第二个资源启动停止操作前再次处于启动状态,则不需要重启第二个资源。