菜单

AWS 中的 Microsoft SQL Server:托管还是自我管理?

目录

分享该页面

Semion Mazor photo
Semion Mazor
57 浏览次数

Microsoft SQL Server 是企业 IT 的基础之一,它提供可靠的数据库,可扩展以满足最严苛的关键任务需求。然而,在 AWS 上运行 SQL Server 有两种方法,它们有着根本的不同。

区别在于托管还是自我管理。您可以使用 Amazon Relational Database Server (Amazon RDS) 运行托管数据库,也可以管理部署在 Amazon Elastic Compute Cloud (Amazon EC2) 实例上的自己的数据库。

本博客将深入探讨这两种部署模型,并详细解释每种方案的优缺点。此外,您还将了解 AWS 和 NetApp 如何携手打造一种创新的 AWS 上自主管理 SQL Server 的方法,该方法支持托管 SQL Server 部署的诸多优势:Amazon FSx for NetApp ONTAP。

托管与自我管理 SQL Server:概述

首先,看一下 SQL Server 部署的两个选项:

  • 托管数据库选项:使用 Amazon RDS 部署 SQL Server

    Amazon RDS 允许您使用包含许可证的服务模式部署不同版本的 SQL Server,包括 Express、Web、Standard 和 Enterprise。最大存储容量为 16TB。

    另一个托管服务选项是 Amazon RDS Custom for SQL Server。此选项提供与常规 Amazon RDS for SQL Server 相同的可用性、性能和安全性功能,但它可以让您更好地控制底层数据库和操作系统。

  • 自管理数据库选项:在 Amazon EC2 上部署 SQL Server

    使用此选项,您必须在 AWS 上创建自己的基础架构。您必须启动 Amazon EC2 实例,选择存储解决方案或服务,并配置网络和其他元素,以确保它们能够协同工作。

许可选项

无论您选择由他人代管还是自行管理,您决定运行的基础 SQL Server 均有多种许可选项。这些许可选项包括:

  • 标准版或企业版。SQL Server 的主要商业许可选项是标准版和企业版。这两个版本针对不同的组织规模,并具有不同的资源限制。两者都可以按核心进行许可,但标准版还提供了“服务器 + 客户端访问许可证”模式的选项。
  • 特定许可证。SQL Server 还具有 Express、Developer 和 Web 许可证,这些许可证针对开发或特定的小规模场景。
  • 已包含许可证。托管型 Amazon RDS 服务支持 SQL Server 的“已包含许可证”模式,在此模式下,您无需担心购买许可证。许可证费用已包含在基础计算资源中,采用按使用量付费的定价模式。
  • 自带许可证 (BYOL)。如果您使用 Amazon EC2 部署自管型 SQL Server 数据库,则可以选择自带许可证 (BYOL),这是许可证移动性协议的一部分。如果您已拥有 SQL Server 许可证,此选项将非常有用。

迁移工具

如果您希望将现有的 SQL Server 数据库迁移到 AWS,则需要先将数据迁移到云中。以下是一些可以提供帮助的工具:

  • AWS 数据迁移服务 (DMS)。无论是一次性迁移还是持续的同步过程,DMS 都可以将数据从您的数据中心复制到 AWS。
  • AWS Schema Conversion Tool (AWS SCT)。此工具可帮助您将现有 SQL Server 数据库迁移到其他数据库技术,例如 PostgreSQL 或 MySQL。
  • AWS Snowball、Snowball Edge 和 Snowmobile。这些 AWS 服务旨在以比网络迁移更短的时间物理传输大量数据。

托管部署:Amazon RDS 上的 SQL Server

Amazon RDS 提供了一种在 AWS 云中部署 SQL Server(以及其他类型的关系数据库)的简便方法。Amazon RDS 允许您在 SQL Server 版本(包括 2012、2014、2016、2017 和 2019)以及 Express、Web、Standard 或 Enterprise 版本之间进行选择。

您选择的版本会打开三个可选配置模板中的两个:免费套餐、开发/测试版或生产版。这些模板使您可以从一系列具有不同分配资源级别的 AWS 实例类型中进行选择,这些实例将在后台运行您的数据库。

Amazon RDS for SQL Server 通常仅在“已包含许可证”服务模式下运行。因此,当您设置实例时,软件许可证已包含在实例价格中,您无需自带许可证。但是,如果您想自带许可证,Amazon RDS Custom for SQL Server 服务可为您提供此选项。

在存储方面,两种服务选项均完全基于 SSD(通用型或预配置 IOPS),最多可分配 16TB 的存储空间。自动备份功能默认启用,您可以配置备份频率。您还可以选择 Amazon RDS 实例在哪个 Amazon Virtual Private Cloud (VPC) 中运行,并可根据需要设置 Windows 身份验证。

托管 SQL Server 部署选项的优点

让我们看一下托管 SQL Server 部署选项可获得的主要好处:

  • 弹性可扩展性

    您只需调整一些设置,即可轻松更改分配给 AWS 中 SQL Server 的资源,并且更改将在几分钟内生效。Amazon RDS 还支持存储自动扩展,这意味着它可以检测空间何时耗尽并分配更多存储空间,而无需任何干预。

  • 按需付费

    Amazon RDS for SQL Server 按小时计费,无需任何大额前期投资,只需按实际使用量付费。此方法结合按需增减分配资源的功能,可帮助您优化成本。

    您甚至可以快速启动 Amazon RDS 实例来执行偶尔的作业,并在完成后立即销毁它们。如果您的工作负载更可预测,您可以利用预留实例,用上述灵活性换取大幅折扣。

托管 SQL Server 部署选项的缺点

对于 SQL Server 的完全托管选项,需要牢记一些注意事项:

  • 实例限制

    您应该密切关注 Amazon RDS 上 SQL Server 的限制。例如,每个 Amazon RDS 实例支持的 SQL Server 数据库数量上限为 30 到 100 个,具体取决于您使用的实例类型。单个数据库的大小也不得超过 16 TB。

  • 控制力减弱

    当您使用 Amazon RDS 等托管服务时,您无法控制数据库的配置方式或对底层实例和基础架构的任何访问。这种控制缺失还会限制数据所在的位置以及跨环境数据混合的选项。

    随着更新的 Amazon RDS Custom for SQL Server 服务的推出,这些限制在一定程度上得到了缓解。Amazon RDS Custom 仍然有一些固有的考虑因素,例如区域可用性和可用的实例类类型。但总体而言,它提供的性能、可扩展性和安全性与传统 Amazon RDS 类似。如果您的组织需要更多控制权,但又不想完全自行管理 SQL Server,那么它能够控制底层操作系统和数据库配置,是一个不错的选择。

自主管理部署:使用 Amazon EC2 的 SQL Server

在某些情况下,一个很好的替代方案是将 SQL Server 与 AWS 提供的其他服务(Amazon EC2 和 Amazon Elastic Block Store(Amazon EBS))结合起来,作为持久且可插拔的存储。

如果您自行管理 SQL Server,则需要投入精力进行设置和维护,就像在自己的数据中心一样。不过,您可以使用 Amazon 系统映像 (AMI) 来简化操作:

  • 您可以创建一个 AMI 并将其用作新 Amazon EC2 实例的模板。
  • AMI 已经预装了 SQL Server,并且已经具备许多配置(例如,允许远程访问的配置)。
  • AWS Marketplace 有几种付费 AMI 选项。

自管理 SQL Server 部署选项的优点

现在让我们看看自我管理 SQL Server 部署选项的主要优点:

  • 成本效益

    自管理选项通常比 Amazon RDS 更便宜。此外,它还能让您灵活地像在自己的数据中心一样运行 SQL Server,而无需承担数据中心成本。

  • 灵活性

    总体而言,使用 Amazon EC2 构建的数据库提供了更高的灵活性。您可以完全控制数据库的配置方式及其数据所在的位置,并可以使用各种功能来更轻松地实现复杂的混合架构部署。

  • 可扩展性

    由于能够根据需要启动新的实例和卷,因此自管理方法没有 Amazon RDS 的 16TB 大小限制。

  • 能够配置您的 RPO 和 RTO

    您可以配置数据保护计划,以更好地匹配您的特定恢复点目标 (RPO) 和恢复时间目标 (RTO) 要求。

  • 访问最新功能

    您可以直接使用数据库的最新功能并完全控制其管理和调整。

自我管理 SQL Server 部署选项的缺点

使用 SQL Server 模型的自管理选项需要考虑以下几点:

  • 未完全管理

    基本上,在 AWS 上自行管理 SQL Server 的缺点在于,你无法获得完全托管的服务。你可以拥有更多控制权,但这也带来了管理开销。

    例如,您需要管理 Amazon EC2 实例和存储,并根据需求进行扩展。需要注意的是,如果没有托管服务,所有管理和运维任务(例如备份、灾难恢复和快照)都需要您自行实现。这并非每个用户都需要考虑的问题,但对某些用户来说可能确实如此。

  • 许可

    另一个需要考虑的方面是软件许可证。使用自管理选项,您必须自带许可证,而不是使用作为托管服务实例计费一部分打包的许可证。

AWS 中带有 FSx for ONTAP 的 SQL Server:用于自管理 SQL Server 的完全托管存储

每种方案都有其优缺点,那么,您该选择托管式还是自管理式?借助 Amazon FSx for NetApp ONTAP,您可以弥合 SQL Server 部署中托管式和自管理式方法之间的差距。

FSx for ONTAP 是一项完全托管的 AWS 原生存储服务,基于 NetApp® ONTAP® 技术。它可以帮助您获得自主管理部署选项的所有优势,以及托管服务的诸多优势,从而轻松应对复杂的密钥管理和运维任务。

FSx for ONTAP 扩展了您的控制能力,并为您的数据库提供了更多功能。主要优势包括:

  • 数据库存储成本降低高达 65% ,且不影响性能
  • 零容量、零成本、即时且可写的数据克隆副本,可以加快数据库刷新、开发和测试 (dev/test) 以及持续集成和持续部署 (CI/CD) 流程
  • 跨区域、应用程序感知的数据保护,有助于保护您的数据库和数据免受区域灾难、中断、意外删除和勒索软件的侵害
  • 内置多可用区高可用性,旨在在整个 AWS 可用区发生故障时保持存储层正常运行,支持 0 RPO 和低于 60 秒的 RTO
Microsoft SQL Server
Multi-AZ high availability FSx for ONTAP with SnapMirror replication for multi-region DR

以下 FSx for ONTAP 功能进一步增强了自管理 SQL Server 部署:

  • 持续的高性能和吞吐量,低延迟和智能 NVMe 缓存
  • 灵活的规模大小调整,以便容量、吞吐量和 IOPS 可以随时扩大或缩小
  • 多协议可访问性,包括 iSCSI、NFS 和 SMB 协议
  • 缩短备份窗口,从几小时缩短到几分钟,以优化 RTO

借助 Amazon EC2 中的自主管理部署,您可以使用 FSx for ONTAP 简化运维任务并解锁这些新功能。让我们通过一个示例来了解其实际运作方式。

S&P Global Market Intelligence 如何利用 FSx for ONTAP 增强数据弹性并降低成本

S&P Global Market Intelligence 为全球客户提供全球金融行业和市场的商业洞察。Amazon FSx for NetApp ONTAP 通过支持其 SQL Server 部署,帮助该组织实现这一目标。

S&P Global Market Intelligence 运行数百个 SQL Server 数据库,需要它们在 AWS 区域内具有高可用性,以支持灾难恢复并保持正常运行时间。

FSx for ONTAP 可帮助该组织实现这些目标以及更多目标:

  • 多 AWS 区域架构可以在发生灾难时保护数据,并保持业务连续性。
  • 故障转移集群实例 (FCI) 与 FSx for ONTAP 存储集成。
  • 提供基于块的 iSCSI 以及 NFS 和 SMB 的多协议支持
  • 通过 SnapMirror 进行跨区域灾难恢复复制比数据库级复制更高效。
  • 借助内置的重复数据删除和压缩功能,降低了成本,帮助 S&P Global Market Intelligence 以更少的投入实现更多的产出。

请参阅 S&P Global Market Intelligence 案例研究,了解更多信息

使用 FSx for ONTAP 优化您的数据库

从降低成本到保护数据,再到在 AWS 上提供更好的业务连续性,自主管理数据库的 SQL Server 用户在存储层方面拥有了更佳的选择。Amazon FSx for NetApp ONTAP 增强了数据管理功能,可让您的自主管理 SQL Server 部署更轻松、更快捷、更经济高效。

Semion Mazor

云存储和 FSx for ONTAP 产品支持专家

查看 Semion Mazor 发布的所有文章
Drift chat loading