备份 Azure VM 中的 SAP HANA 数据库

SAP HANA 数据库是关键工作负荷,要求较低的恢复点目标 (RPO) 和长期保留。 可以使用 Azure 备份来备份在 Azure 虚拟机 (VM) 上运行的 SAP HANA 数据库。

本文展示了如何将在 Azure VM 上运行的 SAP HANA 数据库备份到 Azure 备份恢复服务保管库。

本文将指导如何进行以下操作:

  • 创建并配置保管库
  • 发现数据库
  • 配置备份
  • 运行按需备份作业

备注

自 2020 年 8 月 1 日起,适用于 RHEL 的 SAP HANA 备份(7.4、7.6、7.7 和 8.1)已正式发布。

备注

针对 Azure VM 中 SQL 服务器的软删除以及针对 Azure VM 工作负荷中 SAP HANA 的软删除 现已推出预览版。
若要注册预览版,请向 AskAzureBackupTeam@microsoft.com 发送邮件。

先决条件

若要为备份注册数据库,请参阅先决条件预注册脚本的功能部分。

建立网络连接

对于所有操作,在 Azure VM 上运行的 SAP HANA 数据库需要连接到 Azure 备份服务、Azure 存储和 Azure Active Directory。 这可以通过使用专用终结点,或允许访问所需的公共 IP 地址或 FQDN 来实现。 如果不允许正确连接到所需的 Azure 服务,则可能会导致诸如数据库发现、配置备份、执行备份和还原数据等操作失败。

下表列出了可用于建立连接的各种备选方案:

选项 优点 缺点
专用终结点 允许通过虚拟网络中的专用 IP 进行备份

提供网络和保管库端的精细控制
产生标准专用终结点开销
NSG 服务标记 由于范围更改会自动合并,因此管理变得更容易

无额外成本
只可用于 NSG

提供对整个服务的访问
Azure 防火墙 FQDN 标记 自动管理必需的 FQDN,因此更易于管理 只可用于 Azure 防火墙
允许访问服务 FQDN/IP 无额外成本

适用于所有网络安全设备和防火墙
可能需要访问一组广泛的 IP 或 FQDN
使用 HTTP 代理 对 VM 进行单点 Internet 访问 通过代理软件运行 VM 带来的额外成本

关于使用这些选项的更多细节如下:

专用终结点

使用专用终结点,可以从虚拟网络内的服务器安全地连接到恢复服务保管库。 专用终结点为保管库使用 VNET 地址空间中的 IP。 虚拟网络中的资源与保管库之间的网络流量将通过虚拟网络和 Microsoft 主干网络上的专用链接传输。 这样就不会从公共 Internet 泄露信息。

NSG 标记

如果使用网络安全组 (NSG),请使用 AzureBackup 服务标记以允许对 Azure 备份进行出站访问。 除了 Azure 备份标记外,还需要通过为 Azure AD (AzureActiveDirectory) 和 Azure 存储(存储)创建类似的 NSG 规则,以便在连接后进行身份验证和数据传输。 以下步骤介绍了为 Azure 备份标记创建规则的过程:

  1. 在“所有服务”中转到“网络安全组”,然后选择“网络安全组”。

  2. 在“设置”下选择“出站安全规则”。

  3. 选择 添加 。 根据安全规则设置中所述,输入创建新规则所需的所有详细信息。 请确保将选项“目标”设置为“服务标记”,将“目标服务标记”设置为“AzureBackup”。

  4. 选择“添加”,保存新创建的出站安全规则。

同样,可以为 Azure 存储和 Azure AD 创建 NSG 出站安全规则。 有关服务标记的详细信息,请参阅此文

Azure 防火墙标记

如果使用 Azure 防火墙,请使用 AzureBackup Azure 防火墙 FQDN 标记创建应用程序规则。 这允许对 Azure 备份进行所有出站访问。

允许访问服务 IP 范围

如果选择允许访问服务 IP,请参阅此处的 JSON 文件中的 IP 范围。 你需要允许访问与 Azure 备份、Azure 存储和 Azure Active Directory 对应的 IP。

允许访问服务 FQDN

还可以使用以下 FQDN 以允许从服务器访问所需的服务:

服务 要访问的域名
Azure 备份 *.backup.azure.cn
Azure 存储 *.blob.core.chinacloudapi.cn

*.queue.core.chinacloudapi.cn

*.blob.storage.chinacloudapi.cn
Azure AD 根据这篇文章,允许访问第 56 和 59 节下的 FQDN

使用 HTTP 代理服务器路由流量

备份在 Azure VM 上运行的 SAP HANA 数据库时,该 VM 上的备份扩展将使用 HTTPS API 将管理命令发送到 Azure 备份,并将数据发送到 Azure 存储。 备份扩展还使用 Azure AD 进行身份验证。 通过 HTTP 代理路由这三个服务的备份扩展流量。 使用上面提到的 IP 和 FQDN 列表,以允许访问所需的服务。 不支持已经过身份验证的代理服务器。

备注

没有服务级代理支持。 也就是说,不支持从少数或所选服务(Azure 备份服务)通过代理的流量。 整个数据或流量可以通过代理路由,也可以不通过代理路由。

创建恢复服务保管库

恢复服务保管库是用于存储在不同时间创建的备份和恢复点的实体。 恢复服务保管库还包含与受保护虚拟机关联的备份策略。

若要创建恢复服务保管库,请执行以下操作:

  1. Azure 门户中登录到自己的订阅。

  2. 在左侧菜单中,选择“所有服务” 。

    选择“所有服务”

  3. 在“所有服务”对话框中,输入“恢复服务” 。 资源列表根据输入进行筛选。 在资源列表中,选择“恢复服务保管库” 。

    输入并选择“恢复服务保管库”

    此时会显示订阅中的恢复服务保管库列表。

  4. 在“恢复服务保管库”仪表板上,选择“添加” 。

    添加恢复服务保管库

    此时会打开“恢复服务保管库”对话框 。 提供“名称”、“订阅”、“资源组”和“位置”的值 。

    配置恢复服务保管库

    • 名称:输入一个友好名称以标识此保管库。 名称对于 Azure 订阅必须是唯一的。 指定的名称应至少包含 2 个字符,最多不超过 50 个字符。 名称必须以字母开头且只能包含字母、数字和连字符。

    • 订阅:选择要使用的订阅。 如果你仅是一个订阅的成员,则会看到该名称。 如果不确定要使用哪个订阅,请使用默认的(建议的)订阅。 仅当工作或学校帐户与多个 Azure 订阅关联时,才会显示多个选项。

    • 资源组:使用现有资源组或创建新组。 要查看订阅中可用的资源组列表,请选择“使用现有资源” ,然后从下拉列表框中选择一个资源。 若要创建新资源组,请选择“新建”,然后输入名称 。 有关资源组的完整信息,请参阅 Azure 资源管理器概述

    • 位置:选择保管库的地理区域。 要创建保管库以保护虚拟机,保管库必须与虚拟机位于同一区域中 。

      重要

      如果不确定 VM 的位置,请关闭对话框。 转到门户中的虚拟机列表。 如果虚拟机位于多个区域,请在每个区域中创建一个恢复服务保管库。 先在第一个位置创建保管库,然后再为其他位置创建保管库。 无需指定存储帐户即可存储备份数据。 恢复服务保管库和 Azure 备份服务会自动处理这种情况。

  5. 准备好创建恢复服务保管库后,选择“创建” 。

    创建恢复服务保管库

    创建恢复服务保管库可能需要一段时间。 可在门户右上角“通知”区域监视状态通知 。 创建保管库后,它会显示在“恢复服务保管库”的列表中。 如果未看到创建的保管库,请选择“刷新” 。

    刷新备份保管库列表

发现数据库

  1. 在保管库的“开始使用”中,选择“备份” 。 在“工作负荷在哪里运行?”中,选择“Azure VM 中的 SAP HANA” 。

  2. 选择“开始发现”。 这会开始在保管库区域中发现未受保护的 Linux VM。

    • 在发现后,未受保护的 VM 将显示在门户中,按名称和资源组列出。
    • 如果某个 VM 未按预期列出,请检查它是否已在保管库中备份。
    • 可能有多个 VM 同名,但属于不同的资源组。
  3. 在“选择虚拟机”中,选择脚本下载链接。此脚本可为 Azure 备份服务提供访问 SAP HANA VM 的权限,以进行数据库发现。

  4. 在托管要备份的 SAP HANA 数据库的每个 VM 上运行此脚本。

  5. 在 VM 上运行此脚本后,在“选择虚拟机”中选择 VM。 然后选择“发现 DB”。

  6. Azure 备份可发现该 VM 上的所有 SAP HANA 数据库。 在发现期间,Azure Backup 将 VM 注册到保管库,并在该 VM 上安装扩展。 不会在数据库中安装任何代理。

    发现 SAP HANA 数据库

配置备份

现在启用备份。

  1. 在步骤 2 中,选择“配置备份”。

    配置备份

  2. 在“选择要备份的项”中,选择要保护的所有数据库,然后选择“确定”。

    选择要备份的项

  3. 在“备份策略” > “选择备份策略”中,按照下面的说明,为数据库创建一个新的备份策略。

    选择备份策略

  4. 创建策略后,在“备份菜单”中选择“启用备份” 。

    启用备份

  5. 在门户的“通知”区域跟踪备份配置进度。

创建备份策略

备份策略定义备份创建时间以及这些备份的保留时间。

  • 策略是在保管库级别创建的。
  • 多个保管库可以使用相同的备份策略,但必须向每个保管库应用该备份策略。

备注

备份在 Azure VM 中运行的 SAP HANA 数据库时,Azure 备份不会针对夏令时更改自动进行调整。

请根据需要手动修改策略。

按以下方式指定策略设置:

  1. 在“策略名称”处输入新策略的名称。

    输入策略名称

  2. 在“完整备份策略”中选择“备份频率”,然后选择“每日”或“每周”。

    • 每日:选择开始备份作业的小时和时区。
      • 你必须运行完整备份。 无法关闭此选项。
      • 选择“完整备份”以查看策略。
      • 对于每日完整备份,无法创建差异备份。
    • 每周:选择运行备份作业的星期、小时和时区。

    选择备份频率

  3. 在“保持期”中,对完整备份配置保留设置。

    • 默认情况下将选择所有选项。 清除你不想使用的所有保持期限制,并设置要使用的选项。
    • 任何备份类型(完整/差异/日志)的最短保持期均为七天。
    • 恢复点已根据其保留范围标记为保留。 例如,如果选择每日完整备份,则每天只触发一次完整备份。
    • 根据每周保持期和设置,将会标记并保留特定日期的备份。
    • 每月和每年保留范围的行为类似。
  4. 在“完整备份策略”菜单中,选择“确定”接受设置。

  5. 选择“差异备份”,以添加差异策略。

  6. 在“差异备份策略”中,选择“启用”打开频率和保留控件。

    • 每天最多可以触发一次差异备份。
    • 差异备份最多可以保留 180 天。 如果需要保留更长时间,必须使用完整备份。

    差异备份策略

    备注

    可以选择差异备份或增量备份作为每日备份,但不能同时选择两者。

  7. 在“增量备份策略”中,选择“启用”以打开频率和保留控件 。

    • 每天最多可以触发一次增量备份。
    • 增量备份最多可以保留 180 天。 如果需要保留更长时间,必须使用完整备份。

    增量备份策略

  8. 选择“确定”保存策略,并返回“备份策略”主菜单。

  9. 请选择“日志备份”,以添加事务日志备份策略。

    • 在“日志备份”中,选择“启用”。 由于 SAP HANA 管理所有日志备份,此类备份无法被禁用。
    • 设置频率和保留期控制。

    备注

    日志备份仅在成功完成一次完整备份之后进行。

  10. 选择“确定”保存策略,并返回“备份策略”主菜单。

  11. 完成定义备份策略后,选择“确定”。

备注

每个日志备份都链接到上一个完整备份,以形成恢复链。 此完整备份将一直保留到最后一个日志备份的保留期结束为止。 这可能意味着完整备份会保留一段额外的时间,以确保所有日志都可以恢复。 假设用户有每周完整备份、每日差异备份和 2 小时日志备份。 所有这些备份都将保留 30 天。 但是,只有在下一个完整备份可用后(即 30 + 7 天后),才能真正清除/删除这个每周完整备份。 例如,每周完整备份在 11 月 16 日执行。 根据保留策略,它应保留到 12 月 16 日。 该完整备份的最后一次日志备份发生在下一次计划的完整备份之前,即 11 月 22 日。 必须等到 12 月 22 日此日志备份可用后,才能删除 11 月 16 日的完整备份。 因此,11 月 16 日的完整备份将保留到 12 月 22 日。

运行按需备份

备份根据策略计划运行。 可以按需运行备份,如下所示:

  1. 在保管库菜单中,选择“备份项”。
  2. 在“备份项”中,选择运行 SAP HANA 数据库的 VM,然后选择“立即备份”。
  3. 在“立即备份”中,选择要执行的备份的类型。 然后选择“确定”。 这些备份将保留 45 天。
  4. 监视门户通知。 可以在保管库仪表板 >“备份作业” > “进行中”监视作业进度。 创建初始备份可能需要一些时间,具体取决于你的数据库的大小。

默认情况下,按需备份的保留期为 45 天。

在启用了 Azure 备份的数据库上运行 SAP HANA Studio 备份

如果要使用 Azure 备份创建正在备份的数据库的本地备份(使用 HANA Studio),请执行以下操作:

  1. 等待数据库的所有完整备份或日志备份完成。 在 SAP HANA Studio / Cockpit 中检查状态。
  2. 禁用日志备份,并将备份目录设置为相关数据库的文件系统。
  3. 为此,请双击“systemdb” > “配置” > “选择数据库” > “筛选器(日志)”。
  4. enable_auto_log_backup 设置为 No
  5. log_backup_using_backint 设置为 False
  6. 将“catalog_backup_using_backint”设置为“False” 。
  7. 创建数据库的完整备份。
  8. 等待完整备份和目录备份完成。
  9. 将前面的设置恢复为 Azure 的设置:
    • enable_auto_log_backup 设置为 Yes
    • 将 log_backup_using_backint 设置为 True 。
    • 将“catalog_backup_using_backint”设置为“True” 。

后续步骤