You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用通用Compute Gallery镜像创建VM时未加入主机池会话主机

通用化镜像创建VM未加入主机池会话主机的问题排查与解决

问题概述

先创建包含单台VM的主机池,基于该VM制作通用化镜像后,用此镜像创建新VM成功,但新VM未自动添加至原主机池的会话主机列表。制作镜像的步骤为:

  • 安装所有可用更新
  • 运行磁盘清理工具
  • 退出Azure AD
  • 将VM从主机池中移除
  • 运行Sysprep通用化VM
  • 在Compute Gallery中捕获镜像

核心原因

  1. 制作镜像前已将VM从主机池中移除,镜像本身不会保留原主机池的关联配置,因此新VM创建后无自动关联逻辑。
  2. Sysprep通用化操作会重置系统的所有个性化配置,包括主机池的注册信息,导致新VM无法自动识别原主机池。

解决方案

方案1:手动添加会话主机

直接在Azure门户完成关联操作:

  • 进入目标主机池的「会话主机」选项卡
  • 点击「添加」按钮,选择刚创建的VM,完成添加流程

方案2:优化流程实现自动注册

方法A:使用Azure Virtual Desktop注册扩展

创建VM时,在「高级配置」中添加「Virtual Desktop注册」扩展:

  • 配置租户ID、主机池ID等必要参数
  • 扩展会在VM启动后自动完成主机池注册,无需手动操作

方法B:在镜像中预置注册脚本

在Sysprep通用化前,添加启动自动执行的PowerShell脚本,实现VM创建后自动注册:

# 替换为你的租户名和主机池名
$tenantName = "你的Azure AD租户名"
$hostPoolName = "目标主机池名称"
$sessionHost = $env:COMPUTERNAME + "." + $env:USERDNSDOMAIN

# 注册到主机池
Add-RdsSessionHost -TenantName $tenantName -HostPoolName $hostPoolName -SessionHost $sessionHost -AcceptMessage
  • 将脚本设置为系统启动时自动运行(可通过组策略或任务计划实现)
  • 确保VM拥有执行该命令的权限(建议使用托管身份)

方案3:优化镜像制作步骤的细节

  • 退出Azure AD的操作合理,但新VM创建后需重新加入Azure AD或域,可在镜像中预置自动加入脚本,避免手动操作
  • 捕获镜像时务必确认选择「通用化」类型,防止后续VM创建出现配置冲突

内容的提问来源于stack exchange,提问作者DHARMENDAR PARMAR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 23:32:43