你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Oracle Database@Azure的业务连续性和灾难恢复注意事项
本文扩展了 Azure 登陆区域设计区域中为业务连续性和灾难恢复(BCDR)定义的注意事项和建议。
为工作负荷环境构建可复原体系结构的第一步是确定解决方案的可用性要求。 需要确定不同故障级别的恢复时间目标(RTO)和恢复点目标(RPO)。 RTO 定义了应用程序在事件发生后可以容忍的最大停机时间。 RPO 指定应用程序因灾难而可以容忍的最大数据丢失。 确定解决方案的要求后,可以设计体系结构以满足 RTO 和 RPO。
设计注意事项
将 Oracle Exadata 数据库服务与 Oracle Database@Azure并置在 Azure 数据中心的专用基础结构上,并将数据中心放置在一个 Azure 可用性区域中。 可用性区域特定于订阅。 例如,订阅中的可用性区域 1 可能不表示与不同订阅中的可用性区域 1 相同的物理数据中心。 有关详细信息,请参阅 什么是可用性区域。
Oracle Database@Azure解决方案提供本机 Oracle 技术,例如真实应用程序群集(RAC)和自动化数据防护,以实现高可用性和 DR。
该解决方案包括初始备用数据库的自动 Data Guard 配置,也称为 第一个辅助数据库。 必须手动配置任何额外的 Data Guard 副本。
对于主动-主动环境,请考虑使用 Oracle GoldenGate 实现实时数据集成和复制功能。 此方法有助于确保系统中的高可用性和数据一致性。 此工具支持各种数据库和平台,以便无缝移动和转换数据。 使用 Oracle GoldenGate 可以最大程度地减少迁移和升级期间的停机时间,从而增强 DR 策略。 解决方案中不包括 Oracle GoldenGate,因此可能会产生许可费用。
Oracle Database@Azure解决方案及其核心组件仅限于在其中创建实例的订阅和区域。 该服务不是多区域,并且不会跨越多个区域。 若要实现多区域或多区域复原,可以将新实例部署到目标可用性区域或目标区域。
Oracle Database@Azure使用冗余的 Oracle 云基础结构 (OCI) 对象存储来集成自动数据库备份。 Oracle 数据库自治恢复服务为在 Exadata 上部署的 Oracle 数据库提供保护。
设计建议
请考虑 Oracle Database@Azure的这些 BCDR 注意事项。
跨可用性区域 BCDR
为确保高可用性和 DR 保护免受数据库、数据库群集或可用性区域的故障的影响,请使用 Oracle Database@Azure 上的 Oracle RAC 和位于另一区域中的对称备用数据库。 此配置可帮助实现数据库服务的数据中心复原能力。
为了获得最佳性能,请将依赖于数据库的应用程序服务放置在数据库所在的同一可用性区域中。 如果应用程序服务与数据库服务位于不同的订阅中,则应应用 相应的代码。 使用此属性 availabilityZoneMappings
标识应将服务并置到的物理可用性区域。
可以根据应用程序服务和 RPO 要求,使用 SYNC 传输或具有 ASYNC 传输的最大性能模式在最大可用性模式下配置 Data Guard。
建议对数据完整性和零数据丢失是最重要的因素的环境使用最大可用性模式(SYNC)。
建议对性能至关重要的环境使用“最大性能模式”(ASYNC),并且环境可以容忍某些数据丢失。
跨区域 BCDR
根据应用程序功能和区域之间的网络延迟,在最大性能模式下配置 Data Guard。 有关详细信息,请参阅 Azure 网络延迟测试结果。
跨可用性区域和跨区域 BCDR 操作的组合与 Oracle 最大可用性体系结构参考体系结构的黄金级别保持一致。 Gold 级别体系结构提供保护,防止出现完整的区域故障。
跨可用性区域和跨区域 BCDR 建议侧重于 Oracle Database@Azure 服务的复原能力。 为了帮助确保应用程序服务的复原能力,可以使用 Azure 虚拟机规模集、Azure Site Recovery、Azure Front Door 或其他功能或服务来跨可用性区域或区域实现应用程序服务可用性。
建议使用托管备份并将备份数据存储在 OCI 对象存储中。
其他注意事项
使用基础结构即代码(IaC)部署初始 Oracle Database@Azure 实例和虚拟机群集。
使用 IaC 在 OCI 中部署数据库。 可以使用 IaC 将相同的部署复制到 DR 站点,并最大程度地降低人为错误的风险。
使用测试故障转移和切换回操作来帮助确保它们在真正的灾难场景中工作。 尽可能自动执行故障转移和切换回操作,以最大程度地减少错误。