你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

排除 Azure 运营商关系群集的硬件验证故障

本文介绍如何排除服务器硬件验证 (HWV) 故障。 HWV 在群集部署操作和裸机 replace 操作期间运行。 HWV 通过针对基板管理控制器 (BMC) 执行测试用例来验证裸机 (BMM)。 Azure 运营商关系平台部署在 Dell 服务器上。 Dell 服务器使用集成式 Dell 远程访问控制器 (iDRAC),该控制器相当于 BMC。

先决条件

  1. 安装最新版本的相应 CLI 扩展
  2. 请求访问权限以运行 Azure Operator Nexus 网络结构(NF)和网络云 CLI 扩展命令。
  3. 登录到 Azure CLI 并选择部署群集的订阅。
  4. 收集以下信息:
    • 订阅 ID (SUBSCRIPTION)
    • 群集名称 (CLUSTER)
    • 资源组 (CLUSTER_RG)
    • 受管理资源组 (CLUSTER_MRG) - 裸机 (BMM) 资源存在于受管理资源组中
    • 需要生命周期管理操作的裸机名称 (BMM_NAME)
  1. 请求访问该群集的 Log Analytics 工作区 (LAW)。
  2. 访问 BMC Web UI 或允许运行 racadm 实用工具的 Jumpbox。

查找硬件验证结果

如果在裸机 (BMM) Replace 操作期间硬件验证失败,则详细的错误结果应在 Replace 操作结果和 BMM 活动日志中提供。 有关详细信息,请参阅更换裸机

否则,请在群集 Log Analytics 工作区(LAW)中找到硬件验证结果,如下所示。

  1. 转到订阅中的群集资源组。

  2. 展开群集的群集 LAW 资源。

  3. 转到“日志”#### 选项卡。

  4. 在以下示例中,使用针对 HWVal_CL 表的查询提取硬件验证结果:

    显示群集 LAW 自定义表查询的屏幕截图。

检查硬件验证结果

特定服务器的 HWV 结果包含以下类别:

  • system_info
  • drive_info
  • network_info
  • health_info
  • boot_info

展开特定类别的 result_detail,查看详细结果。

排除特定故障

本部分介绍如何排除可能遇到的问题。

系统信息类别

版本中定义了内存规格。 内存低于阈值表示双列直插式内存模块 (DIMM) 缺失或发生故障。 发生故障的 DIMM 也会反映在 health_info 类别中。 以下示例显示了内存检查失败。

{
  "field_name": "memory_capacity_GB",
  "comparison_result": "Fail",
  "expected": "512",
  "fetched": "480"
}

若要检查 BMC Web UI 中的内存信息,请遵循导航路径 BMC ->System ->Memory.

使用 racadm 检查内存信息:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD hwinventory | grep SysMemTotalSize

若要排除内存问题,请联系供应商。

版本中定义了 CPU 规格。 cpu_sockets 检查失败表示 CPU 故障或 CPU 计数不匹配。 以下示例显示了 CPU 检查失败。

{
  "field_name": "cpu_sockets",
  "comparison_result": "Fail",
  "expected": "2",
  "fetched": "1"
}

若要检查 BMC Web UI 中的 CPU 信息,请遵循导航路径 BMC ->System ->CPU.

使用 racadm 检查 CPU 信息:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD hwinventory | grep PopulatedCPUSockets

若要排除 CPU 问题,请联系供应商。

模型检查失败 (Model)

Model 检查失败表示槽中安装了错误的服务器或布线不匹配。 以下示例显示了型号检查失败。

{
  "field_name": "Model",
  "comparison_result": "Fail",
  "expected": "R750",
  "fetched": "R650"
}

若要检查 BMC Web UI 中的模型信息,请遵循导航路径 BMC ->Dashboard - 显示模型。

使用 racadm 检查型号信息:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD getsysinfo | grep Model

若要排除此问题,请确保服务器安装在正确的位置,进行了相应的布线,并分配了正确的 IP。

序列号检查失败 (Serial_Number)

群集中定义服务器的序列号(也称为服务标记)。 Serial_Number 检查失败表示群集中的序列号与计算机的实际序列号不匹配。 以下示例显示了序列号检查失败。

{
  "field_name": "Serial_Number",
  "comparison_result": "Fail",
  "expected": "1234567",
  "fetched": "7654321"
}

若要检查 BMC Web UI 中的序列号信息,请遵循导航路径 BMC ->Dashboard - 显示服务标记。

使用 racadm 检查序列号信息:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD getsysinfo | grep "Service Tag"

若要排除此问题,请确保服务器安装在正确的位置,进行了相应的布线,并分配了正确的 IP。

iDRAC 许可证检查失败

所有 iDRAC 都需要永久性/生产性 iDRAC 数据中心或企业许可证。 试用版许可证有效期仅为 30 天。 iDRAC License Check失败表示缺少所需的 iDRAC 许可证。 以下示例分别显示了在使用试用版许可证的情况下和许可证缺失的情况下出现的 iDRAC 许可证检查失败问题。

{
  "field_name": "iDRAC License Check",
  "comparison_result": "Fail",
  "expected": "idrac9 x5 datacenter license or idrac9 x5 enterprise license - perpetual or production",
  "fetched": "iDRAC9 x5 Datacenter Trial License - Trial"
}
{
  "field_name": "iDRAC License Check",
  "comparison_result": "Fail",
  "expected": "idrac9 x5 datacenter license or idrac9 x5 enterprise license - perpetual or production",
  "fetched": ""
}

若要排除此问题,请与供应商联系以获取正确的许可证。 在以下导航路径 BMC>Configuration ->Licenses 中,使用 iDRAC Web UI 应用许可证。

固件版本检查

固件版本检查已在 3.9 版中引入。 以下示例显示 3.9 之前的发布版本的预期日志。

{
  "system_info": {
    "system_info_result": "Pass",
    "result_log": ["Firmware validation not supported in release 3.8"]
  }
}

固件版本根据群集对象中的 cluster version 值确定。 以下示例显示由于群集版本不确定而导致的检查失败问题。 如果遇到此问题,请验证群集对象中的版本。

{
  "system_info": {
    "system_info_result": "Fail",
    "result_log": ["Unable to determine firmware release"]
  }
}

固件版本记录为信息性版本。 通常会记录以下组件固件版本(具体取决于硬件型号)。

  • BIOS
  • iDRAC
  • 复杂可编程逻辑器件 (CPLD)
  • 独立磁盘冗余阵列 (RAID) 控制器
  • 底板

HWV 框架可标识存在问题的固件版本并尝试自动修复。 以下示例显示成功完成的 iDRAC 固件修复。 (版本和任务 ID 仅用于演示。)

{
  "system_info": {
    "system_info_result": "Pass",
    "result_detail": [
      {
        "field_name": "Integrated Dell Remote Access Controller - unsupported_firmware_check",
        "comparison_result": "Pass",
        "expected": "6.00.30.00 - unsupported_firmware",
        "fetched": "7.10.30.00"
      }
    ],
    "result_log": [
      "Firmware autofix task /redfish/v1/TaskService/Tasks/JID_274085357727 completed"
    ]
  }
}

驱动器信息类别

磁盘检查失败

版本中定义了驱动器规格。 容量值不匹配表示驱动器不正确或驱动器插入到错误的槽中。 缺少容量和类型提取值表示驱动器故障、缺失或插入到错误的槽中。

{
  "field_name": "Disk_0_Capacity_GB",
  "comparison_result": "Fail",
  "expected": "893",
  "fetched": "3576"
}
{
  "field_name": "Disk_0_Capacity_GB",
  "comparison_result": "Fail",
  "expected": "893",
  "fetched": ""
}
{
  "field_name": "Disk_0_Type",
  "comparison_result": "Fail",
  "expected": "SSD",
  "fetched": ""
}

若要检查 BMC Web UI 中的磁盘信息,请遵循导航路径 BMC ->Storage ->Physical Disks.

使用 racadm 检查磁盘信息:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD raid get pdisks -o -p State,Size

若要进行故障排除,请确保磁盘插入正确的槽中。 如果问题持续出现,请联系供应商。

网络信息类别

网络接口卡 (NIC) 检查失败

版本中定义了 Dell 服务器 NIC 规格。 链路状态不匹配表示布线松散或有故障,或者使用了交叉电缆。 型号不匹配表示槽中插入了错误的 NIC 卡。 缺少链接或型号提取值表示 NIC 故障、缺失或插入到错误的槽中。

{
  "field_name": "NIC.Slot.3-1-1_LinkStatus",
  "comparison_result": "Fail",
  "expected": "Up",
  "fetched": "Down"
}
{
  "field_name": "NIC.Embedded.2-1-1_LinkStatus",
  "comparison_result": "Fail",
  "expected": "Down",
  "fetched": "Up"
}
{
  "field_name": "NIC.Slot.3-1-1_Model",
  "comparison_result": "Fail",
  "expected": "ConnectX-6",
  "fetched": "BCM5720"
}
{
  "field_name": "NIC.Slot.3-1-1_LinkStatus",
  "comparison_result": "Fail",
  "expected": "Up",
  "fetched": ""
}
{
  "field_name": "NIC.Slot.3-1-1_Model",
  "comparison_result": "Fail",
  "expected": "ConnectX-6",
  "fetched": ""
}

若要检查 BMC Web UI 中的 NIC 信息,请遵循导航路径 BMC ->System ->Network Devices.

使用 racadm 检查所有 NIC 信息:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD hwinventory NIC

若要使用 racadm 检查特定 NIC,请提供完全限定的设备描述符:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD hwinventory NIC.Embedded.1-1-1

为了排除故障,请确保服务器电缆连接正确且端口已连接。 在结构上设置反弹端口。 执行弱电释放。 如果问题持续出现,请联系供应商。

NIC 检查第 2 层交换机信息

HWV 报告每个服务器接口的第 2 层交换机信息。 交换机连接 ID(交换机接口 MAC)和交换机端口连接 ID(交换机接口标签)是信息性的。

{
  "field_name": "NIC.Slot.3-1-1_SwitchConnectionID",
  "comparison_result": "Info",
  "expected": "unknown",
  "fetched": "c0:d6:82:23:0c:7d"
}
{
  "field_name": "NIC.Slot.3-1-1_SwitchPortConnectionID",
  "comparison_result": "Info",
  "expected": "unknown",
  "fetched": "Ethernet10/1"
}

绑定接口的布线检查

result_log 中报告布线不匹配。 电缆检查可验证绑定的 NIC 是否连接到具有相同端口 ID 的交换机端口。 在以下示例中,外围组件互连 (PCI) 3/1 和 3/2 分别连接到 TOR 上的 Ethernet1/1Ethernet1/3,从而触发 HWV 故障。

{
  "network_info": {
    "network_info_result": "Fail",
    "result_detail": [
      {
        "field_name": "NIC.Slot.3-1-1_SwitchPortConnectionID",
        "fetched": "Ethernet1/1"
      },
      {
        "field_name": "NIC.Slot.3-2-1_SwitchPortConnectionID",
        "fetched": "Ethernet1/3"
      }
    ],
    "result_log": [
      "Cabling problem detected on PCI Slot 3 - server NIC.Slot.3-1-1 connected to switch Ethernet1/1 - server NIC.Slot.3-2-1 connected to switch Ethernet1/3"
    ]
  }
}

若要解决此问题,请将电缆插入正确的接口。

iDRAC (BMC) MAC 地址检查失败

iDRAC MAC 地址在每个裸机的群集中定义。 iDRAC_MAC 检查失败表示群集中的 iDRAC/BMC MAC 与从计算机中检索到的实际 MAC 地址不匹配。

{
  "field_name": "iDRAC_MAC",
  "comparison_result": "Fail",
  "expected": "aa:bb:cc:dd:ee:ff",
  "fetched": "aa:bb:cc:dd:ee:gg"
}

若要排除此问题,请确保在群集中定义了正确的 MAC 地址。 如果群集对象中的 MAC 正确,请尝试执行弱电释放。 如果问题仍然存在,请确保服务器安装在正确的位置,进行了相应的布线,并分配了正确的 IP。

预启动执行环境 (PXE) MAC 地址检查失败

PXE MAC 地址在每个裸机的群集中定义。 PXE_MAC 检查失败表示群集中的 PXE MAC 与从计算机中检索到的实际 MAC 地址不匹配。

{
  "field_name": "NIC.Embedded.1-1_PXE_MAC",
  "comparison_result": "Fail",
  "expected": "aa:bb:cc:dd:ee:ff",
  "fetched": "aa:bb:cc:dd:ee:gg"
}

若要排除此问题,请确保在群集中定义了正确的 MAC 地址。 如果群集对象中的 MAC 正确,请尝试执行弱电释放。 如果问题仍然存在,请确保服务器安装在正确的位置,进行了相应的布线,并分配了正确的 IP。

健康信息类别

运行状况检查传感器故障

服务器运行状况检查涵盖各种硬件组件传感器。 运行状况传感器故障表明相应的硬件组件存在问题。 以下示例分别表示风扇、驱动器和 CPU 故障。

{
  "field_name": "System Board Fan1A",
  "comparison_result": "Fail",
  "expected": "Enabled-OK",
  "fetched": "Enabled-Critical"
}
{
  "field_name": "Solid State Disk 0:1:1",
  "comparison_result": "Fail",
  "expected": "Enabled-OK",
  "fetched": "Enabled-Critical"
}
{
  "field_name": "CPU.Socket.1",
  "comparison_result": "Fail",
  "expected": "Enabled-OK",
  "fetched": "Enabled-Critical"
}

若要检查 BMC Web UI 中的运行状况信息,请遵循导航路径 BMC ->Dashboard - 显示运行状况信息。

若要使用 racadm 检查运行状况信息,请执行以下操作:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD getsensorinfo

若要排除服务器运行状况故障,请联系供应商。

运行状况检查生命周期 (LC) 日志故障

Dell 服务器运行状况检查因最近出现的 LC 日志严重警报而失败。 硬件验证插件会记录警报 ID、名称和时间戳。 最近的严重警报表明需要进一步的调查。 以下示例显示了底板电压临界报警故障。

{
  "field_name": "LCLog_Critical_Alarms",
  "comparison_result": "Fail",
  "expected": "No Critical Errors",
  "fetched": "53539 2023-07-22T23:44:06-05:00 The system board BP1 PG voltage is outside of range."
}
  • 虚拟磁盘错误通常是 RAID 清理误报。 如果在进行 HWV 之前清理 RAID 并关闭系统,系统就会记录此错误。 以下示例显示虚拟磁盘 238 上的 LC 日志严重错误。 如果遇到多个错误而无法部署,请删除群集,等待两个小时,然后重新尝试部署群集。 如果故障不影响部署,请等待两个小时,然后运行裸机 replace
  • 从版本 3.13 开始,虚拟磁盘错误已列于允许的错误列表中,不会触发运行状况检查失败。
{
  "field_name": "LCLog_Critical_Alarms",
  "comparison_result": "Fail",
  "expected": "No Critical Errors",
  "fetched": "104473 2024-07-26T16:05:19-05:00 Virtual Disk 238 on RAID Controller in SL 3 has failed."
}

从 Azure 运营商关系版本 3.14 开始,允许列表中列出的严重警报和警告警报会记录为信息性内容。

{
  "field_name": "LCLog_Warning_Alarms - Non-Failing",
  "comparison_result": "Info",
  "expected": "Warning Alarm",
  "fetched": "104473 2024-07-26T16:05:19-05:00 The Embedded NIC 1 Port 1 network link is down."
}

若要检查 BMC Web UI 中的 LC 日志,请遵循导航路径 BMC ->Maintenance ->Lifecycle Log.

使用 racadm 检查 LC 日志严重警报:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD lclog view -s critical

如果系统记录了 Backplane Comm 严重错误,请执行弱电释放。 请与供应商联系来排除任何其他的 LC 日志严重故障。

健康检查服务器的电源控制操作失败

由于服务器启动失败或 iDRAC 重置失败,Dell 服务器运行状况检查失败。 服务器控制操作失败表明有潜在的硬件问题。 以下示例显示开机尝试失败。

{
  "field_name": "Server Control Actions",
  "comparison_result": "Fail",
  "expected": "Success",
  "fetched": "Failed"
}
"result_log": [
    "Server power up failed with: server OS is powered off after successful power on attempt",
]

若要在 BMC Web UI 中打开服务器,请遵循导航路径 BMC ->Dashboard ->Power On System.

若要使用 racadm 开启服务器,请执行以下操作:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD serveraction powerup

若要排除服务器开机故障,请尝试执行弱电释放。 如果问题持续出现,请联系供应商。

虚拟弱电释放

HWV 会尝试对大多数失败的检查进行虚拟弱电释放。 尝试执行的弱电释放记录在 health_info>result_log 下。

"result_log": [
    "flea drain completed successfully",
]

如果虚拟弱电释放失败,请执行物理弱电释放作为第一个故障排除步骤。

RAID 清理失败

在 RAID 清理过程中,系统会重置 RAID 控制器配置。 Dell 服务器运行状况检查因 RAID 控制器重置失败而失败。 失败的 RAID 清理操作表示存在基础硬件问题。 以下示例显示了失败的 RAID 控制器重置。

{
  "field_name": "Server Control Actions",
  "comparison_result": "Fail",
  "expected": "Success",
  "fetched": "Failed"
}
"result_log": [
    "RAID cleanup failed with: raid deletion failed after 2 attempts",
]

若要清除 BMC Web UI 中的 RAID,请遵循导航路径,选择BMC>Dashboard>Storage>Controllers>Actions>Reset Configuration

若要使用 racadm 清除 RAID,请检查 RAID 控制器,然后清除配置:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD storage get controllers | grep "RAID"
racadm --nocertwarn -r $IP -u $BMC_USR -p $BC_PWD storage resetconfig:RAID.SL.3-1         #substitute with RAID controller from get command
racadm --nocertwarn -r $IP -u $BMC_USR -p $BC_PWD jobqueue create RAID.SL.3-1 --realtime  #substitute with RAID controller from get command

若要排除 RAID 清理故障,请检查记录的所有错误。 对于 Dell R650/660,请确保只有槽 0 和 1 包含物理驱动器。 对于 Dell R750/760,请确保只有槽 0 到 3 包含物理驱动器。 对于任何其他模型,请根据版本定义确认没有额外插入驱动器。 为与版本一致,应移除所有额外插入的驱动器。 如果问题持续出现,请联系供应商。

你可以忽略 HWV 期间触发的 BMC 虚拟磁盘严重警报。

运行状况检查电源故障和冗余注意事项

当一个电源缺失或发生故障时,Dell 服务器运行状况检查会发出警告。 电源 field_name 可能分别显示为 0/PS0/Power Supply 0 和 1/PS1/Power Supply 1,用于表示第一个电源和第二个电源。 一个电源故障不会触发 HWV 设备故障。

{
  "field_name": "Power Supply 1",
  "comparison_result": "Warning",
  "expected": "Enabled-OK",
  "fetched": "UnavailableOffline-Critical"
}
{
  "field_name": "System Board PS Redundancy",
  "comparison_result": "Warning",
  "expected": "Enabled-OK",
  "fetched": "Enabled-Critical"
}

若要检查 BMC Web UI 中的电源,请遵循导航路径,选择BMC>System>Power

按照以下步骤操作:使用 racadm 检查电源:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD getsensorinfo | grep PS

重置电源可能会解决问题。 如果仍然出现警报,请联系供应商。

启动信息类别

启动设备名称检查注意事项

  • boot_device_name 检查目前是信息性的。
  • 启动设备名称不匹配不应触发设备故障。
{
  "field_name": "boot_device_name",
  "comparison_result": "Info",
  "expected": "NIC.PxeDevice.1-1",
  "fetched": "NIC.PxeDevice.1-1"
}

PXE 设备检查注意事项

  • 此检查验证 PXE 设备设置。
  • 2024-07-01 GA API 版本开始,HWV 会尝试自动修复 BIOS 启动配置。
  • pxe_device_1_namepxe_device_1_state 检查失败表明 PXE 配置存在问题。
  • 必须修复导致故障的设置,才能在部署期间启用系统启动功能。
{
  "field_name": "pxe_device_1_name",
  "comparison_result": "Fail",
  "expected": "NIC.Embedded.1-1-1",
  "fetched": "NIC.Embedded.1-2-1"
}
{
  "field_name": "pxe_device_1_state",
  "comparison_result": "Fail",
  "expected": "Enabled",
  "fetched": "Disabled"
}

若要更新 BMC Web UI 中的 PXE 设备状态和名称,请设置该值,然后选择“应用*#### > ”应用并重新启动“:

  • BMC- ->>ConfigurationBIOS Settings - ->PXE Device1>Network Settings>Enabled
  • BMC- ->>BIOS SettingsConfiguration ->>PXE Device1 SettingsNetwork Settings - ->Interface>Embedded NIC 1 Port 1 Partition 1

若要使用 racadm 更新 PXE 设备状态和名称,请运行以下命令:

racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD set bios.NetworkSettings.PxeDev1EnDis Enabled
racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD set bios.PxeDev1Settings.PxeDev1Interface NIC.Embedded.1-1-1
racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD jobqueue create BIOS.Setup.1-1
racadm --nocertwarn -r $IP -u $BMC_USR -p $BMC_PWD serveraction powercycle

设备登录检查

设备登录检查注意事项

如果无法访问 iDRAC 或硬件验证插件无法登录,device_login 检查就会失败。

{
  "device_login": "Fail - Unreachable"
}
{
  "device_login": "Fail - Unauthorized"
}

若要在 BMC Web UI 中设置密码,请遵循导航路径 BMC ->iDRAC Settings ->Users ->Local Users -。>Edit

使用 racadm 设置密码:

racadm -r $BMC_IP -u $BMC_USER -p $CURRENT_PASSWORD  set iDRAC.Users.2.Password $BMC_PWD

若要进行故障排除,请从可以访问 BMC 网络的 Jumpbox 对 iDRAC 执行 ping 操作。 如果 iDRAC 响应 ping 操作,请检查密码是否匹配。

修复后将服务器添加回群集中

修复硬件后,请根据replace中的说明,运行裸机机器操作。