5.4. 创建 ASCS 资源组
您必须为 SAP 客户端配置虚拟 IP (VIP)资源,以便独立于当前运行的集群节点访问 ASCS 实例。
VIP 资源所需的资源代理取决于所使用的平台。我们使用 IPaddr2 资源代理来演示设置。
先决条件
- 您已为 ASCS 服务保留了一个虚拟 IP 地址。
-
您已在所有集群节点上挂载了共享应用程序文件系统
/sapmnt和/usr/sap/trans。 -
您已在
/etc/fstab中配置了简化的文件系统设置,并在所有群集节点上挂载了 ASCS 文件系统。 - 您已在 ASCS 实例文件系统中安装了 ASCS 实例。
- 您已在 ASCS 实例配置文件中禁用了 enqueue 服务器的自动重启。
- 您已测试了 ASCS 实例可以在所有群集节点上运行。
从 RHEL 9.4 开始,除了使用- group 参数外,还引进了在组中创建资源的新语法。现在,您会收到以下弃用警告:
弃用警告: Using- group 已被弃用,并在以后的发行版本中被替换为 组。指定切换到将来的 行为。
您可以忽略这个警告。它只告知您在后续操作系统版本中的更改。
流程
根据运行 HA 集群的平台,使用适当的资源代理来管理虚拟 IP 地址。根据您使用的资源代理来调整参数。为 ASCS 虚拟 IP 创建集群资源,例如使用
IPaddr2代理:[root]# pcs resource create rsc_vip_<SID>_ASCS<instance> \ ocf:heartbeat:IPaddr2 \ ip=<address> cidr_netmask=<netmask> nic=<device> \ --group grp_<SID>_ASCS<instance>-
将
<SID> 替换为您的 ASCS SID。 -
将
<instance> 替换为您的 ASCS 实例号。 -
将 &
lt;address> , <netmask> 和 <device> 替换为您的虚拟 IP 地址的详情。
-
将
为 ASCS 实例创建
SAPStartSrv资源:[root]# pcs resource create rsc_SAPStartSrv_<SID>_ASCS<instance> \ ocf:heartbeat:SAPStartSrv \ InstanceName="<sap_instance_name>" \ --group grp_<SID>_ASCS<instance> \ op monitor interval=0 timeout=20 enabled=0-
将
<SID> 替换为您的 ASCS SID,例如S4H。 -
将
<instance> 替换为您的 ASCS 实例编号,例如20。 -
将
<sap_instance_name> 替换为 ASCS 实例的 SAP start profile 名称,例如S4H_ASCS_s4hascs。 -
使用
enabled=0来确保禁用重复监控操作。单个资源探测仍然在资源启动时运行,但重复监控不会在以后运行。
-
将
为 ASCS 实例创建
SAPInstance资源:[root]# pcs resource create rsc_SAPInstance_<SID>_ASCS<instance> \ ocf:heartbeat:SAPInstance \ InstanceName="<sap_instance_name>" \ MINIMAL_PROBE=true \ meta resource-stickiness=5000 \ --group grp_<SID>_ASCS<instance> \ op monitor interval=20 on-fail=restart timeout=60将
<sap_instance_name> 替换为 ASCS 实例的 SAP start profile 名称,例如S4H_ASCS_s4hascs。resource-stickiness=5000将故障转移约束与 ERS 资源平衡,以便资源保留在其启动的节点上。当您将SAPStartSrv资源用于简化的文件系统设置时,您需要MINIMAL_PROBE=true。
可选: 对于 ENSA1 设置,您必须将
migration-threshold=1添加到 ASCS 实例的SAPInstance资源中:[root]# pcs resource update rsc_SAPInstance_<SID>_ASCS<instance> \ meta migration-threshold=1migration-threshold=1可确保 ASCS 实例无法在同一节点上重启。由于通过网络改进的锁表恢复机制,允许在同一节点上重新启动ASCS实例。将
resource-stickiness添加到 ASCS 资源组,以确保 ASCS 实例在 HA 集群节点上(如果可能)保持在 HA 集群节点上:[root]# pcs resource meta grp_<SID>_ASCS<instance> resource-stickiness=3000
验证
检查 ASCS 资源的集群状态:
[root]# pcs status --full | grep ASCS * Resource Group: grp_S4H_ASCS20: * rsc_vip_S4H_ASCS20 (ocf:heartbeat:IPaddr2): Started node1 * rsc_SAPStartSrv_S4H_ASCS20 (ocf:heartbeat:SAPStartSrv): Started node1 * rsc_SAPInstance_S4H_ASCS20 (ocf:heartbeat:SAPInstance): Started node1验证 ASCS 组中所有资源的资源配置详情:
[root]# pcs resource config grp_S4H_ASCS20 Group: grp_S4H_ASCS20 Meta Attributes: grp_S4H_ASCS20-meta_attributes resource-stickiness=3000 Resource: rsc_vip_S4H_ASCS20 (class=ocf provider=heartbeat type=IPaddr2) Attributes: rsc_vip_S4H_ASCS20-instance_attributes cidr_netmask=32 ip=192.168.200.101 nic=eth0 Operations: ... Resource: rsc_SAPStartSrv_S4H_ASCS20 (class=ocf provider=heartbeat type=SAPStartSrv) Attributes: rsc_SAPStartSrv_S4H_ASCS20-instance_attributes InstanceName=S4H_ASCS20_s4hascs Operations: monitor: rsc_SAPStartSrv_S4H_ASCS20-monitor-interval-0s interval=0s timeout=20s enabled=0 ... Resource: rsc_SAPInstance_S4H_ASCS20 (class=ocf provider=heartbeat type=SAPInstance) Attributes: rsc_SAPInstance_S4H_ASCS20-instance_attributes InstanceName=S4H_ASCS20_s4hascs MINIMAL_PROBE=true Meta Attributes: rsc_SAPInstance_S4H_ASCS20-meta_attributes resource-stickiness=5000 Operations: ... monitor: rsc_SAPInstance_S4H_ASCS20-monitor-interval-20 interval=20 timeout=60 on-fail=restart ...
使用 RHEL 9 的默认 pacemaker 配置,某些资源操作失败(例如,资源停止失败)会导致集群隔离节点。这会导致同一 HA 集群节点上运行的所有其他资源中断。请参阅 配置和管理高可用性集群中的监控操作的 on-fail 属性描述 - 第 21 章。资源监控操作 用于如何修改此行为的选项。