文档首页/ SAP/ SAP NetWeaver用户指南/ 部署/ 安装SAP NetWeaver/ 配置SAP NetWeaver的HA功能(分布式高可用部署)
更新时间:2022-12-23 GMT+08:00

配置SAP NetWeaver的HA功能(分布式高可用部署)

操作场景

为保护SAP NetWeaver免受单点故障的影响,提高SAP NetWeaver的可用性,需要为ASCS主备节点配置HA机制,此操作只有在分布式HA部署场景下才需要执行。

在跨AZ HA场景中,需要规划三台云服务器,并将磁盘配置iSCSI实现共享存储用作SBD。详情请参考配置iSCSI(跨AZ部署HA)

前提条件

  • ASCS主备节点之间已建立互信。
  • 已关闭操作系统防火墙。操作方法请参考修改操作系统配置
  • 为保证ASCS主备节点内部通信正常,在安装完SAP NetWeaver实例后需要修改hosts文件,增加虚拟IP与虚拟主机的映射关系。
    • 登录ASCS主备节点,执行以下命令,修改“/etc/hosts”文件。

      vi /etc/hosts

    • 将虚拟主机名对应的主机IP改为虚拟IP。
      10.0.3.52       netweaver-0001
      10.0.3.196      netweaver-0002
      10.0.3.220      ascsha
      10.0.3.2        ersha

      ascsha为ASCS主节点虚拟主机名,ersha为ASCS备节点虚拟主机名,虚拟机主机名可自定义。

  • 检查ASCS主备节点是否存在“/var/log/cluster”目录,不存在则创建这个目录。
  • 在ASCS主备节点上更新SAP resource agents。
    1. 执行以下命令,检查是否已安装resource-agents补丁包。

      sudo grep 'parameter name="IS_ERS"' /usr/lib/ocf/resource.d/heartbeat/SAPInstance

      • 输出如下,表示已安装补丁包,结束操作。
      • 未输出以下结果,则需要安装补丁包,执行2
      <parameter name="IS_ERS" unique="0" required="0">
    2. 执行以下命令,安装resource-agents补丁包。

      镜像为SLES 12 SP1时需执行以下命令:

      sudo zypper in -t patch SUSE-SLE-HA-12-SP1-2017-885=1

      镜像为SLES 12 SP2时需执行以下命令:

      sudo zypper in -t patch SUSE-SLE-HA-12-SP2-2018-1923=1

      镜像为SLES 12 SP3时需执行以下命令:

      sudo zypper in -t patch SUSE-SLE-HA-12-SP3-2018-1922=1

  • 在ASCS主备节点上更新sap_suse_cluster_connector。
  • 确保已安装了依赖包patterns-ha-ha_sles和sap-suse-cluster-connector。

    执行以下命令,检查是否安装依赖包。

    rpm -qa | grep patterns-ha-ha_sles

    rpm -qa | grep sap-suse-cluster-connector

    如未安装,请执行以下命令安装。

    zypper in -y patterns-ha-ha_sles

    zypper in -y sap-suse-cluster-connector

操作步骤

  1. 登录ASCS实例节点,获取ha_auto_script.zip压缩包,解压到任意目录。

    1. 获取ha_auto_script.zip压缩包

      中国-香港:wget https://obs-sap-ap-southeast-1.obs.ap-southeast-1.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip -P /sapmnt

      亚太-曼谷:wget https://obs-sap-ap-southeast-2.obs.ap-southeast-2.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip -P /sapmnt

      南非-约翰内斯堡:wget https://obs-sap-af-south-1.obs.af-south-1.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip -P /sapmnt

    2. 解压文件

    cd /sapmnt

    unzip ha_auto_script.zip

  2. 根据客户实际情况配置ascs_ha.cfg文件中的参数。各参数含义如表1所示。

    表1 ascs_ha.cfg配置文件参数含义

    参数类型

    参数名称

    参数解释

    masterNode

    masterName

    ASCS实例节点的主机名

    masterHeartbeatIP1

    ASCS实例节点心跳平面IP1

    masterHeartbeatIP2

    ASCS实例节点业务平面IP

    slaveNode

    slaveName

    ERS实例节点的主机名

    slaveHeartbeatIP1

    ERS实例节点心跳平面IP1

    slaveHeartbeatIP2

    ERS实例节点业务平面IP

    ASCSInstance

    ASCSFloatIP

    ASCS实例的业务IP

    ASCSInstanceDir

    ASCS实例的目录

    ASCSDevice

    ASCS实例目录所使用的磁盘分区

    ASCSProfile

    ASCS实例的profile文件

    ERSInstance

    说明:

    ERSInstanceDir、ERSDevice和ERSProfile参数信息需要登录ERS实例节点获取。

    ERSFloatIP

    ERS实例的业务IP

    ERSInstanceDir

    ERS实例的目录

    ERSDevice

    ERS实例目录所使用的磁盘分区

    ERSProfile

    ERS实例的profile文件

    trunkInfo

    SBDDevice

    SBD使用独立磁盘,最多支持3个,使用英文逗号分隔,如/dev/sda, /dev/sdb, /dev/sdc

  3. 执行脚本进行HA自动部署。

    sh ascs_auto_ha.sh

  4. 执行crm status命令,查看资源状态。

    HA功能配置完成后,HAE会管理资源,请不要使用其他方式启动或停止资源。如果需要手动执行一些测试或者修改操作,请先将集群进入维护模式。

    crm configure property maintenance-mode=true

    修改完成后再退出维护模式。

    crm configure property maintenance-mode=false

    如果需要对节点进行关机或者重启等操作,请先手动关闭集群服务。

    systemctl stop pacemaker

    虚拟机启动或者重启完成后,需要手动执行以下命令来启动集群服务。

    systemctl start pacemaker