3.7. 创建限制
为实现正确的操作,我们需要确保在启动 SAPHana 资源之前启动 SAPHanaTopology 资源,并且虚拟 IP 地址也存在于运行主 SAP HANA 实例的节点上。
要达到此目的,需要以下限制:
3.7.1. 约束 - 在 SAPHana前启动 SAPHanaTopology 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
以下示例将创建约束,该约束强制使用 这些资源的开始 顺序。这里有两个值得提及的事情:
-
symmetrical=false属性定义我们只关注资源启动,不需要以相反的顺序停止。 -
两个资源(
SAPHana和SAPHanaTopology)都有属性interleave=true,它允许在节点上并行启动这些资源。这允许,尽管设置顺序限制,但我们不会等待所有节点启动,但我们可以立即在SAPHanaTopologySAPHanaTopology 运行后在任何节点上启动 SAPHana 资源。
创建约束的命令:
pcs constraint order SAPHanaTopology_RH1_02-clone then SAPHana_RH1_02-clone symmetrical=false
[root]# pcs constraint order SAPHanaTopology_RH1_02-clone then SAPHana_RH1_02-clone symmetrical=false
生成的约束应类似以下示例:
pcs constraint ... Ordering Constraints: start SAPHanaTopology_RH1_02-clone then start SAPHana_RH1_02-clone (kind:Mandatory) (non-symmetrical) ...
[root]# pcs constraint
...
Ordering Constraints:
start SAPHanaTopology_RH1_02-clone then start SAPHana_RH1_02-clone (kind:Mandatory) (non-symmetrical)
...
3.7.2. 约束 - 将 IPaddr2 资源与 SAPHana 资源的主并置 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
以下是一个示例命令,它会将 IPaddr2 资源与 SAPHana 资源并置,该资源被提升为 Master。
pcs constraint colocation add vip_RH1_02 with master SAPHana_RH1_02-clone 2000
[root]# pcs constraint colocation add vip_RH1_02 with master SAPHana_RH1_02-clone 2000
请注意,约束使用 score 为 2000,而不是默认的 INFINITY。这允许 IPaddr2 资源在 SAPHana 资源中没有 Master 时保持活动状态,因此仍然可以使用 SAP 管理控制台(MMC)或 SAP Landscape Management (LaMa)等工具来查询 SAP 实例的状态信息。
生成的约束应类似如下:
pcs constraint ... Colocation Constraints: vip_RH1_02 with SAPHana_RH1_02-clone (score:2000) (rsc-role:Started) (with-rsc-role:Master) ...
[root]# pcs constraint
...
Colocation Constraints:
vip_RH1_02 with SAPHana_RH1_02-clone (score:2000) (rsc-role:Started) (with-rsc-role:Master)
...