你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure NetApp 文件的 Oracle Database

Azure NetApp 文件
Azure 虚拟机
Azure 虚拟网络

要求最高的 Oracle Database 工作负载不仅需要非常高的 I/O 容量, 也需要对存储的低延迟访问。 本文档介绍一种可缩放、高带宽、低延迟的解决方案,用于在 Azure 虚拟机 (VM) 上运行 Oracle 数据库工作负载,并通过网络文件系统 (NFS) 协议进行共享文件访问。 体系结构使用 Azure NetApp 文件,这是一项第一方共享文件存储服务。

好处

Azure NetApp 文件具有以下优势:

  • 灵活性:可以根据需求扩大或减少容量和吞吐量,使配置与实际业务需求保持一致,而不会中断服务。
  • 可伸缩性:使用多个存储卷并按需添加卷,以根据需要扩展容量和吞吐量
  • 可用性:卷构建在由 ONTAP 提供支持的高可用性容错裸机机群上,具有内置的复制功能,可实现业务连续性和灾难恢复。
  • 合并:在 Azure VM 上运行多个较小的数据库实例,同时在多个存储卷上保持数据库和日志文件的隔离。
  • 数据保护:节省空间的快照副本提供实时数据库的应用程序一致性时间点副本,快照副本可以根据需要由 Azure NetApp 文件备份或第三方解决方案进行备份。
  • 克隆:可以克隆快照,为测试和开发提供当前数据副本。
  • 存储吞吐量:网络存储受到比托管磁盘更高的吞吐量限制。 因此,在托管磁盘存储方面你可以使用较小的 VM SKU,这并不会降低性能。 这种方法可以显著降低成本。

可能的用例

此解决方案有许多用途:

  • 运行需要高可用性 (HA) 并对性能具有高标准的新 Oracle Database 实例。
  • 将高性能、高可用性的 Oracle Database 实例从本地迁移到 Azure 虚拟机。
  • 将 Oracle Exadata 系统迁移到 Azure。
  • 将多个小型 Oracle 实例合并到具有一个或多个存储卷的单个 Azure VM 上,以实现单独的隔离和管理。
  • 克隆企业级 Oracle Database 系统,将其用于测试环境和开发环境。 此解决方案尤其适用于需要高级数据管理功能的用例。 可以通过利用快速且节省空间的快照来帮助满足严格的数据保护服务级别协议 (SLA)。
  • 实现使用 NFS 共享存储的 Oracle Pacemaker 群集。
  • 部署 SAP AnyDB 或 Oracle 19c。

体系结构

可以在具有一个或多个存储卷的 Azure VM 上运行中小型 Oracle 数据库,以便存储数据库文件、重做日志和(可选)备份卷。

展示部署在 Azure NetApp 文件上的 Oracle VM 的示意图。

部署多个数据卷,以便将多个较小的 Oracle 实例合并到单个 Azure VM。

在 Azure VM 上整合 Oracle 数据库的示意图。

准备 Azure NetApp 文件服务

创建所需容量和服务级别的 Azure NetApp 文件容量池。 请查看设置 Azure NetApp 文件快速入门

如果要将现有 Oracle 数据库从本地迁移到 Azure,则可以利用 AWR 报告来获取当前吞吐量统计数据,以确定 Azure NetApp 文件容量池和卷的大小。 通过 Atroposs 服务处理 AWR 报告,可以获得池和卷大小的建议。 有关如何使用该服务的详细信息,请联系 Azure 上的 Oracle 专家。

容量池中卷的可用吞吐量由所选容量池的大小和服务级别(标准、高级或超高性能)定义。 自动 QoS 容量池为与卷大小直接相关的卷分配吞吐量。 还可以独立于卷的大小为卷分配吞吐量,为此可以将容量池配置为使用手动 QoS

数据保护

为了防止不太可能出现区域性故障,请使用 Oracle Data Guard 将数据库文件和重做日志复制到区域中的备用区域。

复制的 Oracle 工作负载示意图。

伸缩性

通过为数据库文件使用多个存储卷,可以实现额外的可伸缩性和灵活性。 可以使用 Oracle 应用程序卷组部署卷,将数据库文件扩展到 8 个卷。 这可确保卷在 Azure 基础结构中的最佳位置布局,并使 VM 的访问延迟尽可能低。

Oracle 部署的应用程序卷组示意图。

组件

此解决方案使用以下组件:

  • Azure NetApp 文件是一种第一方 Azure 文件存储系统,可在 Azure 中迁移和运行基于文件的应用程序,而无需更改代码。 它由 Microsoft 和 NetApp(Microsoft 合作伙伴)开发。
  • 虚拟机是一种基础结构即服务 (IaaS) 产品/服务。 可以使用虚拟机来部署可按需缩放的计算资源。 利用虚拟机可以灵活地实现虚拟化,但没有考虑物理硬件的维护需求。 此解决方案将 Linux VM 与 Oracle Database 软件结合使用
  • Azure 虚拟网络是一项网络服务,用于管理 Azure 中的虚拟专用网络。 借助虚拟网络,Azure 资源(如 VM)能够以安全方式相互通信,也可以与 Internet 和本地网络通信。 Azure 虚拟网络类似于一个在数据中心运行的传统网络。 此外,Azure 虚拟网络还提供了 Azure 基础结构的可伸缩性、可用性、隔离等其他权益。
  • Oracle Database 是一个多模型数据库管理系统。 它支持多种数据类型和工作负载。
    • dNFS 客户端可优化 Oracle 和 NFS 服务器之间的 I/O 路径。 因此,它提供的性能高于传统 NFS 客户端。

备选方法

此解决方案使用 Oracle Data Guard (ODG) 进行灾难恢复 (DR),并使用快照进行本地复制。 存在一些选项,如以下各节所述。

跨区域复制

跨区域复制在 Azure 中提供跨区域的高效灾难恢复。 跨区域复制使用基于存储的复制, 不使用 VM 资源。 有关详细信息,请参阅为 Azure NetApp 文件创建卷复制

跨区域复制

跨可用性区域复制在 Azure 中的区域之间提供高效的 HA。 跨可用性区域复制使用相同的高效基于块的复制,最小更新间隔为 10 分钟。 这可用于复制数据库文件,而重做日志则使用 Oracle Data Guard 进行复制。 有关详细信息,请参阅 Azure NetApp 文件卷的跨可用性区域复制

可用性集和可用性区域

Azure 虚拟机上的 ODG 的工作方式类似于本地系统中的 ODG。 但此产品依赖于其基础体系结构。 如果在 Azure VM 上运行 ODG,还应考虑使用以下某个选项来提高冗余和可用性:

  • 将 Oracle VM 放在同一个可用性集中。 此方法可在发生以下事件期间提供保护:

    • 数据中心内的设备故障导致中断。 可用性集中的 VM 不共享资源。
    • 更新。 可用性集中的 VM 在不同时间进行更新。
  • 将 Oracle VM 放在不同的可用性区域中。 此方法可在整个数据中心发生故障时提供保护。 每个区域代表一个区域中的一组数据中心。 如果将资源放在不同的可用性区域中,则数据中心级别的中断不会使所有 VM 脱机。

可以只选择下列选项之一。 Azure VM 不能同时加入可用性集和可用性区域。 每个选项都有各自的优点:

  • 可用性区域提供的可用性高于可用性集。 有关它们的比较,请参阅虚拟机的 SLA
  • 可以将位于同一个可用性集的 VM 放在邻近放置组中。 此配置通过保证 VM 彼此靠近,来最大程度降低 VM 之间的网络延迟。 相反,放在不同可用性区域中的 VM 之间的网络延迟更高, 从而导致在主要副本和次要副本之间同步数据需要更长时间。 因此,主要副本可能会遇到延迟。 此外,在计划外故障转移期间,数据丢失的可能性会增大。

选择解决方案后,在承受负载的情况下测试它。 确保它满足性能和可用性的 SLA。

主要优点

下图显示了将 Azure NetApp 文件与 Oracle Database 配合使用的好处。

列出 Azure NetApp 文件的功能和优势的体系结构示意图。该示意图还显示使用此服务的系统的不同层。

简单可靠的服务

Azure NetApp 文件是一种简单易用的 Azure 本机服务,在 Azure 数据中心环境中运行。 像其他 Azure 存储选项一样,你可以预配、使用和缩放 Azure NetApp 文件。 Azure NetApp 文件使用 NetApp 数据管理软件 ONTAP 提供的各种可靠性功能。 借助此软件,可以快速可靠地为 Oracle Database 工作负载和其他企业应用程序工作负载预配企业级 NFS 卷。

高性能系统

Azure NetApp 文件使用一组裸机的全闪存储。 除了使用共享且高度可缩放的存储之外,Azure NetApp 文件还提供低于 1 毫秒的延迟。 这些因素使得此服务非常适合使用 NFS 协议通过网络运行 Oracle Database 工作负载。

Azure DCsv2 系列 VM 可以使用高性能的全闪存 NetApp 存储系统。 这些系统还将集成到 Azure 软件定义的网络 (SDN) 和 Azure 资源管理器框架中。 因此,你将获得与本地解决方案相当的高带宽、低延迟的共享存储。 此体系结构的性能可满足最苛刻的业务关键企业工作负载的要求。 有关 Azure NetApp 文件的性能优势的详细信息,请参阅将 Azure NetApp 文件与 Oracle Database 配合使用的好处

Azure NetApp 文件提供按需可伸缩性。 如此,你可以扩大或缩小部署,以优化每个工作负载的配置。

企业级数据管理

此解决方案可以处理需要高级数据管理功能的工作负载。 ONTAP 提供了此领域在业界无与伦比的功能:

  • 节省空间的即时克隆可改善开发环境和测试环境。

  • 按需容量和性能缩放可以提高资源的使用效率。

  • 快照提供数据库一致性点,并具有以下优势:

    • 它们可高效存储。 只需有限的容量即可创建快照。
    • 支持快速创建、复制、还原或克隆快照。 因此,它们提供备份和恢复解决方案,以实现进取的恢复时间目标 (RTO) 和恢复点目标 (RPO) SLA。
    • 它们不会影响卷性能。
    • 它们提供可伸缩性。 支持频繁创建快照,以及同时存储多个快照。

混合 DR

ODG 与 Azure NetApp 文件相结合可为此体系结构提供 DR。 这些 DR 解决方案适用于云和混合系统。 它们的计划跨多个区域以及本地数据中心工作。

注意事项

此解决方案需注意以下事项:

可用性

对于 Azure NetApp 文件:

  • 有关此服务的可用性保证,请参阅 Azure NetApp 文件的 SLA
  • 正如企业级数据管理中所讨论的那样,可以在备份和恢复解决方案中使用快照。 使用 Oracle 热备份模式和 Azure NetApp 文件 API 来协调数据库一致性快照。

在 Azure 中使用 Oracle Database 时,请为解决方案实现 HA 和 DR,以避免停机:

  • 使用 ODG
  • 在一个虚拟机上运行数据库。
  • 部署辅助 VM,但仅在其上安装二进制文件。
  • 将两个 VM 放在同一个虚拟网络中。 这样,它们可以通过专用持久性 IP 地址相互访问。

显示 Oracle Data Guard 如何保护包含 Azure NetApp 文件和 Oracle Database 的虚拟网络中的数据的体系结构示意图。

伸缩性

根据高性能系统部分中所讨论的内容,Azure NetApp 文件提供内置的可伸缩性。

安全性

Azure NetApp 文件以多种方式保护数据。 有关固有保护、加密、策略规则、基于角色的访问控制功能和活动日志的信息,请参阅安全性常见问题解答

成本优化

使用 Azure NetApp 文件(而不是块存储)可以降低成本:

  • 可以使配置经济高效。 传统的本地配置会根据最高工作负载要求调整大小。 因此,这些配置在达到最大使用量的情况下最经济高效。 相比之下,Azure NetApp 文件部署具有可伸缩性。 可以针对当前工作负载要求优化配置,以减少支出。

  • 可以使用较小的 VM:

    • Azure NetApp 文件提供低延迟的存储访问。 使用较小的 VM 获得的性能与更大的 VM 通过超级磁盘存储提供的性能相同。
    • 云资源通常会对 I/O 操作设限。 这种做法可防止资源耗尽或意外中断导致的突然变慢。 因此,VM 具有磁盘吞吐量限制和网络带宽限制。 网络限制通常高于磁盘吞吐量限制。 使用网络连接存储时,只有网络带宽限制是相关的,并且仅适用于数据流出。 换句话说,VM 级别磁盘 I/O 限制不会影响 Azure NetApp 文件。 由于这些因素,网络连接存储可以获得比磁盘 I/O 更高的性能。 即使在较小的 VM 上运行 Azure NetApp 文件也是如此。

    与较大的 VM 相比,较小的 VM 还具有以下定价优势:

    • 它们的成本更低。
    • 它们的 Oracle Database 许可证成本更低,尤其是在使用较小的受约束代码 SKU 时。
    • 网络连接的存储没有 I/O 成本组件。

这些因素使得 Azure NetApp 文件的成本比磁盘存储解决方案更低。

部署此方案

  • 有关介绍如何在 Azure VM 上部署使用 Azure NetApp 文件的 Oracle Database 的资源,请参阅使用 Azure NetApp 文件的解决方案体系结构

  • 有关如何部署和访问 Azure NetApp 文件卷的信息,请参阅 Azure NetApp 文件文档

  • 请考虑数据库大小:

    • 对于小型数据库,可以将所有组件(例如数据文件、重做日志、存档日志和控制文件)部署到单个卷中。 这种简化的配置易于管理。
    • 对于大型数据库,配置多个卷会更高效。 可以使用自动或手动服务质量 (QoS) 卷。 这些卷类型提供对性能要求的更精细控制。

作者

本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。

主要作者:

后续步骤

使用 Azure NetApp 文件的完全可部署体系结构: