

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

# 高可用性和灾难恢复
<a name="hana-ops-ha-dr"></a>

 Amazon 提供多种选项，用于执行灾难恢复以及为 SAP HANA 系统提供高可用性。此部分提供有关这些解决方案的信息。其中还涵盖了 Amazon 平台上支持的 SAP 提供的原生 SAP HANA 恢复功能。

**Topics**
+ [Amazon EC2 恢复选项](#ec2-recovery-hana-hadr)
+ [SAP HANA 服务自动重启](#hana-restart-hana-hadr)
+ [SAP HANA 备份/还原](#hana-backup-hana-hadr)
+ [Amazon Backint Agent for SAP HANA](#backint-hana-hadr)
+ [Amazon EBS 快照](#ebs-hana-hadr)
+ [集群解决方案](#cluster-hana-hadr)
+ [Pacemaker 集群](#pacemaker-hana-hadr)
+ [Amazon Launch Wizard for SAP](#lwsap-hana-hadr)
+ [Amazon Application Migration Service 和 Amazon 弹性灾难恢复](#mgn-drs-hana-hadr)
+ [SAP HANA 系统复制](hana-ops-ha-dr-hsr.md)
+ [测试 SAP HANA 高可用性部署](hana-ops-ha-dr-testing.md)
+ [高可用性 SAP HANA 部署故障排除](hana-ops-ha-dr-troubleshoot.md)

## Amazon EC2 恢复选项
<a name="ec2-recovery-hana-hadr"></a>

您可以使用以下恢复选项，恢复在 Amazon EC2 实例上运行的 SAP HANA 数据库。

**Example**  
+ Amazon EC2 实例的默认配置，可在出现硬件故障或需要 Amazon 干预的问题时，对支持的实例实现自动恢复。自动恢复 Amazon EC2 实例可以提高 SAP 工作负载的韧性。有关更多信息，请参阅[基于实例配置的简化的自动恢复](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery)。
+ 您可以创建 `StatusCheckFailed_System` CloudWatch 警报来监控 Amazon EC2 实例。系统状态检查可能会由于以下原因导致失败：
  + 网络连接丢失
  + 系统电源损耗
  + 物理主机上的软件问题
  + 物理主机上影响到网络连接状态的硬件问题
CloudWatch 警报检测到此故障时，就会启动恢复操作。恢复的实例与原始实例相同，包括实例 ID、私有 IP 地址、弹性 IP 地址以及所有实例元数据。有关更多信息，请参阅[基于 Amazon CloudWatch 操作的恢复](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ec2-instance-recover.html#cloudwatch-recovery)。  
\+ 提示：使用 Amazon 管理控制台创建 `StatusCheckFailed_System` CloudWatch 警报时，请将其与 Amazon SNS 关联来接收电子邮件通知。或者，您可以在创建警报后设置 Amazon SNS 通知。有关更多信息，请参阅[设置 Amazon SNS 通知](https://docs.amazonaws.cn/AmazonCloudWatch/latest/monitoring/US_SetupSNS.html)。
+ 如果由于系统电源或网络连接事件导致专属主机故障，专属主机自动恢复功能将在新的替换主机上重新启动实例。有关更多信息，请参阅[主机恢复](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/dedicated-hosts-recovery.html)。

我们建议您配置 Amazon EC2 实例（第三方集群解决方案中的实例除外），并配置具有自动恢复功能的专属主机，以防出现硬件故障。下图说明了 Amazon EC2 恢复选项。

![图像显示在 Amazon EC2 上运行的 SAP HANA 数据库的恢复选项。](http://docs.amazonaws.cn/sap/latest/sap-hana/images/ec2automaticrecovery.png)


## SAP HANA 服务自动重启
<a name="hana-restart-hana-hadr"></a>

SAP HANA 服务自动重启是 SAP 提供的故障恢复解决方案。SAP HANA 有许多配置的服务会始终运行，用于各种活动。当任意这些服务由于软件故障或人为错误而被禁用时，该服务将通过 SAP HANA 服务自动重启监控程序功能自动重新启动。服务在重新启动时，会将所有必要的数据加载回内存并恢复其操作。在 Amazon 云端，SAP HANA 服务自动重启解决方案的工作方式与在任何其他平台上相同。SAP HANA 服务自动重启与 [Amazon EC2 恢复选项](#ec2-recovery-hana-hadr)结合使用，打造出了强大的灾难恢复解决方案。

## SAP HANA 备份/还原
<a name="hana-backup-hana-hadr"></a>

尽管 SAP HANA 是一个内存数据库，但它会将所有更改保留在持久存储中，以便在出现任何故障时（例如停电）从中还原和恢复。如果持久存储损坏或出现任何逻辑错误，则需要使用 SAP HANA 备份来恢复数据库。SAP HANA 数据库备份文件可以定期备份到远程位置以用于灾难恢复。在 Amazon 云端，SAP HANA 备份/恢复功能的工作方式与在任何其他平台上相同。有关更多信息，请参阅 [SAP HANA Administration Guide](https://help.sap.com/docs/SAP_HANA_PLATFORM/6b94445c94ae495c83a19646e7c3fd56/330e5550b09d4f0f8b6cceb14a64cd22.html)。

## Amazon Backint Agent for SAP HANA
<a name="backint-hana-hadr"></a>

 Amazon Backint Agent for SAP HANA（Amazon Backint Agent）是一项经过 SAP 认证的备份和还原应用程序，适用于在云端的 Amazon EC2 实例上运行的 SAP HANA 工作负载。AmazonBackint Agent 作为独立应用程序运行，可与您的现有工作流集成，将 SAP HANA 数据库备份到 Amazon S3，并使用 SAP HANA Cockpit、SAP HANA Studio 和 SQL 命令将其恢复。AmazonBackint Agent 支持 SAP HANA 数据库的完整、增量和差异备份。此外，您可以将日志文件和目录备份到 Amazon S3。有关更多信息，请参阅 [Amazon Backint Agent for SAP HANA](https://docs.amazonaws.cn/sap/latest/sap-hana/aws-backint-agent-sap-hana.html)。

**Topics**
+ [示例方案](#example-backint-hana-hadr)
+ [备份用时](#time-backint-hana-hadr)
+ [恢复时间目标和恢复点目标](#rto-rpo-backint-hana-hadr)

### 示例方案
<a name="example-backint-hana-hadr"></a>

 利用 Amazon Backint Agent for SAP HANA，您可以为 Amazon 云端的 SAP HANA 系统实现高可用性，并为灾难恢复做好准备。请参阅以下示例场景来了解更多信息。

1. 在可用区 1 中的 Amazon EC2 上运行 SAP HANA 系统。

1. 设置 `StatusCheckFailed_System` CloudWatch 警报，使其在系统检查失败时自动恢复您的 Amazon EC2 实例。

   1. 您的实例将在同一可用区内恢复。

   1. 可用区不可用时，您可能无法访问该实例。

1. 在可用区 2 中，使用 Amazon CloudFormation 模板启动新 Amazon EC2 实例。有关更多信息，请参阅[从启动模板启动实例](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ec2-launch-templates.html)。

1. 使用 Amazon Backint Agent 从 Amazon S3 恢复 SAP HANA 数据库。有关更多信息，请参阅[使用 Amazon Backint Agent for SAP HANA 备份和还原 SAP HANA 系统](https://docs.amazonaws.cn/sap/latest/sap-hana/aws-backint-agent-backup-restore.html)。

1. 当新 SAP HANA 系统在 Amazon EC2 上运行后，将您的客户端流量重定向到该系统。  
![使用 Backint Agent for SAP HANA 备份和还原](http://docs.amazonaws.cn/sap/latest/sap-hana/images/backinthanahadr.png)

在此场景中，您可以避免使用备用节点的成本。使用 Amazon 多可用区基础设施，并通过 Amazon Backint Agent for SAP HANA 进行备份/还原，您可以快速恢复运营并显著降低停机时间成本。

精心设计的恢复过程，使得该模式适用于较长的恢复时间目标和大于零的恢复点目标。恢复点目标取决于您在 Amazon S3 中存储 SAP HANA 备份文件的频率。

您可以使用 Amazon Backint Agent 将 SAP HANA 系统备份存储到 Amazon S3，从而降低恢复点目标。此外，您可以使用 Amazon S3 中的备份文件快速进行恢复，而无需创建自定义脚本来手动将 SAP HANA 备份文件复制到 Amazon S3 或从中复制。

### 备份用时
<a name="time-backint-hana-hadr"></a>

使用 Amazon Backint Agent 在 Amazon EC2 上备份和恢复 SAP HANA 数据库所花费的时间取决于您的系统配置。这包括 Amazon EC2 实例类型、Amazon EBS 卷类型和数据库大小。以下介绍了影响备份和恢复 SAP HANA 系统所花费时间的关键变量。
+ 支持 SAP HANA 数据库的底层 Amazon EBS 卷的存储吞吐量
+ 支持与 Amazon S3 通信的通道的网络吞吐量
+ 实例类型上的可用 CPU 资源

### 恢复时间目标和恢复点目标
<a name="rto-rpo-backint-hana-hadr"></a>

我们建议您进行各种测试，来确定适合您的业务恢复时间目标和恢复点目标的合适系统配置。AmazonBackint Agent for SAP HANA 通过并行处理备份和恢复流程来最大限度地利用可用吞吐量。恢复时间目标针对任意给定的系统配置进行了优化。例如，使用 r5.2xlarge 上的 SAP HANA 纵向扩展节点，Amazon Backint Agent 能够用 4 分 15 秒上传 551 GB 的数据，实现 2.16 GB/s 的总吞吐量。同样，对于在 u6-tb1.metal 实例上运行的 4 节点 SAP HANA 横向扩展，Amazon Backint Agent 能够用 23 分钟上传 22.86 TB 的数据，实现 16.8 GB/s 的总吞吐量。

根据我们的测试，使用 Amazon Backint Agent 执行恢复操作所需的时间通常是备份时间的 1.5 到 2 倍。有关更多信息，请参阅[性能优化](https://docs.amazonaws.cn/sap/latest/sap-hana/aws-backint-agent-installing-configuring.html#aws-backint-agent-performance-tuning)。

## Amazon EBS 快照
<a name="ebs-hana-hadr"></a>

您可以通过拍摄时间点快照将 Amazon EBS 卷上的数据备份到 Amazon S3。无论数据库大小如何，快照都能提供快速的备份过程。它们存储在 Amazon S3 中，并自动跨可用区复制。

默认情况下，Amazon EBS 快照为增量快照。仅存储自上次拍摄快照以来的增量更改。快照也具有崩溃一致性。它们包含已完成 I/O 操作的块。您可以跨 Amazon 区域复制快照或与其他 Amazon 账户共享快照。您可以从快照恢复 Amazon EBS 卷，或者使用快照在相同或不同的可用区中创建新卷，然后启动 Amazon EC2 实例。Amazon EBS 快照提供了安全简单的数据保护解决方案，旨在保护您的块存储数据，例如 Amazon EBS 卷、启动卷和本地块数据。有关更多信息，请参阅 [Amazon EBS 快照](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/EBSSnapshots.html)。

Amazon EBS 快照还可用于实现灾难恢复，以及跨 Amazon 区域和账户迁移数据。Amazon EBS 快速快照还原使您能够从创建时已完全初始化的快照创建卷。这会消除首次访问块时对其执行 I/O 操作的延迟。使用快速快照还原创建的卷可以立即交付其所有预置性能。Amazon EBS 快速快照还原可以在创建快照时在快照上启用。这可以帮助您实现较短的恢复时间目标。有关更多信息，请参阅 [Amazon EBS 快速快照还原](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/ebs-fast-snapshot-restore.html)。

## 集群解决方案
<a name="cluster-hana-hadr"></a>

Amazon 云端的 SAP HANA 工作负载在基础设施层进行配置，并采用了具备高可用性和容错能力的方法。故障仍然需要在 SAP HANA 数据库层管理。如果在硬件或软件级别检测到故障，则可以使用 SAP HANA cockpit、SAP HANA studio 或 `hdbnsutil` 命令行工具执行手动失效转移过程。手动流程可能会影响业务流程的可用性。

您还可以使用随 SAP HANA 提供的基于 Python 的 API，创建自己的高可用性和灾难恢复提供程序或钩子。然后，您可以将这些钩子与 SAP HANA 系统复制接管流程集成，来自动执行诸如重启主节点、IP 重定向、DNS 重定向和关闭辅助节点中的 Dev/QA 系统等任务。有关更多信息，请参阅[实施 HA/DR 提供程序](https://help.sap.com/docs/SAP_HANA_PLATFORM/6b94445c94ae495c83a19646e7c3fd56/1367c8fdefaa4808a7485b09815ae0f3.html)。

根据 SAP HANA 数据库的操作系统，您可以实施第三方高可用性集群解决方案。这样可以减少停机时间并自动执行失效转移步骤。以下解决方案包括 Pacemaker 框架以及经过 SAP 认证并且 Amazon 支持的 SAP HANA 钩子。
+ SUSE Linux Enterprise Server（SLES）高可用性扩展（HAE）
+ Red Hat Enterprise Linux (RHEL) for SAP 高可用性

有关更多信息，请参阅 [Amazon 云端 SAP HANA：适用于 SLES 和 RHEL 的高可用性配置指南](https://docs.amazonaws.cn/sap/latest/sap-hana/sap-hana-on-aws-ha-configuration.html)。

## Pacemaker 集群
<a name="pacemaker-hana-hadr"></a>

基于 SAP HANA 系统复制的 SAP HANA 高可用性解决方案，可自动在主 SAP HANA 实例与辅助实例之间执行失效转移。主实例和辅助实例一起配置为 Pacemaker 集群。集群软件位于操作系统层，使用 SAP HANA 钩子与 SAP HANA 数据库集成。集群软件可检测并自动执行失效转移。恢复时间可以是几分钟或更短。有关更多信息，请参阅 [SAP HANA 系统复制](https://docs.amazonaws.cn/sap/latest/sap-hana/hana-ops-ha-dr-hsr.html)。

SUSE 提供的 SAPHanaSR 和 SAPHANASR-Scale-out 解决方案基于 Pacemaker 和 corosync。这些解决方案和适用于 SAP HANA 的专用资源代理随 SLES for SAP 应用程序一起发布。有关如何在 Amazon 云端对 SLES for SAP 应用程序设置高可用性集群的更多信息，请参阅 [SLES 上的高可用性集群配置](https://docs.amazonaws.cn/sap/latest/sap-hana/sap-hana-on-aws-ha-cluster-configuration-on-sles.html)。

RHEL 的高可用性解决方案还提供了 Pacemaker 集群框架和资源代理，用于满足 SAP HANA 系统复制自动化失效转移过程的需求。有关如何在 Amazon 云端对 RHEL 设置高可用性集群的更多信息，请参阅 [RHEL 上的高可用性集群配置](https://docs.amazonaws.cn/sap/latest/sap-hana/sap-hana-on-aws-ha-cluster-configuration-on-rhel.html)。Red Hat 提供了以下资源。
+  [在 Amazon Web Services（Amazon）云端使用 RHEL HA 插件配置 SAP HANA 纵向扩展系统复制](https://access.redhat.com/articles/3569621) 
+  [在 Amazon Web Services（Amazon）云端使用 RHEL HA 插件配置 SAP HANA 横向扩展系统复制](https://access.redhat.com/articles/6093611) 

有关使用 Amazon Launch Wizard for SAP 实现 SAP HANA 系统自动部署的信息，请参阅 [Amazon Launch Wizard for SAP](#lwsap-hana-hadr)。

Pacemaker 集群使用虚拟 IP 地址连接到主 SAP HANA 实例。在失效转移期间，虚拟 IP 地址迁移到辅助实例。然后，系统将辅助实例提升为活动的主实例，用于将流量重定向到其中。Amazon 云端的网络配置使用了重叠 IP 地址。这是一个虚拟 IP 地址，配置为指向主 SAP HANA 实例，无论该实例位于主节点还是辅助节点上。您可以使用 Amazon Transit Gateway 或网络负载均衡器配置重叠 IP 路由。有关更多信息，请参阅[具有重叠 IP 地址路由的 SAP on Amazon 高可用性](https://docs.amazonaws.cn/sap/latest/sap-hana/sap-ha-overlay-ip.html)。

## Amazon Launch Wizard for SAP
<a name="lwsap-hana-hadr"></a>

 Amazon Launch Wizard for SAP 为 Amazon 云端的生产就绪型应用程序提供指导式部署，包括资源大小调整、可自定义部署、应用程序配置和成本估算。这些工具消除了高可用性部署中的复杂性。有关更多信息，请参阅 [Amazon Launch Wizard for SAP](https://docs.amazonaws.cn/launchwizard/latest/userguide/launch-wizard-sap.html)。

 Amazon Launch Wizard for SAP 可以快速跟踪您在 Amazon 云端的 SAP HANA 部署。所需的人工干预极少。Amazon Launch Wizard 支持以下适用于 SAP HANA 的高可用性自动部署模式。
+  **跨可用区 SAP HANA 数据库高可用性设置**：部署 SAP HANA，采用跨两个可用区配置的高可用性。
+  **跨可用区 SAP NetWeaver 系统设置**：在两个可用区之间部署 ASCS/ERS 和 SAP HANA 数据库的 Amazon EC2 实例，并将应用程序服务器的部署分散到两个可用区。
+  **SUSE/RHEL 集群设置**：针对 HANA 高可用性部署上的 SAP HANA 和 NetWeaver，当提供 SAP 软件并指定 SAP 数据库或应用程序软件的部署时，Launch Wizard for SAP 会配置 SUSE/RHEL 集群。对于跨两个可用区的 SAP HANA 数据库，已在 ASCS 和 ERS 节点之间启用集群。参见下图：  
![部署跨两个可用区的 SAP HANA 高可用性配置示例。](http://docs.amazonaws.cn/sap/latest/sap-hana/images/lwsaphanahadr.png)
**注意**  
强烈建议您先验证环境设置，然后再将高可用性集群用于生产。在 Launch Wizard 设置的 SAP HANA 实例上部署应用程序之前，请先运行测试。这些测试可以确保失效转移和失效自动恢复操作正常运行。

下表汇总了 Amazon Launch Wizard for SAP 支持的部署模式。


| 部署模式 | 支持 | 
| --- | --- | 
| 单个 Amazon EC2 实例上的 SAP HANA 数据库 | 是 | 
| 单个 Amazon EC2 实例上的 SAP NetWeaver on SAP HANA 系统 | 是 | 
| 多个 Amazon EC2 实例上的 SAP HANA 数据库 | 是 | 
| 多个 Amazon EC2 实例上的 SAP NetWeaver 系统 | 是 | 
| 跨可用区 SAP HANA 数据库高可用性设置 | 是 | 
| 跨可用区 SAP NetWeaver 系统设置 | 是 | 
| SUSE/RHEL 集群设置 | 是 | 

有关更多信息，请参阅 [Amazon Launch Wizard 支持的部署和功能](https://docs.amazonaws.cn/launchwizard/latest/userguide/launch-wizard-sap-deployments.html)。

## Amazon Application Migration Service 和 Amazon 弹性灾难恢复
<a name="mgn-drs-hana-hadr"></a>

建议使用 Amazon Application Migration Service 将 SAP HANA 数据库迁移到 Amazon 云端。有关更多信息，请参阅[什么是 Amazon Application Migration Service？](https://docs.amazonaws.cn/mgn/latest/ug/what-is-application-migration-service.html)

对于灾难恢复，我们建议使用 Amazon 弹性灾难恢复。此服务使用块级复制将数据从源持续复制到目标。这有助于降低基础设施成本和总拥有成本。此服务提供亚秒级的恢复点目标和几分钟的恢复时间目标。有关更多信息，请参阅[什么是 Amazon 弹性灾难恢复](https://docs.amazonaws.cn/drs/latest/userguide/what-is-drs.html)？

 *Amazon 公司 Cloud Endure 同样提供迁移和灾难恢复服务。Cloud Endure 灾难恢复服务是一种业务连续性产品，适用于 SAP 和非 SAP 工作负载。*