如何排查卡在待处理状态的 AppStream 2.0 映像生成器问题?

上次更新时间:2020 年 6 月 30 日

当我尝试启动 Amazon AppStream 2.0 映像生成器时,状态停留在待处理状态,且不能更改为“正在运行”。如何解决此问题? 

解决方法

映像生成器和队列实例最多需要 25 分钟才能可用并变成“正在运行”状态。如果您的映像生成器在 25 分钟后仍处于待处理状态,请参阅以下常见原因和故障排除步骤。

弹性网络接口被删除或分离

缺少网络接口可能会使映像生成器无法完成启动工作流,从而使状态卡在待处理状态。

要验证您的网络接口的状态,请打开 Amazon Elastic Compute Cloud (Amazon EC2) 控制台,然后从导航窗格中选择网络接口。或者,要使用 AWS 命令行界面 (AWS CLI),请输入以下命令:

aws ec2 describe-network-interfaces --filters 'Name=description,Values="AppStream 2.0 - image-builder:*'

如果网络接口缺少或分离,请从上一个工作映像或 AWS 提供的基础映像中启动一个新的映像生成器。

注意:您可以检查 AWS CloudTrail 日志中是否有与网络接口删除或分离相关的事件详细信息,包括 eventTime 和 userIdentity。

设备驱动程序冲突或不正确

映像生成器预安装了所有必要的驱动程序。如果用户安装冲突或不正确的驱动程序,映像生成器可能会停留在“待处理”状态。

由于映像生成器无法到达,无法卸载冲突或不正确的驱动程序。要修复这一问题,请从最近的自定义映像中或者使用 Amazon 提供的其中一个基础映像启动新的映像生成器

网络接口限制

您的 Amazon Web Services (AWS) 账户可能已达到该区域的网络接口限制。有关限制和如何请求增加数量的更多信息,请参阅 Amazon VPC 配额

Sysprep 答案文件自定义问题

最佳实践是不自定义 sysprep Unattend 答案文件。不正确的自定义可能会阻止映像生成器正确启动并卡在欢迎屏幕上,从而干扰 Windows 启动过程。

要修复这一问题,请从最近的自定义映像中或者使用 Amazon 提供的其中一个基础映像启动新的映像生成器

IPv6 已禁用

如果您在禁用 IPv6 的情况下创建映像,映像生成器将停留在“待处理”状态。要修复这一问题,请从最近的自定义映像中或者使用 Amazon 提供的其中一个基础映像启动新的映像生成器

基础映像兼容性

确认您没有使用图形设计 (AMD) 基础映像启动新的 Graphics Pro (NVIDIA) 映像生成器,反之亦然。有关更多信息,请参阅 AppStream 2.0 基础映像版本历史记录

端口可用性

确认没有使用以下端口安装任何应用程序:

  • 端口 8300 上的入站 TCP,用于建立流式处理连接。
  • 端口 8000 和 8443 上的入站 TCP,用于通过 AppStream 2.0 管理流式处理实例。

有关更多信息,请参阅管理网络接口 IP 地址范围和端口

杀毒软件异常

杀毒软件可以阻止映像生成器需要的文件和端口。考虑在以下文件夹路径中添加异常情况:

  • %PROGRAMFILES%\Amazon\*
  • %PROGRAMFILES%\NICE\*
  • %PROGRAMFILES%\nodejs\*
  • %PROGRAMFILES%\Internet Explorer\*
  • C:\Windows\*

上述文件夹路径与以下服务相对应:

  • AWSLiteAgent
  • AmazonSSMAgent
  • Ec2Config
  • PhotonAgent
  • PhotonAgentWebServer(侦听端口 8443)
  • DcvServer(侦听端口 8300)
  • QWAVE

AWS 命令行界面 (AWS CLI) 凭证作为系统环境变量

将 AWS CLI 凭证设置为系统环境变量可以防止 AppStream 2.0 创建映像。有关更改您的队列实例间的系统环境变量的说明,请参阅更改系统环境变量

默认语言被更改为不受支持的语言

您可以为您的 AppStream 2.0 流式处理会话配置默认的区域设置,包括显示语言。如果您将默认语言更改为不支持的语言,映像生成器将卡在“待处理”状态。要查看 AppStream 2.0 目前支持的语言,请参阅指定默认显示语言

通知代码(加入域的映像生成器)

要查看通知,请打开 AppStream 2.0 控制台,然后从导航窗格中选择映像。从映像生成器选项卡中,选择您的映像生成器,然后选择通知选项卡。有关更多信息,请参阅通知代码问题排查

  • 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。这表示您可以达到所需的端口来加入域。有关更多信息,请参阅 Test-NetConnection

3.    从相同的 PowerShell 窗口中,运行 Resolve-DnsName 命令以确认您可以查找域名:

Resolve-DnsName -Name yourdomain.exampleco.com

或者,下载并运行 Microsoft PortQryUI 工具以验证所有需要的端口。

新的计算机对象未创建(加入域的映像生成器)

在 Active Directory 中,验证是否已在正确的组织单位 (OU) 中创建了新的计算机对象。

如果有新对象,则映像生成器实例很快将可用。

如果计算机对象未创建,则映像生成器将停留在“待处理”状态。要排查此问题,请先确认已授予所有必需的服务账户权限。然后,验证 AppStream 2.0 Directory Config 对象中的以下目录配置详细信息正确:

  • 目录名称(目录的完全限定域名)
  • 服务账户用户名和密码
  • 组织单位 (OU) 识别名

这篇文章对您有帮助吗?

我们可以改进什么?


需要更多帮助?