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

使用 Azure NetApp 文件的 Azure 虚拟机上的 SQL Server

Azure NetApp 文件
虚拟机上的 Azure SQL Server
Azure 虚拟机
Azure 虚拟网络

要求最高的 SQL Server 数据库工作负载负载不仅需要非常高的 I/O 容量, 也需要对存储的低延迟访问。 本文档介绍如何为 SQL Server 工作负载实现高带宽、低延迟的解决方案。

此解决方案通过服务器消息块 (SMB) 协议提供共享文件访问。 该体系结构在 Azure 虚拟机上使用 SQL Server。 它还使用 Azure NetApp 文件,这是一个共享文件存储服务。 使用 Azure NetApp 文件的好处是:

  • 在虚拟机 (VM) 级别上应用的磁盘 I/O 访问速率限制不会影响 Azure NetApp 文件。 因此,在磁盘存储方面你可以使用较小的 VM,这并不会降低性能。 这一方法可显著降低成本。
  • Azure NetApp 文件提供了灵活性。 你可以根据需要扩大或缩小部署,使配置更为经济高效。

可能的用例

此解决方案有许多用途:

  • 运行需要高可用性 (HA) 并符合高性能标准的新 SQL Server 实例。
  • 将高性能、高可用性的 SQL Server 实例从本地基础结构迁移到 Azure 虚拟机。
  • 使用可用性集和 SMB 共享存储部署经济高效的企业级高可用性 SQL Server Always On 故障转移群集实例。
  • 使用 SQL Server Always On 可用性组为混合系统或 Azure 系统部署企业级灾难恢复 (DR) 体系结构。
  • 克隆企业级 SQL Server 系统,将其用于测试和开发环境。 此解决方案尤其适用于需要高级数据管理功能的用例。 它可帮助这些用例满足严格的数据保护服务级别协议 (SLA)。

体系结构

显示 SQL Server 和 Azure NetApp 文件如何在同一虚拟网络的不同子网中工作并使用 SMB 3 进行通信的体系结构示意图。

标记为“SQL 资源组”的大矩形囊括了关系图的大部分内容。 在大矩形中还有另一个矩形,标记为“SQL 虚拟网络”。 该矩形包含两个并排的较小矩形,一个标记为“SQL 子网”,另一个标记为“Azure NetApp 文件子网”。 “SQL 子网”矩形包含的图标表示 Azure 虚拟机上的 SQL Server。 “Azure NetApp 文件子网”矩形包含的图标分别表示 Azure NetApp 文件和数据库文件。 标记为 S M B 3 的箭头连接 2 个子网矩形。 彩色指示条表示数据库文件系统中的 SQL 数据需要高性能。 例如,数据库日志文件具有中等性能要求。

下载此体系结构的 SVG 图

工作流

这些组件的交互方式如下:

  • 此体系结构在 Azure 虚拟机上使用 SQL Server。 SQL Server 使用此 Azure 服务在 SQL 子网中的 Azure VM 上运行。
  • 在 Azure NetApp 文件子网中,Azure NetApp 文件为 SMB 3 提供对数据库和日志文件的访问权限。
  • Azure NetApp 文件启用了 SMB 连续可用性共享选项。 此功能可以实现 SMB 透明故障转移,因此你可以在 Azure NetApp 文件上以无中断方式查看 SQL 服务器部署的服务维护事件。

组件

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

  • 借助 Azure NetApp 文件,无需更改代码即可轻松迁移和运行基于文件的应用程序。 这项共享文件存储服务由 Microsoft 与 Microsoft 合作伙伴 NetApp 联合开发。
  • 虚拟机是一种基础结构即服务 (IaaS) 产品/服务。 可以使用虚拟机来部署可按需缩放的计算资源。 利用虚拟机可以灵活地实现虚拟化,但没有考虑物理硬件的维护需求。 此解决方案使用 Windows VM。
  • Azure 虚拟机上的 SQL Server提供了一种方法,可将 SQL Server 工作负载迁移到具有 100% 的代码兼容性的云中。 作为 Azure SQL 系列的一部分,此数据库解决方案在 VM 上运行 SQL Server。 Azure 虚拟机上的 SQL Server 不仅能提供 Azure 的灵活性和混合连接。 此外,此解决方案还能提供 SQL Server 的性能、安全性和分析功能。 你可以继续使用当前的 SQL Server 版本, 也可以访问最新的 SQL Server 更新和版本。
  • Azure 虚拟网络是一项网络服务,用于管理 Azure 中的虚拟专用网络。 借助虚拟网络,Azure 资源(如 VM)能够以安全方式相互通信,也可以与 Internet 和本地网络通信。 Azure 虚拟网络类似于一个在数据中心运行的传统网络。 此外,Azure 虚拟网络还提供了 Azure 基础结构的可伸缩性、可用性、隔离等其他权益。

备选方法

此解决方案使用 Always On 可用性组进行灾难恢复。 作为替代方法,跨区域复制在 Azure 中提供跨区域的高效灾难恢复。 跨区域复制使用基于存储的复制, 不使用 VM 资源。 有关详细信息,请参阅为 Azure NetApp 文件创建卷复制

方案详细信息

主要优点

此图显示了通过 Azure NetApp 文件使用 SQL Server 的好处。

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

此图包含两个部分。 左侧的四个框列出 Azure NetApp 文件的功能和优势。 右侧包含框。 一个框标记为“生产”,另一个框标记为“大规模测试和大规模开发”。 二者都包含数据库和 V M 的图标。 第三个框标记为“存储层”。 它包含表示数据库数据和 Azure NetApp 文件的图标。 彩色指示条表示数据库数据和日志需要高性能。 克隆的数据库数据和日志具有中高级别的要求。 克隆副本的需求较低,这一点与所有数据库二进制文件都相同。

下载此体系结构的 SVG 图

简单可靠的服务

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

高性能系统

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

Azure DCsv2 系列 VM 具有内置的高性能、全闪存 ONTAP 企业系统。 这些系统还集成到 Azure 软件定义的网络 (SDN) 和 Azure 资源管理器框架中。 因此,你将获得与本地解决方案相当的高带宽、低延迟的共享存储。 此体系结构的性能可满足最苛刻的业务关键企业工作负载的要求。

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

根据定价说明,使用 Azure NetApp 文件(而不是块存储)可降低 SQL Server 总拥有成本 (TCO)。

企业级数据管理

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

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

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

  • 快照提供数据库一致性点。 你可以使用 NetApp SQL Server 数据库静默工具创建与应用程序一致的快照。 它们提供以下权益:

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

混合 DR

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

注意事项

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

可用性

对于 Azure NetApp 文件:

对于 Azure 虚拟机上的 SQL Server,请实施 HA 和 DR 解决方案,以避免停机:

  • 使用 Always On 故障转移群集实例和两个单独 VM 上的 2 个数据库。

  • 将两个 VM 放在同一个虚拟网络中。 这样,它们可以通过专用持久性 IP 地址相互访问。

  • 将 VM 放在同一个可用性集中。 然后,Azure 可以将它们放在单独的容错域和升级域中。

  • 对于异地冗余:

显示 SQL Server Always On 故障转移群集实例如何保护包含 Azure NetApp 文件的虚拟网络中的数据的体系结构示意图。

标记为“SQL 资源组”的大矩形囊括了关系图的大部分内容。 在大矩形中还有另一个矩形,标记为“SQL 虚拟网络”。 该矩形包含 2 个更小的矩形,其中一个标记为“SQL 子网”,另一个标记为“Azure NetApp 文件子网”。 “SQL 子网”矩形包含的图标分别表示 Azure 虚拟机上的 SQL Server 和 SQL Server Always On 故障转移群集实例。 “Azure NetApp 文件子网”矩形包含的图标分别表示 Azure NetApp 文件和数据库文件。 标记为 S M B 3 的箭头连接 2 个子网矩形。 彩色指示条表示数据库文件系统中的 SQL 数据需要高性能。 例如,数据库日志文件具有中等性能要求。

下载此体系结构的 SVG 图

可伸缩性

安全性

  • Azure NetApp 文件以多种方式保护数据。 有关固有保护、加密、策略规则、基于角色的访问控制功能和活动日志的信息,请参阅安全性常见问题解答
  • Azure 虚拟机上的 SQL Server 也可以保护数据。 有关加密、访问控制、漏洞评估、安全警报和其他功能的信息,请参阅 Azure 虚拟机上 SQL Server 安全注意事项

成本优化

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

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

  • 可以使用较小的 VM:

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

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

    • 它们的成本更低。
    • 它们具有较低的 SQL Server 许可成本。
    • 网络连接的存储没有 I/O 成本组件。

这些因素使得 Azure NetApp 文件的成本比磁盘存储解决方案更低。 要详细了解 TCO 分析,请参阅使用 Azure NetApp 文件进行 SQL Server 部署的好处

部署此方案

  • 有关如何在 Azure NetApp 文件部署 SQL Server 的资源,请参阅使用 Azure NetApp 文件的解决方案体系结构

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

  • 请考虑数据库大小:

    • 对于小型数据库,可以将数据库和日志文件部署到单个卷中。 这种简化的配置易于管理。
    • 对于大型数据库,配置多个卷会更高效。 还可以使用手动服务质量 (QoS) 容量池。 此类型提供对性能要求的更精细控制。
  • 使用 SMB 文件共享存储安装 SQL Server。 SQL Server 2012 (11.x) 及更高版本支持将 SMB 文件服务器作为存储选项。 数据库引擎用户数据库和系统数据库(如 Master、Model、MSDB 和 TempDB)均提供这种支持。 这一点适用于 SQL Server 独立和 SQL Server 故障转移群集安装 (FCI)。 有关详细信息,请参阅 使用 SMB 文件共享存储安装 SQL Server

作者

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

主要作者:

后续步骤

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