SAP HANA 设置和 HSR - SAP HANA 开启 AWS

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SAP HANA 设置和 HSR

通过配置参数和创建所需的备份,为 SAP HANA 做好系统复制 (HSR) 准备。

重要

本指南假设 SAP HANA Platform 已按照和 SAP 的指导作为扩展配置进行安装,其中两个 EC2 实例位于不同的可用区,或者作为横向扩展配置(在两个可用区中有多个 EC2 实例)进行安装。 AWS

查看 AWS 和 SAP 安装指南

SAP 提供了有关如何使用 SAP HANA Cockpit、SAP HANA Studio 或hdbnsutil命令行配置 SAP HANA 系统复制的文档。请查看 SAP HANA 版本的文档,确保指南没有更改或使用命令行以外的方法。

检查 global.ini 参数

以 <sid>adm 身份运行以下命令。这些命令将提示输入 SYSTEMDB 数据库的系统密码。

检查日志模式是否设置为正常

确保在 global.ini 文件的持久性部分normal中将配置参数 log_mode 设置为:

hdbsql -jx -i <hana_sys_nr> -u system -d SYSTEMDB "SELECT VALUE FROM M_INIFILE_CONTENTS WHERE FILE_NAME = 'global.ini' AND SECTION = 'persistence' AND KEY = 'log_mode';"

例如:

hdbadm> hdbsql -jx -i 00 -u system -d SYSTEMDB "SELECT VALUE FROM M_INIFILE_CONTENTS WHERE FILE_NAME = 'global.ini' AND SECTION = 'persistence' AND KEY = 'log_mode';" VALUE "normal"
查看 global.ini 文件复制

SAP HANA System Replication 需要在主系统和辅助系统之间进行一致的配置,以确保正常运行,尤其是在故障转移场景中。global.ini 中的inifile_checker/replicate参数为该要求提供了自动解决方案。在主系统上启用后,对主系统上的 ini 文件所做的任何配置更改都会自动同步到辅助站点。这样就无需手动复制配置,并有助于防止可能影响系统可用性的配置不匹配。只需在主系统上配置该参数,因为辅助系统将通过正常的系统复制过程接收这些配置更改。

将以下内容添加到 global.ini 中:

[inifile_checker] replicate = true

参见 SAP Note 2978895-更改 SAP HANA 系统主站点和辅助站点上的参数

在主系统上创建 SAP HANA Backup

获取所有活动数据库的列表:

hdbsql -jx -i <hana_sys_nr> -u system -d SYSTEMDB "SELECT DATABASE_NAME,ACTIVE_STATUS from M_DATABASES"

例如:

hdbadm> hdbsql -jx -i 00 -u system -d SYSTEMDB "SELECT DATABASE_NAME,ACTIVE_STATUS from M_DATABASES" Password: DATABASE_NAME,ACTIVE_STATUS "SYSTEMDB","YES" "HDB","YES"
创建 SYSTEMDB 和每个租户数据库的备份:

以下命令是基于文件的备份的示例。可以使用您的首选工具和位置执行备份。如果使用文件系统(例如 /backup),请确保有足够的空间进行完整备份。

Backint

对于 SystemDB

hdbsql -i 00 -u SYSTEM -d SYSTEMDB "BACKUP DATA USING BACKINT ('initial_hsr_db_SYSTEMDB') COMMENT 'Initial backup for HSR'";

对于每个租户数据库

hdbsql -i 00 -u SYSTEM -d <TENANT_DB> "BACKUP DATA USING BACKINT ('initial_hsr_db_<TENANT_DB>') COMMENT 'Initial backup for HSR'";
  • 以<sid>管理员身份运行

  • 确保 backint 配置正确

  • 系统将提示您提供密码或者可以使用 -p password

File

对于 SystemDB

hdbsql -i <hana_sys_nr> -u system -d SYSTEMDB "BACKUP DATA USING FILE ('/<backup location>/initial_hsr_db_SYSTEMDB') COMMENT 'Initial backup for HSR'";

对于每个租户数据库

hdbsql -i <hana_sys_nr> -u system -d <TENANT_DB> "BACKUP DATA USING FILE ('/<backup location>/initial_hsr_db_<TENANT_DB>') COMMENT 'Initial backup for HSR'";
  • 以<sid>管理员身份运行

  • 确保备份位置有足够的空间和正确的文件权限

  • 系统将提示您提供密码或者可以使用 -p password

停止辅助系统并复制系统 PKI 密钥

停止辅助系统

以 <sid>adm 的身份在辅助服务器上停止 hana 应用程序

sapcontrol -nr <hana_sys_nr> -function StopSystem <SID>
复制系统 PKI 密钥

使用 scp、共享文件系统或 S3 存储桶将以下系统 PKI SSFS 密钥和数据文件从主系统复制到辅助系统上的相同位置:

/usr/sap/<SID>/SYS/global/security/rsecssfs/data/SSFS_<SID>.DAT /usr/sap/<SID>/SYS/global/security/rsecssfs/key/SSFS_<SID>.KEY

例如使用 scp:

hdbadm>scp -p /usr/sap/HDB/SYS/global/security/rsecssfs/data/SSFS_HDB.DAT hdbadm@hanahost02:/usr/sap/HDB/SYS/global/security/rsecssfs/data/SSFS_HDB.DAT hdbadm>scp -p /usr/sap/HDB/SYS/global/security/rsecssfs/key/SSFS_HDB.KEY hdbadm@hanahost02:/usr/sap/HDB/SYS/global/security/rsecssfs/key/SSFS_HDB.KEY

在主系统和辅助系统上配置系统复制

在主系统上启用系统复制

确保主要 SAP HANA 系统已启动,然后以 <sid>adm 的身份使用唯一的站点名称启用系统复制:

hdbnsutil -sr_enable --name=<site_1>

例如:

hdbadm> hdbnsutil -sr_enable --name=siteA
在辅助系统上注册系统复制

确保二级 SAP HANA 系统已停止,然后以 <sid>adm 的身份使用唯一的站点名称、主系统的连接详细信息和首选复制选项启用系统复制。

hdbnsutil -sr_register \ --name=<site_2> \ --remoteHost=<hostname_1> \ --remoteInstance=<hana_sys_nr> \ --replicationMode=[sync|syncmem] \ --operationMode=[logreplay|logreplay_readenabled]

例如:

hdbadm> hdbnsutil -sr_register --name=siteB --remoteHost=hanahost01 --remoteInstance=00 --replicationMode=syncmem --operationMode=logreplay

或者,如果您的设置要求对辅助 active/active 服务器进行读取访问权限:

hdbadm> hdbnsutil -sr_register --name=siteB --remoteHost=hanahost01 --remoteInstance=00 --replicationMode=syncmem --operationMode=logreplay_readenabled

检查 SAP 主机代理版本

SAP 主机代理用于控制和监控 SAP 实例。此代理由 SAP 群集资源代理和挂钩使用。建议您在所有实例上安装最新版本。有关更多详细信息,请参阅 SAP Note 2219592 — SAP Host Agent 的升级策略

使用以下命令检查主机代理的版本,在所有 SAP HANA 节点上重复此操作:

# /usr/sap/hostctrl/exe/saphostexec -version