虚拟群集体系结构 - Azure SQL 托管实例
适用于:Azure SQL 托管实例
本文介绍托管 Azure SQL 托管实例的虚拟群集的体系结构和操作管理。
概述
Azure SQL 托管实例是一项单租户平台即服务 (PaaS),由服务组件组成,这些服务组件托管在一组加入虚拟群集的专用独立虚拟机上。 根据相似的实例配置属性(例如硬件代系和维护时段),将这些专用的虚拟机放入虚拟机组中。 一个或多个实例可以放入虚拟机组中,而一个或多个虚拟机组构成了虚拟群集。 虚拟群集会根据需要自动扩展或收缩,以适应新实例和已移除的实例。
每个虚拟群集都与一个子网关联,在子网中创建第一个 SQL 托管实例时会自动部署。 同样,删除子网中的最后一个实例时,会自动删除虚拟群集,从而使子网为空并准备好删除。 虚拟群集将子网连接到在该子网内部署的托管实例。 服务关联链接 (SAL) 用于在子网与群集之间建立关联。
以下关系图演示了虚拟群集的概念布局:
管理操作中的角色
虚拟群集在管理操作中的角色是找到该操作相应的计算资源,以及管理群集中的资源,例如创建实例的虚拟机和虚拟机组。 管理操作包括创建新实例以及删除或修改现有实例的配置。 虚拟群集根据操作扩展、收缩或删除现有虚拟机组,或创建新的虚拟机组。
由于虚拟机组是根据类似的实例配置属性(例如硬件代系和维护时段)定义的,因此若对实例的任何这些属性进行更改,都会触发虚拟集群对构成其的虚拟机组执行操作。 通过管理操作触发的操作包括创建新的或删除现有的虚拟机和虚拟机组,以及扩展现有组和在组之间移动实例。 如果删除某个虚拟机组中的所有虚拟机,则虚拟群集也会删除该虚拟机组。
例如,如果更改实例的硬件代系,则虚拟群集会为该硬件代系创建新的虚拟机组(如果尚不存在),并将实例移动到该组。
虚拟组更改操作的持续时间取决于操作类型。 有关详细信息,请参阅 SQL 托管实例管理操作。
虚拟机组的数量
虚拟群集中虚拟机组的数量取决于以下几点:
通过将不同的硬件代系配置的数量乘以子网中不同的维护时段配置的数量,即可确定虚拟群集中虚拟机组的数量。 例如,如果你有两种硬件代系配置(例如一个标准系列和一个高级系列实例)和两种不同的维护时段配置,则该虚拟群集有四个虚拟机组。
SQL 托管实例支持三种不同的硬件代系配置和三种不同的维护时段配置。 因此,虚拟群集中虚拟机组的最小数量为 1(一种硬件代系配置、一种维护时段配置),最大值为 9(三种不同的硬件代系配置、三种不同的维护时段配置)。
重要
由于可以加入组的虚拟机的数量有限制,因此现有组中的空间不足可能会导致创建具有相同规格的虚拟机组。 包含大量实例的子网可以具有配置相同的多个虚拟机组,并且虚拟机组的数量超过 9 个。
IP 地址使用中的角色
Azure SQL 托管实例的内置高可用性通过 Azure Service Fabric 实现。 Service Fabric 群集是一组通过网络连接在一起的虚拟机或物理计算机。 属于 Service Fabric 群集的每台计算机或虚拟机称为群集节点,每个节点保留一个 IP 地址。 因此,创建 SQL 托管实例的专用虚拟机组中的每台虚拟机 都被视为 Service Fabric 群集中的一个节点。 托管一个或多个 SQL 托管实例的虚拟群集将 IP 地址分配给每台虚拟机,从而形成具有高可用性的 Service Fabric 群集。
由于虚拟群集负责为其内部的虚拟机分配 IP 地址,并且每个虚拟群集都与单个子网相关联,因此在确定子网的适当大小时,必须仔细考虑预期要部署到子网中的实例数量。
确定要在其中部署托管实例的子网的适当大小时,请考虑以下因素:
- 预期要部署到子网中的实例数量
- 子网中预期包含的不同的虚拟机组数量
如需了解详细信息,请参阅确定 Azure SQL 托管实例所需的子网大小和范围。
DNS 同步
虚拟群集在托管现有 SQL 托管实例的虚拟网络中同步 DNS 服务器设置更改。 虚拟群集触发同步并将其传播到群集内的实例。 有关详细信息,请参阅解析 Azure SQL 托管实例中的专用域名。
在删除 Azure SQL 托管实例后删除子网
删除用于 SQL 托管实例的子网之前,子网需要为空。 由于虚拟群集是在创建子网中的第一个实例时自动创建的,并且在删除子网中的最后一个实例时会被自动删除,因此需要先删除子网中的所有实例,然后才能删除子网。
重要
- 创建和删除虚拟群集都是自动执行的操作,在创建第一个实例或删除子网中的最后一个实例后无需执行手动操作。
- 删除虚拟群集是一项长时间运行的操作,最长可以持续 1.5 小时。 在完成虚拟群集删除操作之前,门户中仍然会显示虚拟群集。
在极少数情况下,创建实例会失败,并导致虚拟群集为空。 此外,由于实例创建操作可以取消,因此要部署的虚拟群集可能包含处于无法部署状态的实例。 空的虚拟群集或包含无法部署的实例的群集会在后台自动删除,并且不会产生与这些群集相关的任何费用。
后续步骤
- 有关概述,请参阅什么是 Azure SQL 托管实例?。
- 了解如何设置可用于部署 SQL 托管实例的新的 Azure 虚拟网络或现有 Azure 虚拟网络。
- 在要部署 SQL 托管实例的位置计算子网的大小。
- 了解如何通过以下方式创建托管实例: