本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
SAP HANA 设置和 HSR
通过配置参数和创建所需的备份,为 SAP HANA 做好系统复制 (HSR) 准备。
重要
本指南假设 SAP HANA Platform 已按照和 SAP 的指导作为扩展配置进行安装,其中两个 EC2 实例位于不同的可用区,或者作为横向扩展配置(在两个可用区中有多个 EC2 实例)进行安装。 Amazon
查看 Amazon 和 SAP 安装指南
-
Amazon 文档-开启 SAP HANA 环境设置 Amazon
-
SAP 文档-SAP HANA 服务器安装和更新指南
SAP 提供了有关如何使用 SAP HANA Cockpit、SAP HANA Studio 或hdbnsutil
命令行配置 SAP HANA 系统复制的文档。请查看 SAP HANA 版本的文档,确保指南没有更改或使用命令行以外的方法。
-
SAP 文档:配置 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),请确保有足够的空间进行完整备份。
停止辅助系统并复制系统 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
-
hostname_1
是用于安装 SAP HANA 的主机名,它可能是一个虚拟名称。 -
复制模式可以是
sync
或syncmem
。 -
要使复制支持群集系统和热备用系统,操作模式必须为
logreplay
或logreplay_readenabled
。 -
有关更多信息,请查看 SAP 文档
-
SAP 文档:SAP HANA 系统复制的复制模式
-
SAP 文档:S AP HANA 系统复制的操作模式
-
检查 SAP 主机代理版本
SAP 主机代理用于控制和监控 SAP 实例。此代理由 SAP 群集资源代理和挂钩使用。建议您在所有实例上安装最新版本。有关更多详细信息,请参阅 SAP Note 2219592 — SAP Host Agent 的升级策略
使用以下命令检查主机代理的版本,在所有 SAP HANA 节点上重复此操作:
# /usr/sap/hostctrl/exe/saphostexec -version