配置SAP S/4HANA的HA功能
操作场景
为保护SAP S/4HANA免受单点故障的影响,提高SAP S/4HANA的可用性,需要为ASCS主备节点配置HA机制。若为同AZ HA场景,即主备节点在同一个AZ中,可直接配置HA功能。若为跨AZ HA场景,即主备节点不在同一个AZ中,在配置HA功能之前还需要另外规划三台ECS,并将磁盘配置iSCSI实现共享存储用作SBD。详情请参考配置iSCSI(跨AZ部署HA)。
前提条件
- ASCS主备节点之间已建立互信。
- 已关闭操作系统防火墙。操作方法请参考修改操作系统配置。
- 为保证ASCS主备节点内部通信正常,在安装完SAP S/4HANA实例后需要修改hosts文件,增加虚拟IP与虚拟主机的映射关系。
- 登录ASCS主备节点,执行以下命令,修改“/etc/hosts”文件。
vi /etc/hosts
- 将虚拟主机名对应的主机IP改为虚拟IP。
10.0.3.52 S/4HANA-0001 10.0.3.196 S/4HANA-0002 10.0.3.220 ascsha 10.0.3.2 ersha
ascsha为ASCS主节点虚拟主机名,ersha为ASCS备节点虚拟主机名,虚拟机主机名可自定义。
- 登录ASCS主备节点,执行以下命令,修改“/etc/hosts”文件。
- 检查ASCS主备节点是否存在“/var/log/cluster”目录,不存在则创建这个目录。
- 在ASCS主备节点上更新SAP resource agents。
- 执行以下命令,检查是否已安装resource-agents补丁包。
sudo grep 'parameter name="IS_ERS"' /usr/lib/ocf/resource.d/heartbeat/SAPInstance
- 输出如下,表示已安装补丁包,结束操作。
- 未输出以下结果,则需要安装补丁包,执行2。
<parameter name="IS_ERS" unique="0" required="0">
- 执行以下命令,安装resource-agents补丁包。
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
- 执行以下命令,检查是否已安装resource-agents补丁包。
- 在ASCS主备节点上更新sap_suse_cluster_connector。
操作步骤
- 登录ASCS实例节点,获取ha_auto_script.zip压缩包,解压到任意目录。
- 根据客户实际情况配置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使用独立磁盘,支持1个或3个,多个磁盘之间使用英文逗号分隔,如/dev/sda, /dev/sdb, /dev/sdc
- 执行脚本进行HA自动部署。
sh ascs_auto_ha.sh
- 执行crm status命令,查看资源状态。
HA功能配置完成后,HAE会管理资源,请不要使用其他方式启动或停止资源。如果需要手动执行一些测试或者修改操作,请先将集群进入维护模式。
crm configure property maintenance-mode=true
修改完成后再退出维护模式。
crm configure property maintenance-mode=false
如果需要对节点进行关机或者重启等操作,请先手动关闭集群服务。
systemctl stop pacemaker
虚拟机启动或者重启完成后,需要手动执行以下命令来启动集群服务。
systemctl start pacemaker
如需清除HA功能配置,请在主节点(此处为在配置HA功能时的主节点,若已发生主备切换请先恢复到初始状态)手动执行以下命令。
sh ascs_auto_ha.sh unconf
配置后验证
- 启动Web浏览器并确保JavaScript和cookie已启用。
- 输入主节点或备节点的IP地址或主机名作为URL,登录端口为7630。
https://HOSTNAME_OR_IP_ADDRESS:7630/
当您首次尝试访问URL时如果显示证书警告,则表示使用了自我签名证书。默认情况下,自我签名证书不被视为可信证书。
要继续,可在浏览器中添加例外,以绕过警告。
- 在登录界面上,输入hacluster用户(或属于haclient组的任何其他用户)的用户名和密码。
用户名为“hacluster”,初始密码为“linux”,请在首次登录后修改密码。
- 单击登录。随即会出现集群状态屏幕,显示集群节点和资源的状态。