排查系统服务器测试问题

若要排查 Windows Hardware Lab Kit (Windows HLK) System.Server 测试时发生的问题,请按照本文中所述的步骤操作。

本文内容:

常规系统服务器故障排除

  1. 有关服务器测试的帮助,请查看以下主题:

  2. 对于服务器设备和驱动程序测试,请确保受测系统 (SUT) 配置如下:

    • 已安装正确的 Windows 版本。

    • 已安装“服务器核心”选项。

    • SUT 至少具有四个核心\逻辑处理器。

    • SUT 至少安装了 6 GB RAM。

    • 对于存储设备测试,如果存储设备是启动设备,可能需要具有存储驱动器的两个设备实例。

  3. 如果收到 Windows HLK Studio 无法向项目添加目标的错误,请重新选择目标,关闭 Windows HLK Studio,然后重启 Windows HLK Studio。 此错误表示未刷新数据。

  4. Sysparse 进程直接运行收集器 DLL。 第二个过程“资产配置管理器引擎 (ACME)”监视硬件更改,如果发生一个或多个硬件更改,它会向系统发出警报。 ACME 在启动订阅的收集器之前会一直等待,直到发生超时或频繁的硬件更改报告停止。

    某些测试会在整个测试运行过程中导致硬件更改。 这将导致 Sysparse 定期运行。 Sysparse 可能会消耗大量内存,这是由运行和收集数据的收集器引起的。 Sysparse 不应干扰测试,因为在大多数情况下,测试不会验证性能。

  5. 请确保安装了 Windows HLK Controller 的系统有足够的硬件功能来满足测试需求。 有关这些硬件要求的说明,请参阅 Windows HLK 先决条件。 随着受测设备和系统数量的增加,可能需要添加更多处理器、内存或存储。

排查失败的系统服务器测试问题

如果测试失败,请执行以下步骤:

  1. 如果失败发生在测试启动的几分钟内,这通常意味着未正确配置某些内容。 请重新确认已正确设置测试环境。

  2. 如果测试运行,则 Windows HLK Controller 中应有名为“Srvlog.xml”的日志文件。 执行以下步骤:

    1. 在 Windows HLK Studio 中,打开“作业监视器”。

    2. 浏览到计划测试的计算机池。

    3. 在“作业执行状态”窗格中,选择“Loadgen Server 压力 - 为服务器启动测试”。

    4. 在“任务执行状态”窗格中,右键单击“运行作业 - 启动服务器徽标工具包”,然后选择“子作业结果”。

    5. 返回“作业执行状态”窗格,然后选择“启动服务器徽标工具包”。

    6. 在“任务执行状态”窗格中,右键单击“启动 LogGen 任务”,然后选择“查看任务日志”。 日志从原始 Loadgen 日志解析而来,仅包含错误和通过信息。

    7. 若要检索原始 Loadgen 文本日志,请重复步骤 1-5,然后右键单击“启动服务器徽标工具包”,然后选择“浏览作业日志”。 这会在 Windows HLK Controller 上打开日志共享;Loadgen 日志文件 srv.log 位于共享中。

    8. 将 srv.log 文件拖放到记事本。

    9. 在记事本中,滚动到文件底部。

    10. 从底部向上搜索字符串“Error -”。 同一行中的文本将描述失败。 可能需要进行多次搜索才能找出失败的原因。 日志文件中的信息仅提供失败内容的概要指示。

Loadgen 请求更多客户端

如果现有客户端无法对 SUT 带来足够的压力,Loadgen 会要求增加更多压力客户端 (SC)。 此功能旨在适应大型服务器,以及某些 SC 在运行中发生故障的可能性。 一般情况下,应从八个 SC 开始。 压力级别应在测试的前三到四小时内保持稳定。 如果需要更多客户端,通常会在该时间范围内的主控制器 (MC) 中看到弹出窗口。 你有 60 分钟的时间来添加新客户端,否则测试将终止并失败。

注意

提交开始后,无法向计算机池添加更多计算机。 如果使用少于 8 个客户端启动测试,请确保在开始测试之前计算机池中有额外的客户端。

如果 Loadgen 在四小时的测试后要求更多客户端,这可能意味着某些内容已失败。 一个或多个现有客户端已退出、发生网络连接问题或另一个问题阻止 SUT 感知所需的 40% 利用率负载。 这可能是 NIC 驱动程序与网络速度相结合的问题,或者是驱动程序实现 Loadgen MC 所依赖的性能监视器计数器的问题。

在这种情况下,请尝试以下故障排除步骤:

  1. 若要排除 NIC 中的暂时性硬件故障,请使用相同型号和制造商的不同 NIC。

  2. 使用同一制造商不同的型号 NIC,但使用相同的驱动程序。

  3. 使用不同制造商的 NIC 和驱动程序。

  4. 如果一个或多个 NIC 直接安装在系统主板上,请进入硬件系统设置并在该级别禁用 NIC,以便 Windows 不会检测到它;然后使用其他设备和驱动程序进行测试。

  5. 如果多个 NIC 直接安装在系统主板上,并且无法将其他设备安装到 PCI Express 插槽中,请进入硬件系统设置并禁用除其中一个 NIC 以外的所有 NIC,以便 Windows 不会检测到它们。

注意

测试期间必须对每个检测到的 NIC 施加压力。 这要求每个 NIC 在单独的物理网段上都有 SC。

内置有高级功能的交换机可能会以各种方式干扰测试。 例如:

  • 如果交换机在一个端口上检测到丢包或其他错误,则它可以减慢交换机中端口的速度。 如果 SUT 上的 10GigE NIC 旨在接收由于所有端口降速至 1 GigE 而产生的流量,则 Loadgen 测试无法达到通过测试所需的 40% 网络带宽利用率级别。

  • 交换机可以路由流量或对网络进行分段,以响应交换机内部的规则和逻辑(例如负载均衡、冗余、服务质量 (QoS)、镜像、双工以及 simplex 操作、自适应或智能桥接、端口优先级或 MAC 筛选),这些规则和逻辑会影响 NIC 上的网络带宽利用率级别。

Error=0x80004005

如果收到以下错误:“Main::RunMain:: 测试检查,Spsrv 停止并且未通过所需的通过百分比 (100) (Error=0x80004005)”。 在这种情况下,请执行以下步骤:

  1. 关闭 Windows HLK Studio。

  2. 将 SUT 计算机名称更改为 15 个字符或更少。

  3. 重新启动 SUT。

  4. 打开 Windows HLK Studio,然后重新运行“LoadGen 服务器压力 - 为服务器启动测试”测试。

服务器压力测试

执行服务器压力测试时,请确保将 SUT 连接到 SC 的网络基础结构和 MC 可以在 SUT 中的网络接口卡 (NIC) 级别执行。 如果 SUT 具有一个或多个 10GigE NIC,则 SC 和网络基础结构必须满足该性能级别。

请确保连接 DHCP、DNS、Active Directory、Windows HLK Controller、Windows HLK Studio、SUT、SC 和 MC 的网络基础结构正常运行。 所有系统都必须使用主机名或 IP 地址相互通信。 可以使用简单的 ping 测试来确认这一点。

确保 DHCP、DNS 和 Active Directory 服务器正常工作。 不应有陈旧的 DNS 记录。 DHCP 服务器应有权在网络上运行、配置必须正确、DHCP 作用域必须正确、不能有不正确的多宿主,并且 DHCP 系统事件日志中不应有任何错误。 Active Directory 域控制器应不报告任何错误,并且必须在所有系统之间同步时间服务。

在测试环境中使用虚拟机 (VM)

VM 中的 DHCP、DNS、AD 和 其他系统没有已知问题。 在 VM 中运行 SC 可能会出现问题。 这些问题通常与网络带宽负载生成有关。 若要避免出现问题,请确保设置以下配置:

  • 每个 SC VM 都必须有一个专用的物理 NIC,以便将负载置于连接到 SUT NIC 的网络上。

  • 至少需要有与 SC VM 关联的物理 NIC,这些 NIC 的带宽至少是 SUT NIC 最大带宽的两倍。

  • 请确保用于 SC VM 的物理系统不会因 CPU 使用率过高而过载,并且所有 VM 都有足够的物理内存。

System.Server 测试