你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
什么是实例池? Azure SQL 托管实例 -
适用于:Azure SQL 托管实例
本文概述了 Azure SQL 托管实例的实例池部署选项,这为客户带来了巨大的成本节省优势。
实例池使可以使用共享资源部署多个实例,从而提供方便且经济高效的基础结构,以便从 SQL Server 实例迁移多个数据库,而无需将更小、更少的计算密集型工作负荷合并到更大的 SQL 托管实例上。
要开始使用,请查看创建实例池。
概述
Azure SQL 托管实例中的实例池允许将具有共享资源的多个实例部署到虚拟群集中的单个基础虚拟机上。
实例池具有下列核心优势:
- 能够托管 2-vCore 实例,这些实例仅在实例池中可用
- 实例部署时间短且可预测(不超过 5 分钟)。
- 迁移多个 SQL Server 实例时是节省成本的基础结构。
下图说明了在虚拟网络子网中的虚拟群集部署了多个托管实例的实例池:
新增功能
2024 年 11 月带来了以下功能:
- 创建池,在池中创建实例,并在 Azure 门户中修改池配置设置。
- 使用 PowerShell 或 Azure CLI 更新池配置设置(例如计算大小、许可证、属性)。
- 支持高级系列硬件。
- 使用 PowerShell 或 Azure CLI 将实例移入和移出池。
- 预留容量定价的实例池支持。
体系结构
实例池具有与单个托管实例类似的体系结构。 为了支持 Azure 虚拟网络中的部署并为客户提供隔离和安全性,实例池还依赖于虚拟群集。 虚拟群集表示在客户的虚拟网络子网中部署的一组专用的独立虚拟机。 同一子网中的所有单个实例和实例池都属于同一虚拟群集。 池中的实例具有分配给 SQL Server 进程和网关组件的计算资源,以确保可预测的性能。 初始池部署后,池中实例的管理操作速度更快,因为 SQL 进程是在已预配的计算资源上创建的。
虚拟机的计算大小基于分配给池的 vCore 总数,这些 vCore 分布在池中的实例之间。 这种体系结构允许将虚拟机分区到多个实例中,这些实例可以是任何支持的大小,包含 2 个 vCore(仅适用于实例池)。 例如,部署 8-vCore 实例池时,可以部署两个 2-vCore 和一个 4-vCore 实例。 然后可以将 SQL Server 数据库迁移到池中的实例。 由于实例池支持原生虚拟网络集成,因此可以在同一子网中部署多个实例池和多个单实例。
实例池提供高级别隔离,因为每个实例都被授予基础主机虚拟机上的专用 vCore。 与单个托管实例相比,实例池部署模型的主要区别在于,使用实例池可以在同一虚拟机中创建多个 SQL Server 进程,这些进程是使用 Windows 作业对象管理的资源。 如果进程级隔离不足,请考虑使用单个实例而不是实例池,因为单个实例在虚拟机节点上只有单个 SQL Server 进程,提供了 VM 级隔离。
下图说明了这两种部署模型之间的主要体系结构差异:
应用程序方案
请考虑将实例池用于以下应用场景:
- 同时迁移一组小型 SQL Server 实例,其中实例为 2-vCore 或 4-vCore。
- 需要快速且可预测的实例创建或缩放。 例如,在需要实例级功能的多租户 SaaS 应用程序环境中部署新的租户。
- 具有固定成本或支出限制十分重要。 例如,运行大小固定(或不常变化)的共享开发测试或演示环境,其中你要根据需要定期部署托管实例。
实例池特别适合迁移多个 SQL Server 实例,因为根据总迁移要求预配共享计算资源可降低迁移后的拥有总成本。 例如,请考虑将四个小型本地 SQL Server 实例迁移到Azure SQL 托管实例的应用场景。 如果没有实例池,将预配四个单独的单个 SQL 托管实例,每个实例至少包含 4 个 vCore,所有这些实例都具有自己的专用资源。 实例池降低了这一成本,因为可以将包含 2 个 vCore 的所有实例部署到由池共享资源的池中。
实例和池属性
在池级别为池中的所有实例配置以下属性:
- 硬件层
- SQL Server 许可证,例如 Azure 混合权益
- 维护时段
此外,请注意以下几点:
- 池中创建的托管实例支持单个托管实例可用的兼容性级别和功能。
- 在实例级别配置可选功能或要求你选择特定值的功能(例如实例级别排序、时区、数据流量的公共终结点、故障转移组),池中每个实例的这些功能可有所不同。
- 由于池中部署的实例共享同一个虚拟机,请考虑禁用会带来较高安全风险的功能,或者严格控制对这些功能的访问权限,例如 CLR 集成、本机备份和还原、数据库电子邮件等。
- 可以将 SQL 托管实例配置为在将其添加到池之前或之后使用 Microsoft Entra 身份验证。
- 池中部署的每个托管实例具有单独的 SQL Server 代理。
资源限制
将实例部署到池时,每个单独的共用实例都有限制,整个池使用的资源也有限制。
下表详细说明了共用实例和池的限制:
池限制 | 共用实例限制 | |
---|---|---|
服务层 | 常规用途 | 常规用途 |
硬件层 | 标准系列 (Gen5) 高级系列 |
标准系列 (Gen5) 高级系列 |
vCore 数1 | 8-16-24-32-40-64-80 | 2-4-8-16-24-32-40-64-80 |
最大存储 | 32 TB2 | - 640 GB(适用于 2 个 vCore) - 2 TB(适用于 4 个 vCore) - 8 TB(适用于 8 个 vCore) - 16 TB(适用于 16 个以上 vCore) |
最大数据库数量 | 500 | - 50(适用于 2 个 vCore) - 100(适用于 4 个以上 vCore) |
最大实例数 | 40 | 空值 |
1 共用实例的 vCore 选项取决于实例池中的可用 vCore 数。
2 池存储限制由池中所有实例的存储总和决定。
有关所有其他实例级限制,请查看资源限制。
性能注意事项
虽然池中的托管实例具有专用的 vCore 和 RAM,但其共享本地磁盘(用于 tempdb
)和网络资源。 虽然不太可能,但如果池中的多个实例同时具有较高的资源消耗,则可能会遇到“近邻干扰”问题。
如果遇到这种情况,请考虑增加池大小,或将高消耗资源重新部署为池外部的单实例。
实例池计费
可在实例池中单独扩展计算和存储。 需要支付的费用:
- 分配给池的计算(以 vCore 为单位)
- 与每个实例关联的存储(以 GB 为单位,对于每个实例,前 32 GB 免费)。
无论池中部署了多少实例,都会对该池中的 vCore 收费。 必须对池中的单个实例设置相同的定价选项。 池中的所有实例必须使用相同的许可模型。 池创建后,可更改该池的许可证模型。
计算价格(以 vCore 为单位)取决于是否支付完整的 SQL Server 许可证价格。 有以下两种价格选择:
- 包含许可证:包含 SQL Server 许可证的价格。
- Azure 混合权益:包含适用于 SQL Server 的 Azure 混合权益的折扣价格。 客户可通过使用带软件保障的现有 SQL Server 许可证来选择采用此价格。
有关完整的实例池定价详细信息,请参阅 SQL 托管实例定价页面上的“实例池”部分。
注意
在有资格享受开发测试权益的订阅上创建的实例池会自动在 Azure SQL 托管实例上享受高达 55% 的折扣费率。
保留容量定价
预留容量允许你在预先确定的的时间内预留资源价格时提供深层折扣,以节省计算成本。 现在可以将预留容量分配给实例池,从而创建运行多个实例的最经济高效的方法。
限制
要了解更多信息,请查看实例池限制。