如何排查卡在“待处理”状态的 AppStream 2.0 映像生成器问题?
当我尝试启动 Amazon AppStream 2.0 映像生成器时,状态停留在“待处理”状态,且不能更改为“正在运行”。
解决方法
映像生成器和实例集实例最多需要 25 分钟才能可用并变成“正在运行”状态。如果您的映像生成器在 25 分钟后仍处于“待处理”状态,请参阅以下常见原因和问题排查步骤。
注意:如果您在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请确保您使用的是最新版本的 AWS CLI。
弹性网络接口被删除或分离
缺少网络接口可能会使映像生成器无法完成启动工作流,从而使状态卡在待处理状态。
要验证您的网络接口的状态,请打开 Amazon Elastic Compute Cloud (Amazon EC2) 控制台,然后选择 Network Interfaces (网络接口)。或者,要使用 AWS CLI,请输入以下命令:
aws ec2 describe-network-interfaces --filters 'Name=description,Values="AppStream 2.0 - image-builder:*"'
如果网络接口缺少或分离,请从上一个工作映像启动一个新的映像生成器。或者,使用 AWS 提供的基础映像。
注意:您可以检查 AWS CloudTrail 日志中是否有与网络接口删除或分离相关的事件详细信息,包括 eventTime 和 userIdentity。
PowerShell 策略限制
映像生成器卡在“待处理”状态的另一个原因是 PowerShell 执行策略过于严格。在创建映像之前将此策略设置为 Restricted(受限)会导致映像生成器卡在“待处理”状态。此外,其他 AS2 资源在下次启动时将无法启动。这是由于 Restricted(受限)策略阻止任何脚本(例如 SSM、Sysprep 或 reg 密钥设置)运行。您可以改用 AllSigned 或 RemoteSigned 策略避免这个问题。
使用 AppX 软件包的应用程序
使用 AppX 软件包的应用程序(例如 Adobe Creative Cloud)可能会导致 Sysprep 失败,映像生成器卡在“待处理”状态。
在完成映像创建过程的最后一步之前,以管理员身份在 PowerShell 中运行以下命令。
要获取设备上 AppX 软件包的列表,请输入以下命令:
Get-AppxPackage | select Name, PackageFullName
要删除特定的 AppX 软件包,请输入以下命令。将 AppXpackageName 替换为您要删除的软件包,如上一个命令的输出中所列:
Get-AppxPackage -AllUsers -Name AppXpackageName | Remove-AppxPackage -AllUsers
注意:映像生成器必须运行 Server 2019。-AllUsers 参数是在版本 1709 中添加的。映像生成器中的 Server 2016 在版本 1607 上运行,并返回带有 -AllUsers 参数的错误。
有关更多信息,请参阅 Microsoft 网站上的 Get-AppxPackage。
设备驱动程序冲突或不正确
映像生成器预安装了所有必要的驱动程序。如果用户安装冲突或不正确的驱动程序,映像生成器可能会停留在“待处理”状态。
由于映像生成器无法到达,无法卸载冲突或不正确的驱动程序。要修复这一问题,请从最近的自定义映像中或者使用 Amazon 提供的其中一个基础映像启动新的映像生成器。
网络接口限制
您的 AWS 账户可能已达到该区域的网络接口限制。有关限制和如何请求增加数量的更多信息,请参阅 Amazon VPC 限额。
Sysprep 答案文件自定义问题
最佳实践是不自定义 Sysprep Unattend 答案文件。不正确的自定义可能会阻止映像生成器正确启动并卡在欢迎屏幕上,从而干扰 Windows 启动过程。
要修复这一问题,请从最近的自定义映像中或者使用 Amazon 提供的其中一个基础映像启动新的映像生成器。
IPv6 已关闭
如果您在关闭 IPv6 的情况下创建映像,映像生成器将停留在“待处理”状态。要修复这一问题,请从最近的自定义映像中或者使用 Amazon 提供的其中一个基础映像启动新的映像生成器。
端口可用性
确认没有使用以下端口安装任何应用程序:
- 端口 8300 上的入站 TCP,用于建立流式处理连接。
- 端口 8000 和 8443 上的入站 TCP,用于通过 AppStream 2.0 管理流式处理实例。
有关更多信息,请参阅管理网络接口 IP 地址范围和端口。
要允许访问 Amazon EC2 元数据服务,所有流式处理实例都要求端口 80(HTTP)对 IP 地址 169.254.169.254 开放。如果配置了代理,该代理必须排除 169.254.169.254。有关详细信息,请参阅客户网络接口端口。
杀毒软件异常
杀毒软件可以阻止映像生成器需要的文件和端口。考虑在以下文件夹路径中添加异常情况:
- %PROGRAMFILES%\Amazon\*
- %PROGRAMFILES%\NICE\*
- %PROGRAMFILES%\nodejs\*
- %PROGRAMFILES%\Internet Explorer\*
- C:\Windows\*
这些文件夹路径与以下服务相对应:
- AWSLiteAgent
- AmazonSSMAgent
- Ec2Config
- PhotonAgent
- PhotonAgentWebServer(侦听端口 8443)
- DcvServer(侦听端口 8300)
- QWAVE
AWS CLI 凭证作为系统环境变量
将 AWS CLI 凭证设置为系统环境变量可以防止 AppStream 2.0 创建映像。有关更改您的队列实例间的系统环境变量的说明,请参阅更改系统环境变量。
默认语言被更改为不受支持的语言
您可以为您的 AppStream 2.0 流式处理会话配置默认的区域设置,包括显示语言。如果您将默认语言更改为不支持的语言,映像生成器将卡在“待处理”状态。要查看 AppStream 2.0 目前支持的语言,请参阅指定默认显示语言。
已删除或重命名本地管理员账户
AppStream 2.0 不支持重命名或删除本地管理员账户。如果重命名或删除此账户,映像创建将会失败。
对于加入域的映像生成器,如果组策略已停用、删除或重命名本地管理员账户,则可以更新组策略对象 (GPO)。
如果 GPO 未更新本地管理员账户,则从最近的自定义映像启动新的映像生成器。或者,使用 Amazon 提供的基础映像。
通知代码(加入域的映像生成器)
要查看通知,请打开 AppStream 2.0 控制台,然后从导航窗格中选择 Images (映像)。从 Image Builder (映像生成器) 选项卡中,选择您的映像生成器,然后选择 Notifications (通知) 选项卡。有关更多信息,请参阅通知代码问题排查。
- DOMAIN_JOIN_ERROR_NO_SUCH_DOMAIN 映像生成器实例无法连接 Active Directory 域。这将阻止映像生成器完成启动工作流。为确保网络连接,确认您的 VPC、子网和安全组设置。在 VPC 的 DHCP 选项集部分下确认 VPC DNS 服务器配置正确。域名服务器通常设置为负责您的域的域控制器或 DNS 服务器的 IP 地址。有关更多信息,请参阅 DHCP 选项集。
- DOMAIN_JOIN_ERROR_FILE_NOT_FOUND 组织单位(OU)识别名无效。AppStream 2.0 计算机对象必须放置在一个组织单位中,且识别名必须以 OU= 开头。有关更多信息,请参阅查找组织单位识别名。
防火墙和网络配置(加入域的映像生成器)
使用 AppStream 2.0 控制台在您的映像生成器中添加目录配置对象之前,确认防火墙和网络配置正确。然后执行以下步骤。
1. 从您的映像生成器中打开 PowerShell 窗口,然后运行以下命令:
Test-NetConnection -ComputerName yourdomain.exampleco.com -Port 389 -InformationLevel "Detailed" Test-NetConnection -ComputerName yourdomain.exampleco.com -Port 88 -InformationLevel "Detailed" Test-NetConnection -ComputerName yourdomain.exampleco.com -Port 53 -InformationLevel "Detailed"
2. 对于每个命令的输出,请验证 TcpTestSucceeded 为 True。这表示您可以达到所需的端口来加入域。有关详细信息,请参阅 Microsoft 网站上的 Test-NetConnection。
3. 从相同的 PowerShell 窗口中,运行 Resolve-DnsName 命令以确认您可以查找域名:
Resolve-DnsName -Name yourdomain.exampleco.com
或者,下载并运行 Microsoft PortQryUI 工具以验证所有需要的端口。
新的计算机对象未创建(加入域的映像生成器)
在 Active Directory 中,验证是否已在正确的组织单位(OU)中创建了新的计算机对象。
如果有新对象,则映像生成器实例很快将可用。
如果计算机对象未创建,则映像生成器将停留在“待处理”状态。要排查此问题,请先确认已授予所有必需的服务账户权限。然后,验证 AppStream 2.0 Directory Config 对象中的以下目录配置详细信息正确:
- 目录名称(目录的完全限定域名)
- 服务账户用户名和密码
- 组织单位(OU)识别名
相关信息
相关内容
- AWS 官方已更新 1 年前
- AWS 官方已更新 2 年前
- AWS 官方已更新 2 年前