IBM Cloud Docs
在多区域环境中的 Red Hat Enterprise Linux High Availability Add-On 集群中为 SAP S/4HANA (ASCS 和 ERS) 配置高可用性

在多区域环境中的 Red Hat Enterprise Linux High Availability Add-On 集群中为 SAP S/4HANA (ASCS 和 ERS) 配置高可用性

以下信息介绍了 Red Hat Enterprise Linux (RHEL) 高可用性附加集群中 ABAP SAP Central Services (ASCS)Enqueue Replication Server (ERS) 的配置。 该集群使用 IBM® Power® Virtual Server 作为集群节点。

此示例配置适用于 独立排队服务器(Standalone Enqueue Server)的第二代,也称为 ENSA2

从 SAP S/4HANA 1809发布开始,ENSA2 默认安装,并可在双节点或多节点集群中进行配置。 本示例使用 ENSA2 双节点 RHEL HA 附加集群的设置。 如果 ASCS服务在双节点集群中发生故障,它将在运行ERS实例的节点上重启。 然后,SAP 应用程序的锁条目将从 ERS实例中的锁表副本中恢复。 当管理员激活故障群集节点时 ,ERS实例将移动到另一个节点(反配置),以保护其锁表副本。

建议您将 SAP 数据库实例和其他 SAP 应用服务器实例安装在 ASCSERS 双节点集群之外的虚拟服务器实例上。

准备工作

查看 IBM Power Virtual Server 参考资料中为 SAP 应用程序实施高可用性 中列出的一般要求、产品文档、支持文章和 SAP 注释。

先决条件

  • 此信息描述了使用 NFS 安装的存储作为实例目录的设置。

    • ASCS实例使用挂载点 /usr/sap/<SID>/ASCS<INSTNO>
    • ERS实例使用挂载点 /usr/sap/<SID>/ERS<INSTNO>
    • 这两种情况都使用 /sapmnt/<SID> 挂载点,具有共享的读写权限
    • 可能需要其他共享文件系统,例如 saptrans /usr/sap/trans

    请确保配置了高可用性的 NFS 服务器来为这些共享提供服务。 NFS 服务器不得安装在属于集群的虚拟服务器上 ENSA2 集群的一部分。 本文档不介绍文件存储或创建集群文件系统资源的步骤。

  • ASCS 和ERS实例的虚拟主机名必须符合 SAP ABAP平台服务器主机名中规定的要求。

  • ASCSERS 实例的子网和虚拟 IP 地址不能存在于 Power Virtual Server 工作区中。 它们被配置为集群资源。 但是,您必须将 ASCSERS 实例的虚拟 IP 地址和虚拟主机名添加到域名服务 (DNS) 和 /etc/hosts 所有集群节点上都有此文件。

准备节点以安装ASCS和ERS实例

以下信息介绍了如何准备节点,以便安装 SAP ASCSERS实例

准备环境变量

为了简化设置,请在两个集群节点上为用户 root 准备以下环境变量。 这些环境变量与本信息中后续的操作系统命令一起使用。

在两个节点上,设置以下环境变量。

# General settings
export CLUSTERNAME="SAP_S01"        # Cluster name
export NODE1=<HOSTNAME_1>           # Virtual server instance 1 hostname
export NODE2=<HOSTNAME_2>           # Virtual server instance 2 hostname

export SID=<SID>                    # SAP System ID (uppercase)
export sid=<sid>                    # SAP System ID (lowercase)

# ASCS instance
export ASCS_INSTNO=<INSTNO>         # ASCS instance number
export ASCS_NET=<Subnet name>       # Name for the ASCS subnet in IBM Cloud
export ASCS_CIDR=<CIDR of subnet>   # CIDR of the ASCS subnet containing the service IP address
export ASCS_VH=<virtual hostname>   # ASCS virtual hostname
export ASCS_IP=<IP address>         # ASCS virtual IP address

# ERS instance
export ERS_INSTNO=<INSTNO>          # ERS instance number
export ERS_NET=<Subnet name>        # Name for the ERS subnet in IBM Cloud
export ERS_CIDR=<CIDR of subnet>    # CIDR of the ERS subnet containing the service IP address
export ERS_VH=<virtual hostname>    # ERS virtual hostname
export ERS_IP=<IP address>          # ERS virtual IP address

# Other multizone region settings
export CLOUD_REGION=<CLOUD_REGION>       # Multizone region name
export APIKEY="APIKEY or path to file"   # API key of the ServiceID for the resource agent
export API_TYPE="private or public"      # Use private or public API endpoints
export IBMCLOUD_CRN_1=<IBMCLOUD_CRN_1>   # Workspace 1 CRN
export IBMCLOUD_CRN_2=<IBMCLOUD_CRN_2>   # Workspace 2 CRN
export POWERVSI_1=<POWERVSI_1>           # Virtual server 1 instance id
export POWERVSI_2=<POWERVSI_2>           # Virtual server 2 instance id
export JUMBO="true or false"             # Enable Jumbo frames

# NFS settings
export NFS_SERVER="NFS server"           # Hostname or IP address of the highly available NFS server
export NFS_SHARE="NFS server directory"  # Exported file system directory on the NFS server
export NFS_OPTIONS="rw,sec=sys"          # Sample NFS client mount options

以下是如何设置多区域实施所需的额外环境变量的示例。

# General settings
export CLUSTERNAME="SAP_S01"         # Cluster name
export NODE1="cl-s01-1"              # Virtual service instance 1 hostname
export NODE2="cl-s01-2"              # Virtual server instance 2 hostname

export SID="S01"                     # SAP System ID (uppercase)
export sid="s01"                     # SAP System ID (lowercase)

# ASCS instance
export ASCS_INSTNO="21"              # ASCS instance number
export ASCS_NET="s01-ascs-net"       # Name for the ASCS subnet in IBM Cloud
export ASCS_CIDR="10.40.21.100/30"   # CIDR of the ASCS subnet containing the service IP address
export ASCS_VH="s01ascs"             # ASCS virtual hostname
export ASCS_IP="10.40.21.102"        # ASCS virtual IP address

# ERS instance
export ERS_INSTNO="22"               # ERS instance number
export ERS_NET="s01-ers-net"         # Name for the ERS subnet in IBM Cloud
export ERS_CIDR="10.40.22.100/30"    # CIDR of the ERS subnet containing the service IP address
export ERS_VH="s01ers"               # ERS virtual hostname
export ERS_IP="10.40.22.102"         # ERS virtual IP address

# Other multizone region settings
export CLOUD_REGION="eu-de"
export IBMCLOUD_CRN_1="crn:v1:bluemix:public:power-iaas:eu-de-2:a/a1b2c3d4e5f60123456789a1b2c3d4e5:a1b2c3d4-0123-4567-89ab-a1b2c3d4e5f6::"
export IBMCLOUD_CRN_2="crn:v1:bluemix:public:power-iaas:eu-de-1:a/a1b2c3d4e5f60123456789a1b2c3d4e5:e5f6a1b2-cdef-0123-4567-a1b2c3d4e5f6::"
export POWERVSI_1="a1b2c3d4-0123-890a-f012-0123456789ab"
export POWERVSI_2="e5f6a1b2-4567-bcde-3456-cdef01234567"
export APIKEY="@/root/.apikey.json"
export API_TYPE="private"
export JUMBO="true"

# NFS settings
export NFS_SERVER="cl-nfs"           # Hostname or IP address of the highly available NFS server
export NFS_SHARE="/sapS01"           # Exported file system directory on the NFS server
export NFS_OPTIONS="rw,sec=sys"      # Sample NFS client mount options

为实例文件系统创建挂载点

在两个节点上,运行以下命令为实例文件系统创建挂载点。

mkdir -p /usr/sap/${SID}/{ASCS${ASCS_INSTNO},ERS${ERS_INSTNO}} /sapmnt/${SID}

安装和设置 RHEL HA 附加群集

按照 在多区域区域环境中的 IBM Power Virtual Server 上实施 RHEL HA Add-On 集群安装并设置 RHEL HA Add-On 集群

按照 创建围栏设备中的 描述配置并测试集群围栏。

在 SAP 安装前准备集群资源

确保 RHEL HA 附加群集在两个虚拟服务器实例上运行,并且节点防护已经过测试。

为sapmnt配置集群资源

在 NODE1 上,运行以下命令创建一个克隆的文件系统集群资源,该资源将从所有集群节点上的 NFS 服务器挂载 SAPMNT

pcs resource create fs_sapmnt Filesystem \
    device="${NFS_SERVER}:${NFS_SHARE}/sapmnt" \
    directory="/sapmnt/${SID}" \
    fstype='nfs' \
    options="${NFS_OPTIONS}" \
    clone interleave=true

准备在 NODE1

在 NODE1 上,运行以下命令创建一个文件系统集群资源,用于挂载 ASCS实例目录。

pcs resource create ${sid}_fs_ascs${ASCS_INSTNO} Filesystem \
    device="${NFS_SERVER}:${NFS_SHARE}/ASCS" \
    directory=/usr/sap/${SID}/ASCS${ASCS_INSTNO} \
    fstype=nfs \
    options="${NFS_OPTIONS}" \
    force_unmount=safe \
    op start interval=0 timeout=60 \
    op stop interval=0 timeout=120 \
    --group ${sid}_ascs${ASCS_INSTNO}_group

在 NODE1 上,运行以下命令为ASCS虚拟IP地址创建一个 powervs-subnet 集群资源。

pcs resource create ${sid}_vip_ascs${ASCS_INSTNO} powervs-subnet \
    api_key=${APIKEY} \
    api_type=${API_TYPE} \
    cidr=${ASCS_CIDR} \
    ip=${ASCS_IP} \
    crn_host_map="${NODE1}:${IBMCLOUD_CRN_1};${NODE2}:${IBMCLOUD_CRN_2}" \
    vsi_host_map="${NODE1}:${POWERVSI_1};${NODE2}:${POWERVSI_2}" \
    jumbo=${JUMBO} \
    region=${CLOUD_REGION} \
    subnet_name=${ASCS_NET} \
    route_table=5${ASCS_INSTNO} \
    op start timeout=720 \
    op stop timeout=300 \
    op monitor interval=60 timeout=30 \
    --group ${sid}_ascs${ASCS_INSTNO}_group

准备在 NODE2

在 NODE1 上,运行以下命令创建文件系统集群资源,以挂载 ERS实例目录。

pcs resource create ${sid}_fs_ers${ERS_INSTNO} Filesystem \
    device="${NFS_SERVER}:${NFS_SHARE}/ERS" \
    directory=/usr/sap/${SID}/ERS${ERS_INSTNO} \
    fstype=nfs \
    options="${NFS_OPTIONS}" \
    force_unmount=safe \
    op start interval=0 timeout=60 \
    op stop interval=0 timeout=120 \
    --group ${sid}_ers${ERS_INSTNO}_group

在 NODE1 上,运行以下命令为 ERS 虚拟 IP 地址创建一个 powervs-subnet 集群资源。

pcs resource create ${sid}_vip_ers${ERS_INSTNO} powervs-subnet \
    api_key=${APIKEY} \
    api_type=${API_TYPE} \
    cidr=${ERS_CIDR} \
    ip=${ERS_IP} \
    crn_host_map="${NODE1}:${IBMCLOUD_CRN_1};${NODE2}:${IBMCLOUD_CRN_2}" \
    vsi_host_map="${NODE1}:${POWERVSI_1};${NODE2}:${POWERVSI_2}" \
    jumbo=${JUMBO} \
    region=${CLOUD_REGION} \
    subnet_name=${ERS_NET} \
    route_table=5${ERS_INSTNO} \
    op start timeout=720 \
    op stop timeout=300 \
    op monitor interval=60 timeout=30 \
    --group ${sid}_ers${ERS_INSTNO}_group

验证集群配置

在 NODE1 上,运行以下命令以验证此阶段的集群配置。

pcs status --full

样本输出:

# pcs status --full
Cluster name: SAP_S01
Status of pacemakerd: 'Pacemaker is running' (last updated 2024-11-20 14:04:05 +01:00)
Cluster Summary:
  * Stack: corosync
  * Current DC: cl-s01-2 (2) (version 2.1.5-9.el9_2.4-a3f44794f94) - partition with quorum
  * Last updated: Wed Nov 20 14:04:06 2024
  * Last change:  Wed Nov 20 13:51:19 2024 by hacluster via crmd on cl-s01-2
  * 2 nodes configured
  * 8 resource instances configured

Node List:
  * Node cl-s01-1 (1): online, feature set 3.16.2
  * Node cl-s01-2 (2): online, feature set 3.16.2

Full List of Resources:
  * fence_node1	(stonith:fence_ibm_powervs):	 Started cl-s01-2
  * fence_node2	(stonith:fence_ibm_powervs):	 Started cl-s01-2
  * Clone Set: fs_sapmnt-clone [fs_sapmnt]:
    * fs_sapmnt	(ocf:heartbeat:Filesystem):	 Started cl-s01-1
    * fs_sapmnt	(ocf:heartbeat:Filesystem):	 Started cl-s01-2
  * Resource Group: s01_ascs21_group:
    * s01_fs_ascs21	(ocf:heartbeat:Filesystem):	 Started cl-s01-1
    * s01_vip_ascs21	(ocf:heartbeat:powervs-subnet):	 Started cl-s01-1
  * Resource Group: s01_ers22_group:
    * s01_fs_ers22	(ocf:heartbeat:Filesystem):	 Started cl-s01-1
    * s01_vip_ers22	(ocf:heartbeat:powervs-subnet):	 Started cl-s01-1

Migration Summary:

Tickets:

PCSD Status:
  cl-s01-1: Online
  cl-s01-2: Online

Daemon Status:
  corosync: active/disabled
  pacemaker: active/disabled
  pcsd: active/enabled

确保 ${sid}_ascs${ASCS_INSTNO}_group 集群资源组在 NODE1 上运行,${sid}_ers${ERS_INSTNO}_group 集群资源组在 NODE2 上运行。 如有必要,请使用 pcs resource move <resource_group_name> 命令将资源组移动到正确的节点。

更改ASCS和ERS挂载点的所有权

ASCS 和ERS 安装点必须由sidadm用户拥有。 在开始实例安装之前,您必须定义所需的用户和组,并设置挂载点所有权。

在两个节点上,请按照以下步骤设置所需的所有者。

  1. 启动 SAP Software Provisioning Manager (SWPM) 创建操作系统用户和组。

    <swpm>/sapinst
    

    在SWPM网络界面中,使用路径 “系统重命名”>“准备”>“操作系统用户和组”。 记录用户和组ID,并确保两个节点上的ID相同。

  2. 更改挂载点所有权。

    chown -R ${sid}adm:sapsys /sapmnt/${SID} /usr/sap/${SID}
    

安装ASCS和ERS实例

使用SWPM安装两个实例。

  • 在集群节点上安装 ASCSERS 实例。

    • 在 NODE1 上,使用与 ASCS虚拟IP地址关联的虚拟主机名 ${ASCS_VH},并安装一个ASCS实例
    <swpm>/sapinst SAPINST_USE_HOSTNAME=${ASCS_VH}
    
    • 在 NODE2 上,使用与ERS虚拟IP地址关联的虚拟主机名 ${ERS_VH},并安装 ERS实例
    <swpm>/sapinst SAPINST_USE_HOSTNAME=${ERS_VH}
    
  • 将所有其他 SAP 应用程序实例安装在集群之外。

准备ASCS和ERS实例,用于集群集成

使用以下步骤为群集集成准备 SAP 实例。

禁用自动启动 ASCS 和 ERS 的 SAP 实例代理

您必须在重启后禁用 ASCSERS 实例的自动启动 sapstartsrv 实例代理。

验证 SAP 实例代理集成类型

SAP 实例代理的最新版本 sapstartsrv 在 Linux 上提供本机 systemd 支持。 欲了解更多信息,请参阅 SAP Notes 列出的 SAP 注释。

在两个节点上,检查 /usr/sap/sapservices 文件的内容。

cat /usr/sap/sapservices

systemd 格式中,各行以 systemctl 条目开始。

示例:

systemctl --no-ask-password start SAPS01_01 # sapstartsrv pf=/usr/sap/S01/SYS/profile/S01_ASCS01_cl-sap-scs

如果 ASCS 和 ERS 的条目是 systemd 格式,请继续执行 禁用 ASCS 和 ERS SAP 实例的 systemd 服务 中的步骤。

classic 格式中,各行以 LD_LIBRARY_PATH 条目开始。

示例:

LD_LIBRARY_PATH=/usr/sap/S01/ASCS01/exe:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH;/usr/sap/S01/ASCS01/exe/sapstartsrv pf=/usr/sap/S01/SYS/profile/S01_ASCS01_cl-sap-scs -D -u s01adm

如果 ASCS 和 ERS 的条目采用 classic 格式,则应修改 /usr/sap/sapservices 文件,以防止 ASCSERS 实例在重启后自动启动 sapstartsrv 实例代理。

在两个节点上,删除或注释 SAP 服务文件中 ASCSERSsapstartsrv 条目。

sed -i -e 's/^LD_LIBRARY_PATH=/#LD_LIBRARY_PATH=/' /usr/sap/sapservices

示例:

#LD_LIBRARY_PATH=/usr/sap/S01/ASCS01/exe:$LD_LIBRARY_PATH;export LD_LIBRARY_PATH;/usr/sap/S01/ASCS01/exe/sapstartsrv pf=/usr/sap/S01/SYS/profile/S01_ASCS01_cl-sap-scs -D -u s01adm

继续 安装永久 SAP 许可证密钥

禁用 ASCS 和 ERS 实例的 systemd 服务

在两个节点上,禁用 ASCS 的实例代理。

systemctl disable --now SAP${SID}_${ASCS_INSTNO}.service

在两个节点上,禁用 ERS 的实例代理。

systemctl disable --now SAP${SID}_${ERS_INSTNO}.service

禁用 systemd 重启崩溃的 ASCS 或 ERS 实例

Systemd 有自己的机制来重启崩溃的服务。 在高可用性设置中,只有 HA 集群负责管理 SAP ASCS 和 ERS 实例。 在两个群集节点上创建 systemd drop-in files,以防止 systemd 重新启动崩溃的 SAP 实例。

在两个节点上,创建投放文件的目录。

mkdir /etc/systemd/system/SAP${SID}_${ASCS_INSTNO}.service.d
mkdir /etc/systemd/system/SAP${SID}_${ERS_INSTNO}.service.d

在两个节点上为 ASCS 和 ERS 创建插入文件。

cat >> /etc/systemd/system/SAP${SID}_${ASCS_INSTNO}.service.d/HA.conf << EOT
[Service]
Restart=no
EOT
cat >> /etc/systemd/system/SAP${SID}_${ERS_INSTNO}.service.d/HA.conf << EOT
[Service]
Restart=no
EOT

Restart=no 必须位于 部分,且所有群集节点上都必须有投放文件。[Service]

在两个节点上重新加载 systemd 单元文件。

systemctl daemon-reload

安装永久 SAP 许可证密钥

当 SAP ASCS 实例安装在 Power Virtual Server 实例上时,SAP 许可证机制依赖于分区 UUID。 更多信息,请参阅 SAP note 2879336 - 基于唯一 ID 的硬件密钥

在两个节点上,以用户 <sid>adm 身份运行以下命令,以确定节点的 HARDWARE KEY

sudo -i -u ${sid}adm -- sh -c 'saplikey -get'

样本输出:

$ sudo -i -u ${sid}adm -- sh -c 'saplikey -get'

saplikey: HARDWARE KEY = H1428224519

注意每个节点的 HARDWARE KEY

您需要两个硬件密钥来申请两个不同的 SAP 许可证密钥。 有关申请 SAP 许可证密钥的更多信息,请查看以下 SAP 注释:

安装 SAP 资源代理

安装所需的软件包。 resource-agents-sap 包括 SAPInstance 集群资源代理,用于管理 SAP 实例。

除非为 SAP 实例配置了 sap_cluster_connector,否则 RHEL HA Add-On 群集会将实例的任何状态变化视为问题。 如果使用 sapcontrol 等其他 SAP 工具管理实例,则 sap_cluster_connector 会授予控制 SAP 实例的权限,这些实例在群集内运行。 如果 SAP 实例仅由群集工具管理,则需要执行 sap_cluster_connector 没有必要。

安装资源代理和 SAP Cluster Connector 库的软件包。 有关更多信息,请参阅 如何为 SAP ABAP 应用程序服务器实例启用 SAP HA 接口,该实例由 RHEL HA Add-On 管理。

在两个节点上运行以下命令。

如有需要,使用 subscription-manager 启用 SAP NetWeaver 资源库。 RHEL for SAP Subscriptions and Repositories 文档介绍了如何启用所需的软件源。

subscription-manager repos --enable="rhel-8-for-ppc64le-sap-netweaver-e4s-rpms"

安装必需的软件包。

dnf install -y resource-agents-sap  sap-cluster-connector

配置 SAP 群集连接器

将用户 ${sid}adm 添加到 haclient 组。

在两个节点上运行以下命令。

usermod -a -G haclient ${sid}adm

调整 SAP 实例配置文件

修改由群集外 SAP 工具管理的所有 SAP 实例的启动配置文件。 ASCSERS 实例都可由 RHEL HA 附加集群及其资源代理控制。 调整 SAP 实例配置文件,防止自动重启实例进程。

在 NODE1 上,导航到 SAP 配置文件目录。

cd /sapmnt/${SID}/profile

ASCSERS 的实例配置文件中,将 Restart_Program 改为 Start_Program

sed -i -e 's/Restart_Program_\([0-9][0-9]\)/Start_Program_\1/' ${SID}_ASCS${ASCS_INSTNO}_${ASCS_VH}
sed -i -e 's/Restart_Program_\([0-9][0-9]\)/Start_Program_\1/' ${SID}_ERS${ERS_INSTNO}_${ERS_VH}

在 SAP 实例配置文件末尾添加以下两行,为 ASCSERS 实例配置 sap_cluster_connector

service/halib = $(DIR_EXECUTABLE)/saphascriptco.so
service/halib_cluster_connector = /usr/bin/sap_cluster_connector

配置ASCS和ERS集群资源

到目前为止,我们假设:

  • RHEL HA附加集群在两个虚拟服务器实例上运行,并且节点防护已经过测试。
  • 已配置克隆的文件系统集群资源,用于挂载 sapmnt共享
  • 两个文件系统集群资源被配置为挂载 ASCSERS 实例文件系统。
  • ASCSERS 实例的虚拟 IP 地址配置两个 powervs-subnet 集群资源。
  • ASCS实例已安装并激活,地址为 NODE1。
  • ERS实例已安装并激活,地址为 NODE2。
  • 为集群集成准备ASCS和ERS实例 的所有步骤均已完成。

配置ASCS集群资源组

在 NODE1 上,运行以下命令创建一个集群资源来管理 ASCS实例

pcs resource create ${sid}_ascs${ASCS_INSTNO} SAPInstance \
    InstanceName="${SID}_ASCS${ASCS_INSTNO}_${ASCS_VH}" \
    START_PROFILE=/sapmnt/${SID}/profile/${SID}_ASCS${ASCS_INSTNO}_${ASCS_VH} \
    AUTOMATIC_RECOVER=false \
    meta resource-stickiness=5000 \
    migration-threshold=1 failure-timeout=60 \
    op monitor interval=20 on-fail=restart timeout=60 \
    op start interval=0 timeout=600 \
    op stop interval=0 timeout=600 \
    --group ${sid}_ascs${ASCS_INSTNO}_group

meta resource-stickiness=5000 选项用于平衡故障转移约束与ERS,使资源保留在启动节点上,不会在集群中不受控制地迁移。

为组添加资源粘性,以确保 ASCS实例保持在节点上。

pcs resource meta ${sid}_ascs${ASCS_INSTNO}_group \
    resource-stickiness=3000

配置ERS集群资源组

在 NODE2 上,运行以下命令,创建一个用于管理 ERS实例的资源。

pcs resource create ${sid}_ers${ERS_INSTNO} SAPInstance \
    InstanceName="${SID}_ERS${ERS_INSTNO}_${ERS_VH}" \
    START_PROFILE=/sapmnt/${SID}/profile/${SID}_ERS${ERS_INSTNO}_${ERS_VH} \
    AUTOMATIC_RECOVER=false \
    IS_ERS=true \
    op monitor interval=20 on-fail=restart timeout=60 \
    op start interval=0 timeout=600 \
    op stop interval=0 timeout=600 \
    --group ${sid}_ers${ERS_INSTNO}_group

配置集群约束

在 NODE1 上,运行以下命令创建集群约束。

出于对资源组 ${sid}_ascs${ASCS_INSTNO}_group${sid}_ers${ERS_INSTNO}_group 的限制,它们不能在同一节点上同时运行。 如果只有一个节点可用, -5000 的粘性值将确保它们在同一节点上运行。

pcs constraint colocation add \
    ${sid}_ers${ERS_INSTNO}_group with ${sid}_ascs${ASCS_INSTNO}_group -- -5000

一个顺序约束控制了 ${sid}_ascs${ASCS_INSTNO}_group${sid}_ers${ERS_INSTNO}_group 之前开始。

pcs constraint order start \
    ${sid}_ascs${ASCS_INSTNO}_group then stop ${sid}_ers${ERS_INSTNO}_group \
    symmetrical=false \
    kind=Optional

以下两个顺序约束确保 SAPMNT 文件系统${sid}_ascs${ASCS_INSTNO}_group${sid}_ers${ERS_INSTNO}_group 启动之前挂载。

pcs constraint order fs_sapmnt-clone then ${sid}_ascs${ASCS_INSTNO}_group
pcs constraint order fs_sapmnt-clone then ${sid}_ers${ERS_INSTNO}_group

结论

这完成了 ENSA2 在多区域环境中的集群实施。

现在,您应该继续测试集群,类似于 测试一个 SAP ENSA2 集群中 描述的测试。

以下是 pcs status 命令在多区域区域实施中完整 ENSA2 多区域区域实施中的完整集群的示例输出。

Cluster name: SAP_S01
Status of pacemakerd: 'Pacemaker is running' (last updated 2024-11-22 09:42:15 +01:00)
Cluster Summary:
  * Stack: corosync
  * Current DC: cl-s01-1 (version 2.1.5-9.el9_2.4-a3f44794f94) - partition with quorum
  * Last updated: Fri Nov 22 09:42:15 2024
  * Last change:  Fri Nov 22 09:06:18 2024 by root via cibadmin on cl-s01-1
  * 2 nodes configured
  * 10 resource instances configured

Node List:
  * Online: [ cl-s01-1 cl-s01-2 ]

Full List of Resources:
  * fence_node1	(stonith:fence_ibm_powervs):	 Started cl-s01-1
  * fence_node2	(stonith:fence_ibm_powervs):	 Started cl-s01-2
  * Clone Set: fs_sapmnt-clone [fs_sapmnt]:
    * Started: [ cl-s01-1 cl-s01-2 ]
  * Resource Group: s01_ascs21_group:
    * s01_fs_ascs21	(ocf:heartbeat:Filesystem):	 Started cl-s01-1
    * s01_vip_ascs21	(ocf:heartbeat:powervs-subnet):	 Started cl-s01-1
    * s01_ascs21	(ocf:heartbeat:SAPInstance):	 Started cl-s01-1
  * Resource Group: s01_ers22_group:
    * s01_fs_ers22	(ocf:heartbeat:Filesystem):	 Started cl-s01-2
    * s01_vip_ers22	(ocf:heartbeat:powervs-subnet):	 Started cl-s01-2
    * s01_ers22	(ocf:heartbeat:SAPInstance):	 Started cl-s01-2

Daemon Status:
  corosync: active/disabled
  pacemaker: active/disabled
  pcsd: active/enabled