
# 配置SAP HANA节点的HA功能
通过配置脚本，实现SAP HANA节点的HA功能（即HAE功能），提高SAP HANA节点的可靠性。
支持OS最低版本：SUSE Linux Enterprise Server (SLES) 12 SP1 for SAP。
支持OS最高版本：SUSE Linux Enterprise Server (SLES) 15 SP5 for SAP。
#### 前提条件
- 已在SAP HANA节点之间进行过相互的SSH跳转操作。
- 已将SBD卷绑定给SAP HANA的两台云服务器。
- 已经创建了浮动IP，并且绑定给SAP HANA的两台云服务器。
 
#### 操作步骤
1. 登录主节点的SAP HANA云服务器"hana001"。
2. 执行以下命令，检查是否已安装了依赖包patterns-ha-ha_sles和sap-suse-cluster-connector。 
   **rpm -qa \| grep patterns-ha-ha_sles**
   **rpm -qa \| grep sap-suse-cluster-connector**
   ![](https://support.huaweicloud.com/bestpractice-sap/zh-cn_image_0266325504.png)
   - 云服务器"hana001"中已经安装了依赖包，无需再安装。
   
   - 如果服务器中没有安装这些依赖包，执行以下命令进行安装： **zypper in -y patterns-ha-ha_sles**
     **zypper in -y sap-suse-cluster-connector**
     
   
   
   
   
3. 下载脚本和配置文件。 
   1. 选择安装SAP HANA软件所在的Region，下载脚本， 此处以"华北-北京四"为例：
      **wget https://obs-sap-cn-north-4.obs.cn-north-4.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip -P /hana/shared**
      不同Region对应的脚本下载地址如下：
      - 华北-北京一：https://obs-sap-cn-north-1.obs.cn-north-1.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip
      
      - 华北-北京四：https://obs-sap-cn-north-4.obs.cn-north-4.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip
      
      - 华东-上海二：https://obs-sap.obs.cn-east-2.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip
      
      - 华南-广州：https://obs-sap-cn-south-1.obs.cn-south-1.myhuaweicloud.com/ha_auto_script/ha_auto_script.zip
        
   
   2. 解压压缩包： **cd /hana/shared**
      **unzip ha_auto_script.zip**
      ![](https://support.huaweicloud.com/bestpractice-sap/zh-cn_image_0266325525.png)
      ![](https://support.huaweicloud.com/bestpractice-sap/zh-cn_image_0266325526.png)
      
   
   
   
   
4. 执行以下命令，修改配置文件。 
   **vi /hana/shared/ha_auto_script/hana_ha.cfg**
   配置文件参数请根据实际信息进行填写。
   ![](https://support.huaweicloud.com/bestpractice-sap/zh-cn_image_0266325527.png)
   ![](https://support.huaweicloud.com/bestpractice-sap/public_sys-resources/note_3.0-zh-cn.png)
   此脚本支持配置双心跳网络平面功能，在配置此功能时需要将业务/客户端平面IP地址分别添加到脚本中的"masterHeartbeatIP2"和"slaveHeartbeatIP2"参数后。
   
   
5. 执行脚本。 
   **sh hana_auto_ha.sh**
   ![](https://support.huaweicloud.com/bestpractice-sap/zh-cn_image_0266325528.png)
   ![](https://support.huaweicloud.com/bestpractice-sap/zh-cn_image_0266325529.png)
   
   ![](https://support.huaweicloud.com/bestpractice-sap/public_sys-resources/caution_3.0-zh-cn.png)
   - 脚本运行出错时会报错并退出，再次运行脚本之前，请务必使用**sh hana_auto_ha.sh unconf**命令进行手动回退，且需要根据SBD卷的最新盘符配置"ha_auto.cfg"文件。
   
   - 主备节点发生切换后，需要在切换后的备节点重新配置才能使HA机制生效，方法如下：
   
   
   1. 在备节点上，切换到管理员模式。 **su - \<SID\>adm**
      
   
   2. 停止备节点数据库。 **HDB stop**
      
   
   3. 将备节点注册到主节点上。 参数"secondary"配置为当前主节点的主机名，参数"site_name"与切换前主节点定义（在配置System Replication时定义）的名称保持一致。
      **hdbnsutil -sr_register --remoteHost=\<secondary\> --remoteInstance=\<instance_number\> --replicationMode=sync --name=\<site_name\>**
      
   
   4. 启动备节点数据库，然后退出管理员模式。 **HDB start**
      **exit**
      
   
   5. 在主备节点分别执行以下命令来启动HAE服务。 **systemctl start pacemaker**
      
   
   6. 清理原主节点（即当前备节点）上的资源。 "rsc_SAPHana_SLE_HDB00"为资源名称举例，可通过crm_mon - r1查询获取，参数"primary"配置为当前备节点的主机名。
      **crm resource cleanup \<rsc_SAPHana_SLE_HDB00\> \<primary\>**
      
    
   
   
6. 在SAP HANA Studio上重新接入SAP HANA。 
   在SAP HANA Studio上，将已接入的两个SAP HANA节点删除，重新通过SAP HANA节点的浮动IP地址，将SAP HANA节点接入，并配置备份路径。
   ![](https://support.huaweicloud.com/bestpractice-sap/zh-cn_image_0266328472.png)
   ![](https://support.huaweicloud.com/bestpractice-sap/public_sys-resources/note_3.0-zh-cn.png)
   HA功能配置完成后，HAE会管理资源，请不要使用其他方式启动或停止资源。如果需要手动执行一些测试或者修改操作，请先将集群进入维护模式。
   **crm configure property maintenance-mode=true**
   修改完成后再退出维护模式。
   **crm configure property maintenance-mode=false**
   如果需要对节点进行关机或者重启等操作，请先手动关闭集群服务。
   **systemctl stop pacemaker**
   虚拟机启动或者重启完成后，需要手动执行以下命令来启动集群服务。
   **systemctl start pacemaker**
   
   
 
