从 EBS 快照恢复 SAP HANA - SAP HANA 开启 Amazon
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

从 EBS 快照恢复 SAP HANA

成功的恢复策略取决于许多因素,包括:

  • 导致恢复的故障场景或事件

  • 需要恢复到的恢复点

  • 上次成功备份的日期和时间

所有这些因素都可能影响恢复和恢复方法。建议制定、测试并妥善记录全面的灾难恢复 (DR) 策略,以确保对恢复过程和恢复时间有充分的了解。

以下步骤不包括有关日志恢复的详细说明,日志恢复可能涉及辅助备份机制,例如适用于 SAP HANA 的 Amazon Backint。确保在选择要恢复的卷时考虑对恢复点的潜在影响。

步骤 1:准备恢复

  1. 获取有关要恢复的 EBS 卷的信息。此信息可以帮助您确定哪些卷需要恢复。例如,它可以帮助您识别工作负载的数据量和日志量。使用此信息来标记您的卷或将信息保存在不会受到实例丢失影响的位置。

    运行以下命令并记下卷的 ID、序列号、UUID、挂载点信息、fstab 配置和附件信息。

    $ lsblk -o +LABEL,UUID,SERIAL | sed 's/vol/vol-/g'
    $ cat /etc/fstab | column -t
    $ aws ec2 describe-volumes \ --filters Name=attachment.instance-id,Values=instance_id \ --query 'Volumes[*].[VolumeId,Size,Attachments[0].Device,Attachments[0].InstanceId,Attachments[0].State]' \ --output table
  2. 查看 EBS 快照的快速快照恢复状态。通过快照创建的 EBS 卷具有快速快照还原功能,可立即提供其所有预配置性能。这会消除首次访问块时对其执行 I/O 操作的延迟。这对 SAP HANA 恢复非常重要,因为启动时会从磁盘读取表,以便可以将其加载到内存中。在创建 EBS 卷之前,请确保快照恢复处于要创建卷的可用区中的快照enabled状态。您还需要足够的卷创建积分。有关更多信息,请参阅注意事项

  3. 确定备份和备份目录。如果可能,请确定您计划还原到的备份的时间戳和备份 ID。确保备份目录位于恢复 EBS 卷后可用的位置。

  4. 停止 SAP HANA 和任何备份计划。如果要就地恢复,请确保恢复时的 SAP HANA 和操作系统状态保持干净。

    运行以下命令以使用 sapcontrol 或其他 SAP 工具停止 SAP HANA 和任何连接的 SAP 应用程序,并删除剩余的进程并清理共享内存段。

    $ cleanipc hana_sys_no remove

    (可选)执行以下操作以防止 SAP HANA 在还原完成之前尝试启动。如果您需要在还原完成之前重新启动操作系统,这会很有帮助。

    $ cd /usr/sap/hana_sid/SYS/profile $ vi hana_start_profile

    然后,检查的值并将其更改autostart0

    #autostart=1 # Previous value changed for restore. autostart=0
  5. (可选)暂时禁用或修改 Amazon Data Lifecycle Manager 策略或计划,以排除您正在执行恢复的 EC2 实例。这样可以防止对恢复的干扰,并确保所需的快照在还原过程期间保持不变。

步骤 2:连接或更换已恢复的 EBS 卷

以下步骤取决于您是恢复到创建备份的 EC2 实例,还是恢复到新的 EC2 实例。如果您要替换同一实例上的 EBS 卷,则必须分离之前的所有卷。

  1. 确定要从 EBS 快照恢复的挂载点,如果适用,请从 EC2 实例中卸载与旧卷关联的文件系统。例如,以 root 用户身份运行以下命令。

    $ umount /hana/data

    如果您担心卷的状态可能会影响重启实例的能力,可以注释掉中的条目/etc/fstab

  2. 按照关于从 EBS 快照恢复 EBS 卷的规范性指南,根据与备份时间和需要恢复的卷相匹配的快照创建卷,然后使用您在步骤 1 中记下的映射信息将卷连接到实例。

    如果您使用的是条带化逻辑卷管理器 (LVM) 卷,请格外小心,确保卷组中所有必需的卷都从同一点恢复。

  3. 扫描或刷新连接的卷。以 root 用户身份运行以下命令。

    $ pvscan --cache -aay

    如果您使用的是 LVM,请运行以下命令。

    $ vgchange --refresh
  4. 重新装载卷并确保其/etc/fstab反映所需的文件系统。例如,运行以下命令。

    $ mount /hana/data

    查看操作系统日志中是否存在任何错误。

步骤 3:恢复 SAP HANA 数据库

恢复 EBS 卷后,按照 SAP 文档中的说明恢复 SAP HANA 系统数据库和所有租户。确保备份目录和向前滚动所需的所有日志都可用。这可能包括访问 SAP HANA 和/或本地文件系统的Amazon备份。

由于系统数据库和租户数据库通常共享相同的文件系统,因此需要恢复所有数据库。

  1. 恢复 SAP HANA 系统数据库。有关更多信息,请参阅 SAP 文档中的从数据快照恢复 SAP HANA

  2. 恢复所有 SAP HANA 租户数据库。有关更多信息,请参阅 SAP 文档中的从数据快照恢复所有租户数据库

步骤 4:恢复标准操作

如果您之前在启动还原过程时禁用了 Amazon Data Lifecycle Manager 策略,那么现在您应该重新启用该策略,这样它就可以继续为所有目标 EC2 实例自动创建应用程序一致的 EBS 快照。

你也可以考虑改autostart回来,以1便 SAP HANA 在系统重启后自动重启。