安装和配置 AWS Backint Agent for SAP HANA - AWS 上的 SAP HANA
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

安装和配置 AWS Backint Agent for SAP HANA

本部分提供帮助您使用 AWS Systems Manager 文档或 AWS Backint 安装程序安装 AWS Backint Agent 的信息。它还提供了帮助您配置 Agent、查看日志和获取当前 Agent 版本的信息。

使用 AWS Systems Manager 文档安装 AWS Backint Agent

按照以下步骤,使用 AWS SSM 文档安装 AWS Backint Agent。

重要

在继续安装之前,禁用任何现有备份过程(包括计划日志备份)。如果在执行 SSM 文档之前没有禁用现有备份过程,则可能会损坏正在进行的备份,这会影响您恢复数据库的能力。

  1. 从 AWS 管理控制台中,选择管理与监管 下的 Systems Manager,或在查找服务搜索栏中输入 Systems Manager

  2. 从 Systems Manager 控制台中,在左侧导航窗格中的共享资源下面选择文档

  3. 在“文档”页面上,选择归 Amazon 所有选项卡。您应该看到一个名为 AWSSAP-InstallBackint 的文档。

  4. 选择 AWSSAP-InstallBackint 文档,然后选择 Run Command

  5. 在命令参数下,输入以下内容

    1. 存储桶名称。输入要存储 SAP HANA 备份文件的 Amazon S3 存储桶的名称。

    2. 存储桶文件夹。或者,输入要存储 SAP HANA 备份文件的 Amazon S3 存储桶内的文件夹的名称。

    3. 系统 ID。输入您的 SAP HANA 系统 ID,例如 HDB

    4. 存储桶区域。输入要存储 SAP HANA 备份文件的 Amazon S3 存储桶的 AWS 区域。AWS Backint Agent 支持跨区域和跨账户备份。您必须提供 AWS 区域和 Amazon S3 存储桶拥有者账户 ID 以及 Amazon S3 存储桶名称,以便成功执行 Agent。

    5. 存储桶拥有者账户 ID。输入要存储 SAP HANA 备份文件的 Amazon S3 存储桶的账户 ID。

    6. KMS 密钥。输入 AWS Backint Agent 可用于加密 Amazon S3 存储桶中存储的备份文件的 KMS 密钥的 ARN。

    7. 安装目录。输入安装 AWS Backint Agent 的目录位置的路径。避免使用 /tmp 作安装路径。

    8. Agent 版本。输入要安装的 Agent 的版本号。如果不输入版本号,则会安装最新发布的 Agent 版本。

      注意

      1.0 版本在中国(北京和宁夏)区域不可用。

    9. 修改全局 ini 文件。选择修改 global.ini 文件的方式。必须更新 SAP HANA 系统数据库的 global.ini 文件才能完成设置。

      1. “修改” — SSM 将直接更新 global.ini 文件。

      2. “sql” — SSM 将创建一个包含 SQL 语句且名为 modify_global_ini.sql 的文件,您可以在目标 SAP HANA 系统中运行该文件来设置所需的参数。您可以在 <installation directory>/aws-backint-agent/ 文件夹中找到 modify_global_ini.sql 文件。

      3. “无” — SSM 不会采取任何操作来修改 global.ini 文件。您必须手动更新它才能完成设置。

    10. 忽略存储桶检查。选择可忽略 S3 存储桶的健全性检查。S3 存储桶健全性检查会验证以下内容:

      • 您的账户中是否存在存储桶

      • 存储桶区域是否正确

      • 存储桶是否是公有的

    11. 调试模式。选择可激活调试模式。

    12. 重要提示! 确保没有正在进行的备份。选择以确认您已禁用现有备份并准备好继续安装。如果您选择“否”,SSM 文档将失败

  6. 目标下,选择目标实例用于安装 AWS Backint Agent 的方法,然后选择要在其上安装它的实例。如果您无法在列表中找到您的实例,请核实您是否遵循了先决条件中的所有步骤。

  7. 其他参数下,将字段留空,然后选择运行

    重要

    如果您没有安装 SSM Agent 的最新版本(2.3.274.0 或更高版本),则 Run Command 将无法执行。

  8. 成功安装 Agent 后,您将在命令 ID 下看到成功状态。

  9. 要验证安装,请登录到您的实例并查看 /<install directory>/aws-backint-agent 目录。您应该在目录中看到以下文件:AWS Backint Agent 二进制文件、THIRD_PARTY_LICENSES.txt 文件(其中包含 Agent 使用的库的许可证)、启动程序脚本、YAML 配置文件和可选的 modify_global_ini.sql 文件。此外,AWS Backint Agent 的源文件 (aws-backint-agent.tar.gz) 存储在程序包目录中。您可以验证此文件的签名,以确保下载的源文件为原始文件且未修改。有关详细信息,请参阅本文档中的验证 AWS Backint Agent 和 SAP HANA 安装程序的签名部分。

    SSM 文档在 SAP HANA 全局目录中为 Backint 配置创建符号链接 (symlink)。确定 /usr/sap/<SID>/SYS/global/hdb/opt 目录中存在 hdbbackint 的符号链接,且 /usr/sap/<SID>/SYS/global/hdb/opt/hdbconfig 目录中存在 aws-backint-agent-config.yaml 的符号链接。

使用 AWS Backint 安装程序安装 AWS Backint Agent — 交互模式

安装 AWS Backint Agent 的另一种方法是使用 AWS Backint 安装程序。您可以从 Amazon S3 存储桶下载 AWS Backint 安装程序。S3 存储桶的名称为 s3://awssap-backint-agent-cn-north-1/

在以下位置始终会提供最新的安装程序: s3://awssap-backint-agent-cn-north-1/binary/latest/install-aws-backint-agent

按照以下步骤在 SAP HANA 实例上使用 AWS Backint 安装程序从 SSH 会话安装 AWS Backint Agent。

重要

在继续安装之前,禁用任何现有备份过程(包括计划日志备份)。如果在执行 AWS Backint Agent 安装程序之前没有禁用现有备份过程,则可能会损坏正在进行的备份,这会影响您恢复数据库的能力。

  1. 导航到 /tmp(或保存已下载安装程序的另一个临时目录)。

    cd /tmp
  2. 运行以下命令之一下载安装程序。

    sudo aws s3 cp s3://awssap-backint-agent-cn-north-1/binary/latest/install-aws-backint-agent /tmp/

    或者

    sudo wget https://awssap-backint-agent-cn-north-1.s3.cn-north-1.amazonaws.com.cn/binary/latest/install-aws-backint-agent -O /tmp/install-aws-backint-agent
    注意

    如果您在使用 AWS CLI 下载 AWS Backint 安装程序时遇到权限问题,请检查您的 IAM 策略并确保您的策略允许从 awssap-backint-agent 存储桶下载对象。有关详细信息,请参阅本文档的身份和访问管理部分。

  3. 使用 -h 标记运行安装程序以查找所有可用选项。

    sudo python install-aws-backint-agent -h
  4. 运行以下命令以执行安装程序。

    sudo python install-aws-backint-agent
    注意

    如果您希望安装程序从您自己的文件系统或 Amazon S3 存储桶中获取 AWS Backint Agent 二进制文件,请使用 -l 标记运行安装程序。指定 aws-backint-agent.tar.gz 文件的位置。

    sudo python install-aws-backint-agent -l /tmp/backint/aws-backint-agent.tar.gz
    sudo python install-aws-backint-agent -l s3://AWSDOC-EXAMPLE-BUCKET/aws-backint-agent.tar.gz
    sudo python install-aws-backint-agent -l https://AWSDOC-EXAMPLE-BUCKET.s3.amazonaws.com/aws-backint-agent.tar.gz
  5. 输入以下参数的信息。

    1. 安装目录 — 输入安装 AWS Backint Agent 的目录位置的路径。安装目录的默认值为 /hana/shared/

    2. Amazon S3 存储桶拥有者 — 输入要用于存储 SAP HANA 备份文件的存储桶的 Amazon S3 存储桶拥有者的账户 ID。

    3. Amazon S3 存储桶名称 — 输入要存储 SAP HANA 备份文件的 Amazon S3 存储桶的名称。

    4. S3 存储桶中的文件夹 — 输入要存储 SAP HANA 备份文件的 Amazon S3 存储桶中的文件夹的名称。此参数为可选项。

    5. Amazon S3 存储桶区域 — 输入要存储 SAP HANA 备份文件的 Amazon S3 存储桶的 AWS 区域。

    6. Amazon S3 SSE KMS ARN — 输入 AWS Backint Agent 可用于加密 Amazon S3 存储桶中存储的备份文件的 KMS 密钥的 ARN。

      注意

      如果将此字段留空,AWS Backint 安装程序将提示您确认您不想使用存储在 AWS KMS 中的加密密钥对备份文件进行加密。如果您不确认您不想使用 KMS 密钥加密,则安装程序将中止。我们强烈建议您对数据进行加密。有关可用选项,请参阅本文档的加密部分。

    7. SAP HANA 系统 ID — 输入您的 SAP HANA 系统 ID,例如 HDB

    8. HANA 选择目录 — 确认 SAP HANA 选择目录的位置。

    9. 修改全局 .ini [修改/sql/无] — 选择修改 global.ini 文件的方式。必须更新 SAP HANA 系统的 global.ini 文件才能完成设置。

      1. “修改” — AWS Backint 安装程序将直接更新 global.ini 文件。

      2. “sql” — AWS Backint 安装程序将创建一个包含 SQL 语句且名为 modify_global_ini.sql 的文件,您可以在目标 SAP HANA 系统中运行该文件来设置所需的参数。您可以在 <installation directory>/aws-backint-agent/ 文件夹中找到 modify_global_ini.sql 文件。

      3. “无” — AWS Backint 安装程序不会采取任何操作来修改 global.ini 文件。您必须手动更新它们才能完成设置。

    10. HANA 系统数据库全局 .ini 文件 — 确认 global.ini 文件的位置

    11. 保存响应以供将来使用? — 您可以将 AWS Backint 安装程序的信息保存到文件中。如果需要,您可以稍后使用它以静默模式运行安装程序。

    12. 是否要继续安装? — 确认您已禁用现有备份并准备好继续安装。

  6. 要验证安装,请登录到您的实例并查看 /<install directory>/aws-backint-agent 目录。您应该在目录中看到以下文件:AWS Backint Agent 二进制文件、THIRD_PARTY_LICENSES.txt 文件(其中包含 Agent 使用的库的许可证)、启动程序脚本、YAML 配置文件和可选的 modify_global_ini.sql 文件。此外,AWS Backint Agent 的源文件 (aws-backint-agent.tar.gz) 存储在程序包目录中。您可以验证此文件的签名,以确保下载的源文件为原始文件且未修改。有关详细信息,请参阅本文档中的验证 AWS Backint Agent 和 SAP HANA 安装程序的签名部分。

    此外,AWS Backint 安装程序在 SAP HANA 全局目录中为 Backint 配置创建符号链接 (symlink)。确定 /usr/sap/<SID>/SYS/global/hdb/opt 目录中存在 hdbbackint 的符号链接,且 /usr/sap/<SID>/SYS/global/hdb/opt/hdbconfig 目录中存在 aws-backint-agent-config.yaml 的符号链接。

    注意

    如果由于验证错误而导致安装失败,并且您希望忽略验证并继续安装,则可以使用 -n 标记执行安装程序以忽略验证步骤。您还可以使用 -d 标记在调试模式下运行安装程序,生成详细的安装日志以进行故障排除。

使用 AWS Backint 安装程序安装 AWS Backint Agent — 静默模式

您可以在静默模式下使用 AWS Backint 安装程序安装 AWS Backint Agent。如果您希望自动执行安装过程而无需手动干预,请选择此选项。

要在静默模式下运行 AWS Backint 安装程序,请创建包含所有必需安装参数的响应文件。按照使用交互模式进行安装部分的步骤下载 AWS Backint 安装程序和创建响应文件。您无需确认就可以在交互模式下继续 AWS Backint Agent 安装。AWS Backint 安装程序将创建一个名为 aws-backint-agent-install-YYYYMMDDHHMMSS.rsp 的响应文件。

当您有一个响应文件时,您可以使用 vim 编辑器修改它,并根据需要调整参数。

下面是一个示例响应文件。

[DEFAULT] s3_bucket_name = awsdoc-example-bucket s3_bucket_owner_account_id = 111122223333 modify_global_ini = sql s3_bucket_region = us-east-1 s3_sse_kms_arn = arn:aws:kms:us-east-1:111122223333:key/1abcd9b9-ab12-1a2a-1abc-12345abc12a3 s3_bucket_folder = myfolder hana_sid = TST installation_directory = /hana/shared/

如果您想以编程方式而不是在交互模式下使用 AWS Backint 安装程序生成响应文件,您可以使用 -g 标记生成新的响应文件。下面是如何使用 AWS Backint 安装程序生成响应文件的示例。

sudo python install-aws-backint-agent -g "s3_bucket_owner_account_id = 111122223333,s3_bucket_name = awsdoc-example-bucket,s3_bucket_region = us-east-1,hana_sid = TST,s3_sse_kms_arn = arn:aws:kms:us-east-1:111122223333:key/1abcd9b9-ab12-1a2a-1abc-12345abc12a3,s3_bucket_folder = myfolder,installation_directory = /hana/shared/,modify_global_ini = sql" -f myresponse.rsp

创建响应文件后,使用以下步骤在静默模式下运行 AWS Backint 安装程序。

重要

在继续安装之前,禁用任何现有备份过程(包括计划日志备份)。如果在执行 AWS Backint Agent 安装程序之前没有禁用现有备份过程,则可能会损坏正在进行的备份,这会影响您恢复数据库的能力。

运行以下命令,使用生成的响应文件执行安装程序。

sudo python install-aws-backint-agent -m silent -f backint-agent-install-YYYYMMDDHHMMSS.rsp -a yes

如果要选择安装 Agent 的位置,请使用 -l 标记运行命令并指定位置。

sudo python install-aws-backint-agent -f aws-backint-agent-install-YYYYMMDDHHMMSS.rsp -m silent -a yes -d -l /tmp/backint/aws-backint-agent.tar.gz
注意

您必须确认已禁用现有备份,并已准备好通过传递确认标记 (-a yes) 在静默模式下继续安装。如果您未传递确认标记,AWS Backint 安装程序将无法执行。

Backint 相关的 SAP HANA 参数

要使用 AWS Backint Agent 启用 SAP HANA 备份,必须设置以下 SAP HANA 参数。如果您为 global.ini 文件更新选择了“修改”选项,SSM 文档或 AWS Backint 安装程序会在 global.ini 中为系统数据库添加或更新以下备份相关 SAP HANA 参数。如果选择“sql”,则可以运行 modify_global_ini.sql 文件中指定的 SQL 语句来更新这些参数。有关这些参数的更多详细信息,请参阅 SAP HANA 管理指南中的备份配置参数

[backup] catalog_backup_parameter_file = /usr/sap/<SID>/SYS/global/hdb/opt/hdbconfig/aws-backint-agent-config.yaml data_backup_parameter_file = /usr/sap/<SID>/SYS/global/hdb/opt/hdbconfig/aws-backint-agent-config.yaml log_backup_parameter_file = /usr/sap/<SID>/SYS/global/hdb/opt/hdbconfig/aws-backint-agent-config.yaml catalog_backup_using_backint = true log_backup_using_backint = true parallel_data_backup_backint_channels = 8 data_backup_buffer_size = 4096 max_recovery_backint_channels = 1 [communication] tcp_backlog = 2048 [persistence] enable_auto_log_backup = yes
注意

更改 tcp_backlog 参数需要重新启动 SAP HANA 才能生效。

max_recovery_backint_channels 确定恢复过程中并行还原/恢复的日志文件数。恢复多流备份时,SAP HANA 始终使用与备份过程相同的通道数。有关更多详细信息,请参阅 SAP 文档中的使用第三方备份工具进行多流数据备份

修改 AWS Backint Agent 配置参数

AWS Backint Agent 配置参数保留在 /<installation directory>/aws-backint-agent/ 目录中的 YAML 文件中。配置文件的名称是 aws-backint-agent-config.yaml。下表汇总了作为 AWS Backint Agent 安装过程一部分添加的配置参数,以及可以添加或更改的其他参数。

在初始设置期间添加到 aws-backint-agent-config.yaml 的参数

参数的名称 描述 默认值

S3BucketName

用于存储 SAP HANA 备份文件的 Amazon S3 存储桶的名称。例如:awsdoc-example-bucket 不适用

S3BucketAwsRegion

您的 Amazon S3 存储桶所在的 AWS 区域。例如:us-east-1 不适用

S3BucketFolder

用于存储 SAP HANA 备份文件的 Amazon S3 存储桶中的文件夹的名称。例如:my-folder Empty

S3BucketOwnerAccountID

Amazon S3 存储桶拥有者的 12 位账户 ID。例如:111122223333 不适用

LogFile

AWS Backint Agent 日志文件的位置。 /hana/shared/aws-backint-agent/aws-backint-agent.log

S3SseKmsArn

AWS Backint Agent 可用于加密 Amazon S3 中存储的备份文件的 KMS 密钥的 ARN。例如:arn:aws:kms:us-east-1: 111122223333:key/5bfbc9b9-ab12-ab12-a123-11111xxx22xx Empty

S3SseEnabled

指定是否启用 KMS 加密。 如果 S3SseKmsArn 参数为空,则设置为 false。否则,设置为 true

可以添加到 aws-backint-agent-config.yaml 文件以更新默认值的参数

参数的名称 描述 默认值

S3StorageClass

指定 AWS Backint Agent 可在存储备份文件时使用的 S3 存储类类型。

允许的值:STANDARDSTANDARD_IAONEZONE_IA

STANDARD

EnableTagging

启用或禁用 S3 中存储的备份文件的默认对象标记。标记有助于识别备份期间使用的 AWS Backint 版本和 SAP HANA 版本。

允许的值:truefalse

true

UploadConcurrency

指定在备份期间可以并行工作的 S3 线程数。

允许的值:1200

100

UploadChannelSize

指定备份期间可与 S3 存储桶并行上传的文件数。

允许的值:132

10

MaximumConcurrentFilesForRestore

指定还原期间可从 S3 并行下载的文件数。

允许的值:132

5

查看 AWS Backint Agent日志

当 SAP HANA 为备份和还原相关操作调用 AWS Backint Agent 时,日志写入到 <installation directory>/aws-backint-agent/ 文件夹中,文件名为 aws-backint-agent.log。如果要更改 AWS Backint Agent 日志的位置,可以更新 aws-backint-agent-config.yaml 文件中的 LogFile 参数。

获取当前安装的 AWS Backint Agent 版本

要显示 Backint 版本及其支持的当前 AWS Backint Agent 版本,请使用安装目录中的 –v 参数以 <SID>adm 用户身份运行 hdbbackint 命令,如以下示例所示。

/usr/sap/<SID>/SYS/global/hdb/opt/hdbbackint -v

更新或安装先前版本的 AWS Backint Agent

Agent 和安装程序一起发布,它们的版本始终是一致的。在以下 S3 存储桶位置提供了安装程序的最新版本和先前版本:

  • 最新版本 s3://awssap-backint-agent-cn-north-1/binary/latest/install-aws-backint-agent

  • 先前版本s3://awssap-backint-agent-cn-north-1/binary/agent-version/install-aws-backint-agent

要安装先前版本的安装程序,请从包含先前版本的 S3 文件夹中下载要安装的版本。

注意

安装程序将下载并安装与安装程序版本相对应的 Agent 版本。

使用 SSM 文档安装 Agent 时,可以输入要安装的版本。

性能优化

使用优化了备份和还原操作性能的默认值安装 AWS Backint Agent。如果要进一步优化备份和还原操作的性能,可以调整 UploadChannelSizeMaximumConcurrentFilesForRestore 参数。确保使用正确的实例类型和存储配置以获得最佳性能。AWS Backint Agent 受实例中可用资源的约束。

UploadChannelSize 参数用于确定备份期间可以将多少个文件并行上传到 S3 存储桶。此参数的默认值为 10,它在大多数情况下可提供最佳性能。

UploadConcurrency 参数用于确定备份期间可以并行工作的 S3 线程数。此参数的默认值为 100,这在大多数情况下可以提供最佳性能。

MaximumConcurrentFilesForRestore 参数用于确定在还原操作期间可以从 S3 并行下载多少个文件。此参数的默认值为 5,它为大多数使用案例提供最佳性能。

如果要调整这些参数,可以将它们添加到 aws-backint-agent-config.yaml 文件并调整值(最多可达到允许的最大值)。我们强烈建议您在更改后测试备份和恢复操作,以确保不会对您的备份和还原操作以及其他标准操作产生意想不到的影响。

此外,要在备份和还原操作期间获得最佳性能,请确保按照 AWS 的最佳实践配置 SAP HANA 数据和日志卷。有关更多详细信息,请参阅 SAP HANA on AWS 文档中的 SAP HANA 的存储配置部分。

订阅 AWS Backint Agent通知

Amazon Simple Notification Service (Amazon SNS) 可以在新版本 AWS Backint Agent 或 AWS Backint 安装程序发布时通知您。以下过程显示了如何订阅这些通知。

订阅 AWS Backint Agent 通知

  1. 通过以下网址打开 Amazon SNS 控制台:https://console.aws.amazon.com/sns/v3/home

  2. 从导航栏的区域选择器中,如果尚未选中美国东部(弗吉尼亚北部),请选择它。您必须选择此区域,因为您订阅的 AWS Backint Agent SNS 通知仅在此区域中生成。

  3. 在导航窗格中,选择 Subscriptions

  4. 选择创建订阅

  5. 对于创建订阅,请执行以下操作:

    1. 对于主题 ARN,请使用以下 Amazon 资源名称 (ARN):

      arn:aws-cn:sns:cn-north-1:476271213511:AWS-Backint-Agent-Update

    2. 对于 Protocol (协议),选择 Email (电子邮件)SMS

    3. 对于终端节点,输入可以用于接收通知的电子邮件地址。如果您选择 SMS,请输入区号和号码。

    4. 选择 Create subscription (创建订阅)

  6. 如果选择电子邮件,则您会收到一封要求确认订阅的电子邮件。打开电子邮件,然后按照说明操作以完成订阅。

    当 AWS Backint Agent 或 AWS Backint 安装程序的新版本发布时,我们会向订户发送通知。如果您不希望再收到这些通知,请通过以下步骤取消订阅。

取消订阅 AWS Backint Agent 通知

  1. 打开 Amazon SNS 控制台。

  2. 在导航窗格中,选择订阅

  3. 选择订阅,然后依次选择操作删除订阅。当系统提示进行确认时,选择 Delete

版本历史记录

下表汇总了每个 AWS Backint Agent版本的变更。

版本 详细信息 发行日期

1.01

代理

  • 支持 GovCloud 区域。

  • 支持在配置文件中使用 UploadConcurrency 参数指定可并行运行的 S3 线程数。

手动安装程序

  • 删除了 -o 标记。

  • 添加了 -l 标记,以允许您指定 Agent .tar 文件的位置。

SSM 安装程序

  • 增加了对指定 Agent 安装版本的支持。

  • 增加了忽略 S3 存储桶验证的功能。

  • 错误修复:选择通过 AWSCLI 安装,偶尔会安装失败。

2020 年 7 月 17 日

1.0

首次发布。

2020 年 5 月 18 日