确定您的部署策略

要保护应用免受灾难,您必须根据 RTO 和 RPO 要求确定部署策略。

具有单个可用性域的区域

在具有单个可用性域的区域中,您可以跨多个容错域部署应用,以防出现意外的硬件故障或计划内故障以进行硬件维护。

故障域是一组硬件和基础设施,与同一可用性域中的其他容错域不同。每个可用性域都有三个故障域。通过正确使用容错域,可以提高在 Oracle Cloud Infrastructure 上运行的应用程序的可用性。

应用的体系结构决定了您是应该分离应用实例,还是使用容错域将其分组。
  • 方案 1:高可用性应用程序体系结构

    在此方案中,您有一个高可用性的应用程序,例如两个 Web 服务器和一个群集数据库。将一个 Web 服务器和一个数据库节点组合到一个容错域中,并将另一对的另一半组合到另一个容错域中。此配置可确保任何容错域发生故障不会导致您的应用程序出现故障。

  • 方案 2:单个 Web 服务器和数据库实例体系结构

    在此方案中,您的应用程序体系结构不是高可用性,例如,您有一个 Web 服务器和一个数据库实例。将 Web 服务器和数据库实例放在同一容错域中。此配置可确保您的应用仅受到该单个容错域故障的影响。

不过,如果整个可用性域出现故障,此部署不提供保护。要在具有一个可用性域的区域中实现有效的 DR 解决方案,我们建议向远程区域进行复制。

例如,您可以将块存储卷备份到不同于主操作区域的远程区域。通过定期将块存储卷备份复制到其他区域,可以在灾难影响主区域时在远程区域中重建应用及其关联数据,而不会造成重大数据丢失。新实例可以恢复和访问远程区域中的卷备份,以恢复新区域中的应用功能。

后面是 cross-region-backup.png 的说明
插图 cross-region-backup.png 的说明

具有多个可用性域的区域

如果您的区域具有多个可用性域,您可以在多个可用性域中部署应用,以防可用性域中出现故障。

我们建议使用 Oracle Cloud Infrastructure Load Balancing 服务,尽可能减少应用的停机时间。如果您的应用堆栈包含数据库组件,我们建议将备用数据库系统部署在与主数据库不同的可用性域中,并在它们之间设置数据卫士。我们还建议将数据库备份设置到 Oracle Cloud Infrastructure Object Storage 以进一步保护您的应用数据。

下面是单 region-3tier.png 的说明
插图 single-region-3tier.png 的说明

请注意,如果整个区域发生故障,单区域部署并不能提供全面保护。

跨区域部署

对于需要区域灾难恢复保护的任务关键型应用,您可以使用跨区域 DR 拓扑。Oracle Cloud Infrastructure 在云区域之间提供强健的高性能骨干。您可以使用远程 VCN 对等连接在不同区域中的不同 VCN 之间建立安全可靠的连接。

例如,要实现跨区域数据保护,可以使用 rsync 将文件系统或快照数据异步复制到其他区域。下面是 cross-region-rsync.png 的说明
插图 cross-region-rsync.png 的说明

您可以使用 Oracle Cloud Infrastructure 上 Oracle Database 的现成功能来完成跨区域数据保护。例如,假设您希望在 Oracle Cloud Infrastructure 上部署具有 Oracle Database 的三层应用程序,如下图所示:下面是 dual-region-3tier.png 的说明
插图 dual-region-3tier.png 的说明

注意:

该体系结构显示多个可用性域 (Availability Domain,AD)。对于具有单个 AD 的区域,请调整体系结构以在 AD 中的容错域之间分配资源。

每个 Web 层节点都与其中一个数据库节点通信。Oracle Cloud Infrastructure 支持 RAC 和 Exadata,因此即使在单个可用性域中也能实现高可用性。如果数据库发生本地化故障,活动数据卫士将用于同步到区域内其他可用性域中的等效数据库或跨区域。