灾难恢复解决方案比较
全面的灾难恢复解决方案必须能够使客户从主站点的完全故障中恢复。因此,必须将数据传输到二级站点,并且在站点发生故障时,要运行所需的生产 SAP HANA 系统,需要一个完整的基础架构。根据应用程序的可用性要求以及要保护的灾难类型,必须考虑双站点或三站点灾难恢复解决方案。
下图显示了一种典型配置,其中数据会在同一 Azure 区域内同步复制到另一个可用性区域。短距离允许您同步复制数据,以实现零 RPO (通常用于提供 HA )。
此外,当主区域受到影响时,还会将数据异步复制到二级区域,以防止发生灾难。可实现的最小 RPO 取决于数据复制频率,该频率受主区域和二级区域之间可用带宽的限制。典型的最小 RPO 介于 20 分钟到多小时之间。
本文档讨论了双区域灾难恢复解决方案的不同实施选项。
![错误:缺少图形映像](./../media/saphana-dr-anf_image3.png)
SAP HANA 系统复制
SAP HANA 系统复制在数据库层运行。解决方案基于灾难恢复站点上的另一个 SAP HANA 系统,该系统可从主系统接收更改。此二级系统必须与主系统相同。
SAP HANA 系统复制可在以下两种模式之一下运行:
-
将数据预加载到内存中,并在灾难恢复站点上配置一个专用服务器:
-
此服务器专用于 SAP HANA 系统复制二级主机。
-
可以实现极低的 RTO 值,因为数据已加载到内存中,在发生故障转移时不需要启动数据库。
-
-
在灾难恢复站点的内存和共享服务器中未预加载数据的情况下:
-
此服务器作为 SAP HANA System Replication 二级系统和开发 / 测试系统共享。
-
RTO 主要取决于启动数据库并将数据加载到内存所需的时间。
-
有关所有配置选项和复制场景的完整问题描述,请参见 "《 SAP HANA 管理指南》"。
下图显示了使用 SAP HANA 系统复制的双区域灾难恢复解决方案的设置。在同一 Azure 区域,但在不同的可用性区域,本地 HA 会使用预加载到内存中的数据进行同步复制。为远程灾难恢复区域配置了不预加载数据的异步复制。
下图显示了 SAP HANA 系统复制。
![错误:缺少图形映像](./../media/saphana-dr-anf_image4.png)
将数据预加载到内存中的 SAP HANA 系统复制
只有在将数据预加载到内存中的 SAP HANA 系统复制功能下, SAP HANA 才能实现极低的 RTO 值。在灾难恢复站点使用专用二级服务器运行 SAP HANA 系统复制时, RTO 值大约可以为 1 分钟或更短。复制的数据会在二级系统上接收并预加载到内存中。由于故障转移时间较短, SAP HANA 系统复制也经常用于近乎零停机的维护操作,例如 HANA 软件升级。
通常, SAP HANA 系统复制配置为在选择数据预加载时同步复制。同步复制支持的最大距离在 100 公里范围内。
SAP 系统复制,而不将数据预加载到内存中
对于不太严格的 RTO 要求,您可以在不预加载数据的情况下使用 SAP HANA 系统复制。在此操作模式下,灾难恢复区域的数据不会加载到内存中。灾难恢复区域的服务器仍用于处理运行所有所需 SAP HANA 进程的 SAP HANA 系统复制。但是,服务器的大部分内存可用于运行其他服务,例如 SAP HANA 开发 / 测试系统。
发生灾难时,必须关闭开发 / 测试系统,启动故障转移,并将数据加载到内存中。这种冷备用方法的 RTO 取决于数据库大小以及加载行和列存储期间的读取吞吐量。假设数据的读取吞吐量为 1000 Mbps ,则加载 1 TB 数据大约需要 18 分钟。
使用 ANF 跨区域复制实现 SAP HANA 灾难恢复
ANF 跨区域复制内置在 ANF 中,作为使用异步数据复制的灾难恢复解决方案。anf 跨区域复制通过主 Azure 区域和二级 Azure 区域上的两个 ANF 卷之间的数据保护关系进行配置。如果跨区域复制使用高效的块增量复制来更新二级卷。可以在复制配置期间定义更新计划。
下图显示了一个使用 ANF 跨区域复制的双区域灾难恢复解决方案示例。在本示例中, HANA 系统通过主区域中的 HANA 系统复制进行保护,如上一章所述。使用 ANF 跨区域复制功能复制到二级区域。RPO 由复制计划和复制选项定义。
RTO 主要取决于在灾难恢复站点启动 HANA 数据库以及将数据加载到内存所需的时间。假设数据的读取吞吐量为 1000 MB/ 秒,则加载 1 TB 数据大约需要 18 分钟。根据复制配置的不同,还需要进行正向恢复,并会增加总 RTO 值。
有关不同配置选项的更多详细信息,请参见第节 "使用 SAP HANA 跨区域复制的配置选项"。
正常运行期间,灾难恢复站点上的服务器可用作开发 / 测试系统。发生灾难时,必须关闭开发 / 测试系统并将其作为灾难恢复生产服务器启动。
通过 ANF 跨区域复制,您可以在不影响 RPO 和 RTO 的情况下测试灾难恢复工作流。这是通过创建卷克隆并将其附加到灾难恢复测试服务器来实现的。
![错误:缺少图形映像](./../media/saphana-dr-anf_image5.png)
灾难恢复解决方案摘要
下表对本节中讨论的灾难恢复解决方案进行了比较,并重点介绍了最重要的指标。
主要调查结果如下:
-
如果需要极低的 RTO ,则只能选择预加载到内存中的 SAP HANA 系统复制。
-
灾难恢复站点需要一台专用服务器来接收复制的数据并将数据加载到内存中。
-
-
此外,还需要对数据库外部的数据(例如共享文件,接口等)进行存储复制。
-
如果 RTO 或 RPO 要求不太严格,则也可以使用 ANF 跨区域复制来:
-
将数据库和非数据库数据复制结合使用。
-
涵盖其他使用情形,例如灾难恢复测试和开发 / 测试更新。
-
通过存储复制,可以在正常操作期间将灾难恢复站点上的服务器用作 QA 或测试系统。
-
-
将 SAP HANA 系统复制作为高可用性解决方案与 RPO=0 以及远程存储复制相结合,对于满足不同的要求是有意义的。
下表对灾难恢复解决方案进行了比较。
存储复制 | SAP HANA 系统复制 | ||
---|---|---|---|
* 跨区域复制 * |
* 具有数据预加载 * |
* 无数据预加载 * |
|
RTO |
低到中,具体取决于数据库启动时间和正向恢复 |
非常低 |
低到中,具体取决于数据库启动时间 |
RPO |
RPO > 20 分钟异步复制 |
RPO > 20 分钟异步复制 RPO=0 同步复制 |
RPO > 20 分钟异步复制 RPO=0 同步复制 |
灾难恢复站点的服务器可用于开发 / 测试 |
是的。 |
否 |
是的。 |
复制非数据库数据 |
是的。 |
否 |
否 |
灾难恢复数据可用于刷新开发 / 测试系统 |
是的。 |
否 |
否 |
在不影响 RTO 和 RPO 的情况下执行灾难恢复测试 |
是的。 |
否 |
否 |