你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
使用实例混合,你可以使用灵活业务流程模式在虚拟机规模集中指定多种不同的虚拟机 (VM) 大小,并且可以指定分配策略来进一步优化部署。
实例混合最适合计算要求灵活且可以在各种不同大小的 VM 上运行的工作负载。 使用实例混合可以执行以下操作:
- 在单个规模集中部署多种不同大小的 VM。 可以在文档中查看最大规模集实例计数。
- 通过分配策略优化部署的成本、容量或排名。
- 继续使用规模集功能,例如自动缩放、现成 VM 优先级混合或升级策略。
用例
实例组合在需要灵活性和实现容量的关键场景中是理想的选择。 常见用例包括:
- 运行成本敏感型工作负载,它们可以使用多种现成 VM 大小来最大程度地降低开支。
- 逐步采用较新的 VM 代系(如 D32sv5 和 D32sv6),同时继续在同一系列中使用现有的旧 VM。
- 支持具有主要或首选 VM 大小的工作负载,同时提供备用或次要 VM 大小,以增加灵活性。
- 确保高可用性和可靠性,尤其是在高需求期间,通过将多样化的虚拟机组合分布在可用性区域和容错域中。
对现有规模集属性的更改
sku.name
sku.name
属性应设置为 "Mix"
。 虚拟机大小定义在 skuProfile
.
sku.tier
sku.tier
属性目前是可选的规模集属性,在实例混合场景中应设置为 null
。
sku.容量
sku.capacity
属性仍表示规模集的总体大小(以 VM 总数表示)。
scaleInPolicy
使用实例混合的规模集部署不需要可选的横向缩减属性。 在出现横向缩减事件期间,规模集利用分配策略来决定应横向缩减哪些 VM。 例如,使用 LowestPrice
时,规模集会通过首先删除较昂贵的 VM 来进行横向缩减。
新的规模集属性
skuProfile
skuProfile
属性表示与实例混合相关的所有属性的总括属性,包括 VM 大小和分配策略。
vmSizes
vmSizes
属性用于指定在通过实例混合进行规模集部署时使用的特定 VM 大小。
allocationStrategy
实例混合引入了为规模集设置分配策略的功能。 allocationStrategy
属性用于指定要将哪项分配策略用于实例混合规模集部署。 存在三个适用于分配策略的选项,即 lowestPrice
、capacityOptimized
和 Prioritized
。 分配策略适用于现成 VM 和标准 VM。
lowestPrice(默认值)
此分配策略主要关注成本和成本优化最为重要的工作负荷。 在评估要使用哪种 VM 拆分时,Azure 会查看指定的 VM 大小中价格最低的 VM。 Azure 还会将容量视为此分配策略的一部分。 规模集会根据可用容量部署尽可能多的价格最低的 VM,然后再转到指定的下一个价格最低的 VM 大小。 lowestPrice
是默认分配策略。
capacityOptimized
capacityOptimized
分配策略专为优先确保 VM 容量的工作负载而设计。 此方法可确保根据可用性而不是成本注意事项分配 VM。
分配的工作原理capacityOptimized
- Azure 在确定要部署的虚拟机大小时,会优先考虑可用容量,而不考虑价格。
- VM 大小根据基础容量可用性动态选择,确保即使在高利用率区域中也能分配实例。
- 此策略对于需要确保计算资源而又不能因容量短缺而出现延误的工作负荷非常有用。
注意事项
- 不考虑成本。 如果这些选项最易用,则所选 VM 大小可能包括更昂贵的选项。
- 不需要用户定义的排名。 与
Prioritized
分配策略不同,选择过程完全基于 Azure 的容量见解自动化。 - VM 分配依赖于区域。 可用性可能因 Azure 区域而异,选择过程会相应地进行调整。
- 最适合处理关键任务。 当保护 VM 比优化成本更重要时,此策略是理想的策略。
用户可确保其工作负荷接收必要的计算资源,即使在容量约束可能阻止 VM 分配的情况下也是如此。
已优化(预览版)
通过定义优先级排名,分配 Prioritized
策略可以控制如何分配 VM 大小。 Prioritized
允许基于首选 VM 大小的更可预测的分配顺序。
分配的工作原理Prioritized
- 可以为列表中的每个 VM 大小
vmSizes
分配一个优先级排名,以影响分配实例的顺序。 - 较低的排名数字表示优先级较高。 例如,排名为 0 的 VM 优先于排名为 2 的 VM。
- 如果多个 VM 大小具有相同的级别,则它们共享相同的分配优先级,Azure 会根据可用性在这些大小之间分配 VM。
注意事项
- 排名是可选的。 如果未提供排名,则所有 VM 大小都以同等优先级进行处理。
- 排名必须位于 vmSizes 列表大小的范围内。 例如,如果有五种 VM 大小,则排名必须在 0 到 4 的范围内(如果不是所有 VM 都分配了排名,则排名必须更低)。
- 排名不需要按顺序排列。 可以存在例如 0、2、5 这样的等级,而无需定义 1、3 或 4。
- 允许重复排名。 多个 VM 大小可以共享相同的级别,从而允许采用分层分配方法,其中多个大小受到同等对待。
- 资源可用性仍适用。 即使 VM 大小具有最高优先级,分配也受区域容量限制的约束。
成本
按照规模集成本模型,实例混合的使用是免费的。 仍然只需支付基础资源(例如 VM、磁盘和网络)的费用。
建议
- 对工作负荷使用大小类似的 VM,以确保从负载均衡器均匀分布流量。 例如,在部署中使用
Standard_D8s_v4
和Standard_D8s_v5
两种 VM 大小,可确保工作负荷始终在八核 VM 上运行。 - 使用 类似类型的 VM 实现一致的性能。
- 若要从预留定价中获益,请使用
Prioritized
分配策略,并将预留虚拟机大小设置为首位。 - 若要从储蓄计划定价中获益,请使用
Prioritized
分配策略,并将储蓄计划 VM 大小设置为最高优先级。 - 若要确保流畅的自动缩放体验,请使用类似 vCPU 和内存配置的 VM。
限制
使用实例混合时,请记住以下限制:
- 业务流程模式:实例混合仅适用于使用灵活业务流程模式的规模集。
- 配额要求:确保为使用实例组合请求的 VM 大小提供足够的配额。
- 虚拟机类型:只有属于 A、B、D、E 和 F 系列的虚拟机才能在
skuProfile
中指定。 - VM 大小限制:可以在实例组合部署中指定最多 五个 VM 大小 。
- 虚拟网络要求:对于 REST API 部署,现有虚拟网络必须存在于部署规模集的资源组中。
- 体系结构一致性:不支持在同一实例混合部署中混合 VM 体系结构(例如 Arm64 和 x64)。
- 存储接口一致性:具有相同存储接口(例如 SCSI 和 NVMe)的 VM 不能在同一实例混合中混合。
- 安全配置文件一致性:在中指定的
skuProfile
所有 VM 必须共享相同的安全配置文件。 - 本地磁盘配置:所有选定的 VM 大小必须具有相同的本地磁盘配置。
- 不支持的功能:实例组合不支持以下功能:
- 备用池
- Azure 专用主机
- 邻近放置组
- 使用 MaxSurge 的缩放行为:在使用 MaxSurge 进行缩放操作期间,实例混合会将 VM 替换为缩放操作之前的大小。
后续步骤
了解如何 使用实例组合创建规模集。