你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
向 HANA Pacemaker 群集添加附加辅助站点
本文描述了需要满足哪些要求和进行哪些设置,才能配置附加辅助 HANA 复制站点来补充现有 Pacemaker 群集。 本文涵盖 SUSE Linux Enterprise Server (SLES) 和 RedHat Enterprise Linux (RHEL) 的具体信息。
概述
SAP HANA 支持使用两个以上的连接站点进行系统复制 (HSR)。 可以将附加站点配置到 Pacemaker 在高可用性设置中管理的现有 HSR 对中。 例如,可以将这些附加站点部署在第二个 Azure 区域中,以实现灾难恢复 (DR)。
Pacemaker 和 HANA 群集资源代理仅管理 HSR 中的前两个站点。 附加站点不受 Pacemaker 群集控制。
SAP HANA 支持两种模式下的附加辅助站点系统复制:
有关一个区域和不同区域中 HANA HSR 的更多详细信息,请参阅跨 Azure 区域的 SAP HANA 可用性。
SLES 的先决条件
对于 HANA 纵向扩展和 HANA 横向扩展,附加 HSR 站点的要求有所不同。
注意
- 本文中的要求仅适用于已启用 Pacemaker 的环境。 如果不使用 Pacemaker,SAP HANA 版本要求适用于所选复制模式。
- Pacemaker 和 HANA 群集资源代理仅管理两个站点。 附加 HSR 站点不受 Pacemaker 群集控制。
- SUSE 最多支持在 Pacemaker 群集之外为 SAP HANA 数据库添加一个附加系统复制站点。
- 纵向扩展和横向扩展:需要 SAP HANA SPS 04 或更高版本才能将多目标 HSR 与 Pacemaker 群集结合使用。
- 纵向扩展和横向扩展:最多有一个从 Linux 群集外部连接的 SAP HANA 系统复制。
- 仅 HANA 横向扩展:SLES 15 SP1 或更高版本。
- 仅 HANA 横向扩展:操作系统 (OS) 包 SAPHanaSR-ScaleOut 版本 0.180 或更高版本。
- 仅 HANA 横向扩展:SAP HANA 高可用性 (HA) 挂钩 正在使用 SAPHanaSrMultiTarget。 预览 HANA HA 挂钩
SAPHanaSR
无法识别横向扩展的多目标。
RHEL 的先决条件
对于 HANA 纵向扩展和 HANA 横向扩展,附加 HSR 站点的要求有所不同。
注意
- 本文中的要求仅适用于已启用 Pacemaker 的环境。 如果不使用 Pacemaker,SAP HANA 版本要求适用于所选复制模式。
- Pacemaker 和 HANA 群集资源代理仅管理两个站点。 附加 HSR 站点不受 Pacemaker 群集控制。
- RedHat 支持 Pacemaker 群集之外的 SAP HANA 数据库的一个或多个附加系统复制站点。
- 仅 HANA 纵向扩展:有关最低的 OS、SAP HANA 和群集资源代理版本的详细信息,请参阅 RHEL HA 群集的 RedHat 支持策略。
- 仅 HANA 横向扩展:具有 Pacemaker 群集的 Azure 不支持 HANA 多目标复制。
提示
该配置说明如何在 Pacemaker 群集之外设置第三个站点。 在 RHEL 上,如果在 Pacemaker 群集之外有多个附加站点,则还需要将设置扩展到附加站点。
HANA 纵向扩展:添加 HANA 多目标系统复制以实现 DR
借助适用于 SLES 和 RHEL 的 SAP HANA HA 挂钩 SAPHanaSR/susHanaSR,可以向 HANA 系统复制添加附加站点。 Pacemaker 环境知道 HANA 多目标设置。
附加站点的故障不会触发任何群集操作。 群集检测已连接站点的复制状态,并且第三个站点的受监视属性可以在 SOK
和 SFAIL
状态之间切换。 对附加站点执行任何接管测试或执行 DR 演习过程都应首先将群集资源置于维护模式,以防止任何不需要的群集操作。
以下示例演示了一个多目标系统复制系统。 有关详细信息,请参阅 SAP 文档。
为第三个节点部署 Azure 资源。 根据要求,可以使用不同的 Azure 区域以实现 DR。
第三个站点所需的步骤类似于适用于 HANA 纵向扩展群集的虚拟机 (VM)。 第三个站点使用 Azure 基础结构。 OS 和 HANA 版本与现有的 Pacemaker 群集匹配,但以下情况除外:
- 没有为第三个站点部署负载均衡器。 没有与第三个站点的 VM 的现有群集负载均衡器集成。
- 没有在第三个站点 VM 上安装 OS 包 SAPHanaSR、SAPHanaSR-doc 和 OS 包模式 ha_sles。
- 没有集成到第三个站点的 VM 或 HANA 资源的群集。
- global.ini 中的第三个站点没有 HANA HA 挂钩设置。
在第三个节点上安装 SAP HANA。
必须对第三个站点使用相同的 HANA SID 和 HANA 安装编号。
在第三个站点上安装并运行 SAP HANA 后,将第三个站点注册到主站点。
以下示例使用
SITE-DR
作为第三个站点的名称。# Execute on the third site su - hn1adm # Register the HANA third site to the primary. Switch --online will shutdown the HANA instance on third site. hdbnsutil -sr_register --name=SITE-DR --remoteHost=hn1-db-0 --remoteInstance=03 --replicationMode=async --online
验证 HANA 系统复制是否显示辅助站点和第三个站点。
# Verify HANA HSR is in sync, execute on primary sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
检查第三个站点的
SAPHanaSR
属性。SITE-DR
应在Sites
部分显示状态为SOK
。# Check SAPHanaSR attribute on any cluster managed host (first or second site) sudo SAPHanaSR-showAttr # Example result # Global cib-time maintenance # -------------------------------------------- # global Tue Feb 21 19:28:21 2023 false # # Sites srHook # ----------------- # HN1-SITE1 PRIM # HN1-SITE2 SOK # SITE-DR SOK
群集检测已连接站点的复制状态。 监视的属性可以在
SOK
和SFAIL
之间切换。 如果复制到 DR 站点失败,则不会执行群集操作。
HANA 横向扩展:添加 HANA 多目标系统复制以实现 DR
借助 SAP HANA HA 提供程序 SAPHanaSrMultiTarget,可以添加第三个 HANA 横向扩展站点。 此第三个站点通常用于另一个 Azure 区域中的 DR。 Pacemaker 环境可识别 HANA 多目标 DR 设置。 本部分仅适用于在 SUSE 上运行 Pacemaker 的系统。 有关详细信息,请参阅本文档中的“先决条件”部分。
第三个节点失败不会触发任何群集操作。 群集检测已连接站点的复制状态,并且第三个站点的受监视属性可以在 SOK
和 SFAIL
状态之间切换。 对第三个/DR 站点执行任何接管测试或执行 DR 演习过程都应首先将群集资源置于维护模式,以防止任何不需要的群集操作。
以下示例演示了一个多目标系统复制系统。 有关详细信息,请参阅 SAP 文档。
为第三个站点部署 Azure 资源。 根据要求,可以使用不同的 Azure 区域以实现 DR。
在第三个站点上进行 HANA 横向扩展所需的步骤与部署 HANA 横向扩展群集的步骤相同。 第三个站点对横向扩展群集的
SITE1
使用 Azure 基础结构、操作系统和 HANA 安装步骤,但以下情况除外:- 没有为第三个站点部署负载均衡器。 没有与第三个站点的 VM 的现有群集负载均衡器集成。
- 没有在第三个站点 VM 上安装 OS 包 SAPHanaSR-ScaleOut、SAPHanaSR-ScaleOut-doc 和 OS 包模式 ha_sles。
- 第三个站点没有多数制造商 VM,因为没有群集集成。
- 创建 NFS 卷 /hana/shared 供第三个站点专用。
- 没有集成到第三个站点的 VM 或 HANA 资源的群集。
- global.ini 中的第三个站点没有 HANA HA 挂钩设置。
必须对第三个站点使用相同的 HANA SID 和 HANA 安装编号。
在第三个站点上安装并运行 SAP HANA 横向扩展后,将第三个站点注册到主站点。
以下示例使用
SITE-DR
作为第三个站点的名称。# Execute on the third site su - hn1adm # Register the HANA third site to the primary. Switch --online will shutdown the HANA instance on third site. hdbnsutil -sr_register --name=SITE-DR --remoteHost=hana-s1-db1 --remoteInstance=03 --replicationMode=async --online
验证 HANA 系统复制是否显示辅助站点和第三个站点。
# Verify HANA HSR is in sync, execute on primary sudo su - hn1adm -c "python /usr/sap/HN1/HDB03/exe/python_support/systemReplicationStatus.py"
检查第三个站点的
SAPHanaSR
属性。SITE-DR
应在Sites
部分显示状态为SOK
。# Check SAPHanaSR attribute on any cluster managed host (first or second site) sudo SAPHanaSR-showAttr # Expected result # Global cib-time maintenance prim sec sync_state upd # --------------------------------------------------------------------- # HN1 Fri Jan 27 10:38:46 2023 false HANA_S1 - SOK ok # # Sites lpt lss mns srHook srr # ------------------------------------------------ # SITE-DR SOK # HANA_S1 1674815869 4 hana-s1-db1 PRIM P # HANA_S2 30 4 hana-s2-db1 SOK S
群集检测已连接站点的复制状态。 监视的属性可以在
SOK
和SFAIL
之间切换。 如果复制到 DR 站点失败,则不会执行群集操作。
自动注册第三个站点
在两个 Pacemaker 群集站点之间的计划内或计划外接管事件期间,第三个站点的 HSR 也会中断。 Pacemaker 不会修改第三个站点的 HANA 复制。
SAP 从 HANA 2 SPS 04 开始提供参数 register_secondaries_on_takeover
。 将参数设置为值 true
,在群集站点 1 和 2 之间接管 HSR 后,HANA 会自动在新主站点上注册第三个站点,以保留 HSR 多目标设置。 配置在 Linux 群集中两个 SAP HANA 站点上的 global.ini 的 [system_replication]
块中配置的 HANA 参数 register_secondaries_on_takeover = true
。 SITE1 和 SITE2 都需要相应 HANA global.ini 配置文件中的参数。 此参数也可以在 Pacemaker 群集外部使用。
对于 HSR 多层,不存在第三个站点的自动 SAP HANA 注册。 需要将第三个站点手动注册到当前辅助站点,以保留用于多层的 HSR 复制链。