我审阅过的每一份 Azure Virtual Desktop 账单都长得一样:计算是遥遥领先的最大一项,而其中相当大一部分是在凌晨 2 点为空无一人的环境运行。自动缩放正是解决这个问题的功能,而我在 2026 年 6 月 Azure Virtual Desktop 更新汇总中介绍的自动化主机池和动态自动缩放让它变得更好。但美国 IT 团队问我的问题不是“自动缩放能省钱吗”,而是“对我们来说能省多少,我们需要改什么”。本指南用一个你可以直接复制到电子表格里的成本模型来回答:成本构成、两种自动缩放方法的差异、带公式的示例、按影响排序的杠杆、防止省钱变成服务台工单的护栏,以及如何在 Azure Cost Management 中衡量结果。每一条功能声明都经过了正文内链接并列在“资料来源”中的 Microsoft Learn 页面核对。单价故意留作占位符:它们因区域和协议而异,对你来说正确的数字是你登录 Azure 定价计算器后拉取的那些。
Azure Virtual Desktop 的钱花在哪里
Microsoft 的 Azure Virtual Desktop 定价页面把账单描述为两部分:用户访问权限,以及由虚拟机、OS 映像/数据磁盘/用户配置文件的存储和网络组成的 Azure 基础设施,按即用即付或预留方式计费。在实践中我把它拆成七行,因为开启自动缩放后它们的表现各不相同。
| 成本构成 | 驱动因素 | 计费方式 | 自动缩放改变了什么 |
|---|---|---|---|
| 计算(会话主机 VM) | 主机数 × 小时数 × VM 小时单价 | VM 处于正在运行或*已停止(已分配)*状态时计费;已停止(已解除分配)时不计费 | 小时数这一项。这就是杠杆。 |
| OS 磁盘 | 磁盘数 × 层级 × 月数 | 持久托管磁盘在 VM 解除分配期间继续计费;临时 OS 磁盘驻留在本地 VM 存储上,不保存到远程 Azure 存储 | 电源管理:无变化。动态:主机被删除,磁盘月数减少。临时:对无状态主机直接消除这一行。 |
| 配置文件存储(FSLogix) | 预配的 GiB、IOPS 和吞吐量(预配 v2),或已用 GiB 加事务数(即用即付) | 按月,依照 Azure 文件存储计费模型或 Azure NetApp Files 容量池 | 没有直接影响。主机密度会影响登录时所需的 IOPS。 |
| 网络出口流量 | 并发会话数 × 活跃小时数 × kbps | 超过每月前 100 GB后按 GB 计费的出站互联网数据传输 | 无变化。它跟随用户活动,而不是主机数量。 |
| 许可 | 内部使用时每位用户一份符合条件的许可证,外部商业用途使用按用户访问定价 | 许可渠道,或按用户访问定价的 Azure 计量项 | 无变化。 |
| 管理工具 | Insights 和诊断的 Log Analytics 数据引入 | 按引入 GB 计费;适用标准 Log Analytics 费用 | 自动缩放评估日志带来小幅增加。 |
| 人力 | 构建映像、添加主机、打补丁、救火式处理容量问题所花的时间 | 工资 | 自动化主机池和会话主机更新消除了大部分手动生命周期工作。 |
模型中有两个许可要点。第一,对于 Windows 11 企业版多会话会话主机,符合条件的许可证包括 Microsoft 365 E3、E5、A3、A5、F3、商业高级版和学生使用权益,Windows 企业版 E3 和 E5,Windows 教育版 A3 和 A5,以及 Windows VDA 按用户许可;许可页面明确指出,每一位访问该服务的用户都必须配备一份,而多会话 FAQ指出这种按用户的 Windows 许可取代了 RDS 客户端访问许可证。第二,Windows Server 会话主机需要带软件保障的 RDS CAL 或 RDS 用户订阅许可证,这正是后文 Windows Server 的 Azure 混合权益发挥作用的地方。自动缩放时这两条许可行都不会变动,这就是为什么计算项上的标题百分比总是大于总账单上的百分比。
电源管理自动缩放与动态自动缩放
各自做什么
自动缩放术语表定义了两种缩放方法。电源管理自动缩放“开启和关闭会话主机以调整主机池中的可用容量”,是标准管理主机池的方法。动态自动缩放“开启和关闭会话主机,并创建和删除会话主机以调整主机池中的可用容量”,只能用于带会话主机配置的池化主机池。两者运行相同的计划:爬坡上升、高峰、爬坡下降和非高峰阶段,每个阶段都有负载均衡算法、最低主机百分比和容量阈值。两者在爬坡下降期间使用完全相同的整合逻辑;Microsoft 的场景演练说“唯一的区别是电源管理解除分配会话主机,而动态自动缩放可以删除会话主机。”
同一页面还有两条可用性说明。电源管理自动缩放在 Azure 和 Azure Government 中所有可以创建主机池的区域均可用。动态自动缩放仅在 Azure 中可用,不支持 Azure Government,而且在我撰写本文时 Learn 页面上仍标注为预览版。
先决条件
| 要求 | 电源管理自动缩放 | 动态自动缩放 |
|---|---|---|
| 主机池类型 | 池化(标准管理或会话主机配置)或个人 | 仅限带会话主机配置的池化主机池 |
| 为 AVD 服务主体或主机池托管标识分配的 RBAC 角色,作用域为订阅 | Desktop Virtualization Power On Off Contributor | Desktop Virtualization Power On Off Contributor 和 Desktop Virtualization Virtual Machine Contributor |
主机池 MaxSessionLimit | 自定义值;不允许使用默认值 | 相同 |
| 同一主机池上的其他缩放工具 | 无 | 无 |
Az.DesktopVirtualization 模块 | 4.2.0 或更高版本 | 5.4.2-preview 或更高版本 |
| 网络 | 无额外要求 | 新主机必须能访问 wvdhpustgr0prod.blob.core.windows.net 以安装代理,否则创建会失败并报 CustomerVmNoAccessToDeploymentPackageException |
| 计划参数 | 每个阶段的最低主机百分比和容量阈值 | 相同,另加 Minimum host pool size、Maximum host pool size 和 Minimum percentage of active hosts (%) |
以上全部来自创建并分配缩放计划指南,该指南还警告在低于订阅的作用域分配这些角色“会导致自动缩放无法正常工作”。管理方式本身只能决定一次:主机池管理方式页面提醒它“在创建主机池时设定,之后无法更改。如果创建主机池时没有会话主机配置,之后也无法再添加。”
各自适用的场景
如果你运行标准主机池,并用自己的 Terraform、Bicep 或流水线加注册令牌来构建主机,那么电源管理是你唯一的选项,而且它已正式发布。如果你运行会话主机配置主机池,动态自动缩放是自然的选择,而自动缩放 FAQ说明了如何塑造它:把 Minimum host pool size 设为等于 Maximum host pool size,它的行为就和电源管理一样;把 Minimum percentage of active hosts (%) 设为 100,它就只创建和删除。动态自动缩放创建的主机使用“默认会话主机配置中定义的最新有效/稳定映像版本”,所以你的映像流水线直接为自动缩放供料。个人主机池使用另一种计划:会话断开或注销 0 到 360 分钟后解除分配、休眠或什么都不做,并在早上使用“连接时启动 VM”。FSLogix 和 App Attach 不支持休眠,所以使用这两者的个人池应该选择解除分配。
成本模型
变量
下面的模型就是我交给客户的那个。它刻意保持简单:小时数是自动缩放改变的那一项,所以模型把小时数单独隔离出来。
| 变量 | 符号 | 示例值 | 来源 |
|---|---|---|---|
| 命名用户数 | U | 500 | 你的许可数量 |
| 高峰并发比 | C | 0.70 | Insights 会话计数,而不是猜测 |
| 高峰并发会话数 | P = U × C | 350 | 计算得出 |
| 每台主机最大会话限制 | S | 16 | 你的 MaxSessionLimit;大小调整指南建议中等工作负载每 vCPU 最多 4 个用户,所以 8 vCPU 主机设为 16 留有余量 |
| 容量阈值 | T | 75% | 缩放计划的计划表 |
| 高峰时运行的主机数 | H = ceil(P ÷ (S × T)) | 30 | Microsoft 的整合公式,应用于稳态 |
| 主机池大小 | N | 32 | 你保留的主机数,多两台备用于排空和故障 |
| VM 大小 | Standard_D8ds_v5,8 vCPU,32 GiB,本地临时磁盘 | 大小调整指南中的示例系列;“d”让你可以放置临时 OS 磁盘 | |
| 每月工作日数 | D | 21 | 美国日历 |
| 周末和假日天数 | W | 9.4 | 30.4 减去 D |
| 每天爬坡上升和下降小时数 | h_up、h_down | 2 和 2 | 计划表 |
| 每天高峰小时数 | h_peak | 10 | 计划表 |
| 每天非高峰小时数 | h_off | 10 | 24 减去其他各项 |
| 爬坡阶段开启的主机数(平均) | R | 10 | 爬坡上升时最低主机百分比约 30%,在爬坡下降中逐步减少 |
| 缩减底线 | F | 2 | 非高峰最低主机百分比设置为向上取整到两台 |
| VM 小时单价 | p_vm | 你所在区域的价格 | 定价计算器、Windows VM 定价页面 |
| OS 磁盘每月价格 | p_disk | 你所在区域的价格 | 托管磁盘定价页面 |
| 配置文件存储价格 | p_gib、p_iops、p_tp | 你所在区域的价格 | Azure 文件存储定价页面 |
| 每 GB 出口流量价格 | p_egress | 你所在区域的价格 | 带宽定价页面 |
公式
P = U × C peak concurrent sessions
H = ceil( P / (S × T) ) hosts running at peak
Hours_on = N × 730 always-on host-hours per month
Hours_as = D × (R × h_up + H × h_peak + R × h_down + F × h_off) + W × F × 24
Compute = Hours × p_vm
Disks = DiskMonths × p_disk persistent OS disks
Profiles = GiB_prov × p_gib + IOPS_prov × p_iops + MiBps_prov × p_tp (Azure Files provisioned v2)
Egress_GB = P × h_active × D × kbps × 0.45 / 1000 0.45 MB per kbps-hour
Egress = max(Egress_GB - 100, 0) × p_egress
Licences = U × your per-user licence (outside the Azure bill for internal users)H 的公式是 Microsoft 自己的。自动缩放 FAQ写明“所需主机数 = 会话总数 /(最大会话限制 x 容量阈值 %)”,向上取整。它是针对爬坡下降期间的整合而写的,但同样的算术决定了自动缩放在稳态下保持开启的主机数,因为只要已用容量超过阈值它就会开启主机。
示例
代入示例值:
| 项目 | 始终开启(无自动缩放) | 电源管理自动缩放 | 动态自动缩放 |
|---|---|---|---|
| 每个工作日的主机小时数 | 32 × 24 = 768 | 10×2 + 30×10 + 10×2 + 2×10 = 360 | 360 |
| 每月工作日主机小时数 | 768 × 21 = 16,128 | 360 × 21 = 7,560 | 7,560 |
| 每月周末主机小时数 | 32 × 24 × 9.4 = 7,219 | 2 × 24 × 9.4 = 451 | 451 |
| 每月计算主机小时数 | 23,360(N × 730) | 8,011 | 8,011 |
| 计算成本 | 23,360 × p_vm | 8,011 × p_vm | 8,011 × p_vm |
| OS 磁盘月数(持久) | 32 | 32,因为解除分配的 VM 仍保留磁盘 | 约 17:最小池大小中的 10 台主机整月存在,加上 20 台被创建的主机在 21 个工作日中每天存在约 12 小时 |
| OS 磁盘月数(临时) | 不支持解除分配 | 不支持解除分配 | 存储费用为 0;只有选择 SSD 基础磁盘时才有基础磁盘费用 |
| 配置文件存储 | 500 用户 × 30 GiB = 预配 15,000 GiB,加 IOPS 和吞吐量 | 相同 | 相同 |
| 出口流量 | 350 × 8 × 21 × 150 kbps × 0.45 ÷ 1000 ≈ 3,970 GB,减去 100 GB 免费额度 | 相同 | 相同 |
| 许可 | 500 × 符合条件的许可证 | 相同 | 相同 |
| Log Analytics | 引入 GB × 价格 | 略多(自动缩放日志) | 略多 |
每用户 30 GiB 来自大小调整指南的最低配置文件存储列;150 kbps 是 Microsoft RDP 带宽估算中默认模式下活跃使用 Word 和 Excel 的中间值,在 1080p 下范围是 100 到 200 kbps。该页面上视频、PowerPoint 和图片密集的浏览是以 Mbps 计量的,所以如果你的用户会做这些事情,请单独建模。
自动缩放如何改变小时数项
自动缩放把计算项从 23,360 降到 8,011 主机小时,即原来的 34%,削减了大约三分之二,而且没有用到任何折扣、没有调整大小、用户白天看到的一切都没有改变。模型中的其他一切都保持原样。这就是诚实的标题:自动缩放是一个计算杠杆,如果计算占你账单的 60%,那么计算项省三分之二就是总额省 40%。
在调优之前有两个敏感度值得了解。在 30 台主机上每多一个高峰小时就每月多 30 × 21 = 630 主机小时,所以为一个 8:30 登录的团队把爬坡上升设在 6:00 的计划,是在为 1,260 主机小时的空气付费。夜间底线每多一台主机就每月多 10 × 21 + 24 × 9.4,约 436 主机小时;把底线从两台提到四台要花 871 主机小时,占整个自动缩放后账单的 11%。底线是好意葬身之地,所以要根据 Insights 中真实的下班后会话数据来确定它,而不是出于恐惧。
动态自动缩放不会进一步改变小时数项;一台运行中的主机无论是被开机还是被创建,成本都一样。它改变的是磁盘项和已停止 VM 的占用。使用电源管理时,32 块持久 OS 磁盘整月计费;使用动态自动缩放时只有最小池大小整月存在,而使用临时 OS 磁盘时被创建主机的存储费用完全消失。
按影响排序的杠杆
这是我为典型美国知识型员工主机池给出的排序。如果你已经落实了其中某一项,顺序可能会不同。
- 计划小时数和底线。 如上所示。在第一批真实登录出现时开始爬坡上升,在最后一批真实注销发生时开始爬坡下降,如果你下班后的会话确实为零,就把非高峰最低主机百分比设为 0%。没有其他任何一项能与之相比。
- 密度假设:C 和 S。 我接手的大多数环境都假设 100% 并发和一个保守的会话限制。用一个月的 Insights 会话计数来测量 C。对于 S,大小调整指南给出的每 vCPU 最大用户数为轻型 6、中型 4、重型 2、高性能 1,建议 8 vCPU 和 16 GB 作为多会话主机的最低配置,并建议把多会话主机保持在 4 到 24 vCPU 之间,因为“两台 16 核 VM 的用户体验优于一台 32 核 VM”。指南还指出,更多的小主机会留下更多没有用户的主机可以关闭,而这正是自动缩放所需要的。
- 为 VM 系列选对大小。 同一页面说 CPU 扩展不是线性的(每翻倍一次系数为 1.5 到 1.9),并且当内存是瓶颈时,从 8 GB 增加到 16 GB“可以让你支持的用户数增加一倍以上”。在改变大小之前,用 Insights 的主机性能选项卡看看哪种资源最先饱和。选择带本地存储的 v5 或 v6 D 系列大小,让临时 OS 磁盘仍是一个选项。
- 只对基线使用承诺折扣。 Azure 预留在一年或三年期限内相比即用即付最高可节省 72%,按小时应用,并且只覆盖 VM 计算计量项:“它不覆盖额外的软件、Windows、网络或存储费用。”由于未使用的预留小时会作废,每月运行 h 小时的主机只有在 h ÷ 730 > 1 − 折扣率时才能收回成本。在示例中,两台底线主机运行 730 小时,是显而易见的预留候选;30 台高峰主机在 21 个工作日里每天运行约 14 小时,即 294 小时或一个月的 40%,只有折扣率超过 60% 时才划算。请在定价计算器中查看你的大小和期限的实际百分比,而不是凭假设。实例大小灵活性让预留可以在同一组内的不同大小之间浮动,这在你以后调整大小时提供保护。对于可变层,Azure 计算节省计划是一项按小时的美元承诺,适用于不同大小、区域和计算服务;它同样不包括软件、网络和存储,而且购买后不能取消或退款。Microsoft 自己的顺序是:先调整大小,交换或折抵未充分使用的预留,然后为稳定用量购买新预留,最后再添加节省计划。对于 Windows Server 会话主机,如果你拥有带软件保障的核心许可证,Azure 混合权益可以免除 Windows Server 软件费用,每台 VM 至少需要 8 个核心许可证。Windows 11 多会话主机则通过用户的许可证获得 Windows 权利。
- 临时 OS 磁盘。 临时 OS 磁盘页面明确指出“已停止(已解除分配)”状态和停止/启动“不支持”,所以它们不能与会解除分配主机的计划搭配。它们可以与动态自动缩放的创建与删除行为搭配,而且适合 AVD,因为一旦配置文件存放在 FSLogix 中,主机就是无状态的。限制:映像必须能放进 VM 的缓存、临时或 NVMe 磁盘(最多 2,040 GiB),并且不支持 VM 映像捕获、磁盘快照、Azure 磁盘加密、Azure 备份、Azure Site Recovery 和 OS 磁盘交换。如果为了更高的 SLA 选择标准 SSD 或高级 SSD 基础磁盘,你需要支付该基础磁盘费用。
- 解除分配策略。 处于*已停止(已分配)状态的 VM 仍按计算计费;只有已停止(已解除分配)*才会停止计费。自动缩放执行的是解除分配,这正是你想要的。对于个人池,把断开和注销动作设为解除分配(如果涉及 FSLogix 就不要用休眠),并启用连接时启动 VM,让用户可以自己唤回桌面。
- FSLogix 存储层级。 FSLogix 存储比较为大多数客户推荐 Azure 文件存储,少于 200 用户的轻型工作负载用标准文件共享,其他一切用高级,并指出 Azure NetApp Files 的性能“是层级乘以容量的函数”,所以在较低层级预配更多容量可能是达到 IOPS 目标更便宜的方式。Azure 文件存储计费指南建议所有新部署使用预配 v2 模型,并指出 Azure 文件存储预留最高可为存储提供 36% 的折扣。
- 区域选择。 VM、磁盘和出口流量价格因区域而异,出口费率因大洲而异。缩放计划的配置必须与主机池配置位于同一区域,但会话主机可以在任何区域,所以你可以把元数据留在原地,把主机放到价格和延迟平衡最好的地方。不要为了更便宜的区域牺牲往返时间;大小调整指南把延迟、丢包和抖动列为直接影响用户体验的因素。
护栏
爬坡上升和下降的时间点
自动缩放在爬坡上升期间不会关闭主机,所以开始得太早的爬坡上升只是在烧小时数。在第一波登录前 30 到 60 分钟开始,并设置较高的最低主机百分比,动态自动缩放指南建议把它延续到高峰阶段。在爬坡下降中,强制注销只在该阶段发生,而且只在你配置的等待时间之后;FAQ 精确给出了失败模式:“如果爬坡下降阶段长 15 分钟,而注销用户和关闭 VM 前的等待时间长 20 分钟,计划就会切换到非高峰阶段,用户会话不会被强制注销。”让爬坡下降阶段比等待时间更长。如果你的计划只覆盖周一到周五,周五的非高峰设置会延续整个周末直到周一的爬坡上升,这正是底线所需要的。
排空模式和排除标记
自动缩放会覆盖排空模式:“无论是谁把 VM 置于排空模式,自动缩放仍会开启或关闭处于排空模式的 VM。”进行维护时,给主机加上缩放计划的排除标记(Microsoft 的示例是 excludeFromScaling),自动缩放就不会启动、停止或更改它的排空模式。Learn 页面有两条提醒:打了标记的主机仍计入最低主机百分比;如果你给每台主机都打上标记并关机,用户会看到“没有可用资源”,因为自动缩放没有可以启动的主机了。
缩减期间的用户体验
除非在爬坡下降中启用了强制注销,自动缩放只会关闭没有会话的主机;当它选中一台主机时,会先将其置于排空模式,发送你配置的通知消息,等待,然后注销并解除分配。因为主机处于排空模式,重新连接的用户会落在一台存活的主机上,而不是即将关闭的那台。在爬坡上升和高峰使用广度优先负载均衡以保证性能,在爬坡下降和非高峰使用深度优先,让会话整合到更少的主机上,这是 FAQ 推荐的模式。再配合组策略或 Intune 设置 Set time limit for disconnected sessions(Microsoft 示例中为 15 到 30 分钟),断开连接的会话就不会整夜占着主机。
应对登录风暴的容量
连接时启动 VM 不是登录风暴工具;对于池化主机池,它每五分钟最多启动一台 VM,在这个窗口内到达的用户会收到“没有可用资源”。你的防线是带有合理最低主机百分比的爬坡上升阶段。如果你所在区域容量紧张,按需容量预留可以保证你指定的 VM 大小和数量,没有期限承诺,但无论是否有 VM 在使用,你都要为预留容量支付 VM 费率,而已使用和未使用的预留容量都可以享受预留和节省计划折扣。只预留高峰那一部分,而不是整个池,而且只在部署失败确实困扰过你的地方这么做。
衡量
Azure Cost Management 视图
成本分析智能视图提供 KPI、异常洞察,以及从订阅到资源组到资源再到计量项的逐级深入;预留视图显示过去 30 天的摊销利用率。在 AVD 资源组上创建带警报的预算,在订阅上启用异常警报,并每周检查;Microsoft 建议在任何变更后的头一两周每天检查,而这正是新缩放计划上线的时候。
标记
用会话主机资源组和主机池上的标记按主机池对成本分组。在企业协议、Microsoft 客户协议和 Microsoft 合作伙伴协议账户上,开启标记继承,资源组和订阅标记就会在大约 24 小时内应用到子资源的使用记录;之后你就可以基于继承的标记构建筛选预算。动态自动缩放创建的主机会从会话主机配置继承 VM 标记,所以请在那里设置标记,而不是在单个 VM 上。
Insights 和自动缩放工作簿
Azure Virtual Desktop Insights 需要一个专用的 Log Analytics 工作区、主机池和工作区上的诊断设置,以及会话主机上带数据收集规则的 Azure Monitor 代理;位于 aka.ms/avdi 的配置工作簿会把这些全部设置好。把 Autoscale logs for pooled host pools 类别添加到主机池诊断设置中,Insights 里就会出现自动缩放选项卡,显示电源状态随时间的变化。底层表是 WVDAutoscaleEvaluationPooled,它为每次评估记录 SessionOccupancyPercent、ActiveSessionHostCount、计划阶段和 ScalingReasonMessage。这条查询能告诉你容量阈值和底线是否合适:
WVDAutoscaleEvaluationPooled
| where ResultType == "Succeeded"
| summarize max(SessionOccupancyPercent), max(SessionCount), max(ActiveSessionHostsPercent), max(ActiveSessionHostCount)
by _ResourceId, bin(TimeGenerated, 1d), ConfigScheduleName, ConfigSchedulePhase
| order by _ResourceId asc, TimeGenerated asc, ConfigScheduleName, ConfigSchedulePhase asc失败的评估通过 CorrelationId 与 WVDErrors 联接。个人池不能使用 Insights 选项卡;请把它们的自动缩放日志发送到存储账户或事件中心。
每月要审查什么
- 每个主机池的计算主机小时数与模型的对比,以及来自
WVDAutoscaleEvaluationPooled的按计划阶段划分的小时数。 - 每个阶段的
SessionOccupancyPercent峰值。如果它从未接近阈值,就提高阈值或降低最低主机百分比。 - 非高峰的
ActiveSessionHostCount。如果它高于底线,就找出占着主机的断开连接会话。 - 成本分析中的预留和节省计划利用率;预留上任何低于 100% 的部分都是你预付了却没用上的钱。
- 磁盘月数与主机数的对比;使用动态自动缩放时两者应当分离。
- 以 GB 计的 Log Analytics 引入量,它会随着你添加计数器而悄然增长。
- 会话主机配置中的映像版本,确保自动缩放不是在用旧版本创建主机。
该怎么做
- 从成本分析中按计量项导出上个月的 AVD 成本,填入七行成本项;记下计算项的百分比。
- 从 Insights 拉取 30 天的会话计数,计算你真实的并发比和真实的下班后会话数。
- 确认主机池管理方式。标准意味着电源管理自动缩放;会话主机配置意味着可以使用动态自动缩放。
- 根据你的工作负载类型和主机大小,按大小调整指南设置自定义
MaxSessionLimit;默认值会阻止自动缩放。 - 在订阅作用域分配 Desktop Virtualization Power On Off Contributor(动态还需要 Desktop Virtualization Virtual Machine Contributor)。
- 根据数据构建计划:在首次登录前 30 到 60 分钟开始爬坡上升,爬坡下降要比强制注销等待时间更长,如果下班后会话为零就把非高峰最低值设为 0%。
- 通过 Intune 或组策略部署 Set time limit for disconnected sessions,让主机池真正能降到底线。
- 在缩放计划中定义排除标记,并把它写进你的维护运行手册。
- 启用 Insights,添加自动缩放日志类别,两周后运行占用率查询;一次性调整阈值和底线。
- 到这一步才购买:为高于收支平衡利用率的主机购买预留,为其余部分购买节省计划,为任何 Windows Server 主机启用 Azure 混合权益,为将长期保留的配置文件存储购买 Azure 文件存储预留。
- 如果主机池使用会话主机配置,在新映像版本上测试临时 OS 磁盘,并让动态自动缩放来创建主机。
- 在资源组上设置预算和异常警报,并给会话主机配置打上标记,这样下一台被创建的主机就已经归属到成本中心。
常见问题
Azure Virtual Desktop 自动缩放能节省多少钱? 这取决于你的主机目前有多少小时是在为空无一人的环境运行。自动缩放本身不收费;FAQ 对“使用自动缩放会额外收费吗?”的回答是“不会”。在示例中,一个 32 台主机、每天运行 24 小时的池每月消耗 23,360 主机小时,而同一个池采用带 2 台主机底线的工作日计划后约为 8,000,计算项削减了大约三分之二。配置文件存储、许可和出口流量不会改变,所以总账单的节省比例小于计算项的节省比例。
AVD 中电源管理自动缩放和动态自动缩放有什么区别? 电源管理自动缩放开启和关闭(解除分配)主机,是标准管理主机池的方法。动态自动缩放还会创建和删除主机,并且只适用于带会话主机配置的池化主机池。两者使用相同的阶段、容量阈值和整合逻辑;区别在于最终动作,是解除分配还是删除,而这正是改变 OS 磁盘成本的地方。
我应该为自动缩放的 AVD 会话主机购买 Azure 预留吗? 只为每月大部分时间都在运行的主机购买。预留按小时应用,未使用的小时会作废,所以每月运行 h 小时的主机只有在 h ÷ 730 大于 1 减去折扣率时才能收回成本。为夜间底线和整个工作日都运行的主机购买预留,为可变层考虑节省计划,并记住两者都不覆盖 Windows 软件、存储或网络。
我可以在 AVD 自动缩放中使用临时 OS 磁盘吗? 不能与会解除分配的计划搭配。Learn 页面把临时 OS 磁盘的停止并解除分配和停止/启动标为不支持。它们适合动态自动缩放,后者根据会话主机配置创建和删除主机,并且可以消除无状态主机的 OS 磁盘存储费用。你需要带本地存储的 VM 大小,并且这些主机将无法使用 Azure 备份、Site Recovery 和磁盘快照。
为什么下班后没人工作,自动缩放仍让会话主机保持运行? 因为断开连接的会话也算。自动缩放假定断开连接的用户可能会重新连接,并按“所需主机数 = 会话总数 ÷(最大会话限制 × 容量阈值)”为他们保留运行中的主机。要降到零主机,就必须有零会话,包括断开连接的会话:设置 Set time limit for disconnected sessions,让它们在爬坡下降结束前注销,并把非高峰最低主机百分比设为 0%。
如果你在调优之前仍在决定 AVD 是否是某个用户群的正确平台,Windows 365 与 Azure Virtual Desktop 的比较涵盖了按用户固定价格的情形,而 Azure Virtual Desktop 新功能系列会在 Microsoft 发布自动缩放和会话主机配置的变化时持续跟踪。
需要多一双手吗?Big Hat Group 为美国和加拿大的组织提供 Azure Virtual Desktop 架构与成本审查服务,从为期两周的自动缩放健康检查到完整的主机池重新设计。预约一次探索通话,聊聊你的环境。
资料来源
- Autoscale scaling plans and example scenarios in Azure Virtual Desktop
- Create and assign an autoscale scaling plan for Azure Virtual Desktop
- Azure Virtual Desktop autoscale glossary
- Azure Virtual Desktop autoscale FAQ
- Host pool management approaches
- Licensing Azure Virtual Desktop
- Windows Enterprise multi-session FAQ
- Session host virtual machine sizing guidelines
- Remote Desktop Protocol bandwidth requirements
- Storage options for FSLogix profile containers in Azure Virtual Desktop
- Understand Azure Files billing
- Ephemeral OS disks for Azure VMs
- States and billing status of Azure Virtual Machines
- What are Azure Reservations?
- Virtual machine size flexibility with Reserved VM Instances
- What are Azure savings plans?
- Decide between a savings plan and a reservation
- Explore Azure Hybrid Benefit for Windows VMs
- On-demand capacity reservation in Azure
- Drain session hosts for maintenance in Azure Virtual Desktop
- Configure Start VM on Connect for Azure Virtual Desktop
- Enable Insights to monitor Azure Virtual Desktop
- Monitor Autoscale operations with Insights in Azure Virtual Desktop
- Set up diagnostics for Autoscale in Azure Virtual Desktop
- Quickstart: Start using Cost analysis
- Group and allocate costs using tag inheritance
- Azure Virtual Desktop pricing
- Azure Pricing Calculator
- Windows Virtual Machines pricing
- Managed Disks pricing
- Azure Files pricing
- Bandwidth pricing