针对高可用性进行设计 - 在 AWS 上运行 Oracle Database 的最佳实践

针对高可用性进行设计

以下选项采用不同的方法来实现 Oracle 数据库的高可用性。

Amazon RDS

Amazon RDS 的多可用区功能通过同步复制在多个可用区中运行两个数据库,从而创建具有自动故障转移功能的高可用性环境。Amazon RDS 具有故障转移事件检测功能,并在发生故障转移事件时启动自动故障转移。还可以通过 Amazon RDS API 发起手动故障转移。Amazon RDS 提供的 SLA 的每月正常运行时间为 99.95%。此处提供了有关 Amazon RDS 多可用区功能的详细幕后博客文章。Amazon RDS for Oracle 的另一个选项是使用 Oracle Active Data Guard。客户应该对于 Oracle Active Data Guard 选项拥有自己的许可证。

Amazon RDS for Oracle 使用 Oracle Active Data Guard 支持只读副本。多可用区和 Oracle Active Data Guard 选项都在同一个 AWS 区域内。Amazon RDS for Oracle 通过 Oracle Active Data Guard 支持跨区域只读副本。借助 Amazon RDS for Oracle,可以轻松地在与主数据库实例不同的 AWS 区域中创建物理备用数据库实例。它全面管理 Active Data Guard 的配置,并通过安全网络连接在主数据库实例与其跨 AWS 区域运行的副本之间复制数据。

Amazon RDS for Oracle 还与 Oracle GoldenGate 兼容。您可以选择使用 Oracle GoldenGate 复制整个数据库或少量表和架构。Oracle GoldenGate 安装在 EC2 实例的枢纽架构中,并可以远程访问 Amazon RDS for Oracle 实例。Oracle GoldenGate 枢纽可以将数据复制到位于同一个 AWS 区域内的另一个 Amazon RDS for Oracle 实例或 Amazon EC2(或 VMware Cloud on AWS)中的 Oracle 数据库。对于跨区域实例,建议的方法是先复制到另一个 AWS 区域内的 Oracle GoldenGate 枢纽。

Amazon EC2

Amazon EC2 上的 Oracle 数据库也支持 Oracle Data Guard、Oracle Active DataGuard 和 Oracle GoldenGate 选项。AWS Marketplace 中提供的第三方解决方案也支持复制 Oracle 数据库。Oracle 和第三方解决方案都可用于在 AWS 区域内以及跨 AWS 区域复制数据库。也可以从客户的本地部署数据中心复制 Oracle 数据库,或将其复制到客户的本地部署数据中心。AWS Database Migration Service 还可用于复制所有表或表的子集。

VMware Cloud on AWS

由于 Oracle 数据库在 VMware Cloud on AWS 中是自行管理的,因此,包含基于第三方代理的复制的所有选项均可用。要跨 AWS 区域 复制数据库或向客户的本地部署数据中心复制数据库,可以使用 Oracle Data Guard 或 Oracle GoldenGate。VMware 原生技术(例如 vMotion 或混合云扩展 (HCX))可用于在本地部署数据中心与 VMware Cloud on AWS 之间迁移数据库。对于涉及多层应用程序和数据库虚拟机的大型部署,可以考虑使用 VMware Site Recovery Manager (SRM) 在站点级别编排复制和迁移。

Oracle Real Application Cluster (RAC)

VMware Cloud on AWS 具有多播支持和共享存储功能。Oracle RAC 可以安装在 VMware Cloud on AWS 上。VMware Cloud on AWS 中的每个软件定义数据中心 (SDDC) 可以在至少 3 台 AWS 裸机主机和最多 16 台 AWS 裸机主机上运行。VMware Cloud on AWS 可以跨 2 个不同的 AWS 可用区以延伸集群的方式运行 SDDC。这还将允许 Oracle RAC 在扩展集群模式下运行,从而不再需要单独的 Oracle Data Guard 设置。

VMware Cloud on AWS vSAN 支持 Oracle ASM。Oracle ASM 磁盘组文件是通过 VMDK 创建的。Oracle ASM 磁盘组用于数据文件和日志文件的建议分配单位应为 4 MB。创建 ASM 磁盘组时允许使用此选项,以后无法修改。为了获得最佳性能,VMDK 应启用多写入器标志,并针对 Eager Zero Thick 进行预置。有关 Oracle RAC 的更多信息,请参阅 VMware Cloud on AWS 上的 Oracle RAC 的参考架构图

FlashGrid Cluster

FlashGrid Cluster 是一款虚拟云设备,可提供在 Amazon EC2 上运行 Oracle RAC 所需的所有基础设施功能。这包括多播支持和共享存储。为了最大限度地延长数据库正常运行时间 SLA,FlashGrid Cluster 允许将 Oracle RAC 节点分布在不同的可用区。FlashGrid Cluster 以 AWS CloudFormation 模板的形式交付,可完全自动部署所有基础设施组件和 Oracle 软件。FlashGrid 软件和支持费用通过 AWS Marketplace 收取。此白皮书中提供了 FlashGrid 架构的详细信息。要使用 Oracle RAC 启动 FlashGrid Cluster,请访问产品页面