Nvidia Mellanox ConnectX NIC 设备超时和重置
Summary: 对于 Azure 而言,运行 Azure 本地解决方案的 AX 和 ACP 客户在安装 SBE 4.1.2506.n 或 4.1.2507.n 以及 NIC 驱动程序 25.1.26647 后,可能会遇到跨多个节点的频繁 NIC 重置
Symptoms
概览
安装 SBE 版本 4.2.2506.n (AX) 或 4.2.2507.n (MC) 后,具有具有 NVIDIA ConnectX NIC(网络接口卡)的计算机的 Azure 本地实例可能会遇到警告级别 NDIS 事件 ID 10400 和 mlx5 事件 ID 386。


以下命令可用于在事件日志中搜索这些事件:
Get-WinEvent -FilterHashtable @{LogName="System";ID=10400,386} -ErrorAction SilentlyContinue | Format-list -Property Id,TimeCreated,ContainerLog,LevelDisplayName,Message
这些事件涉及 ConnectX NIC 重置,这可能会导致网络中断、从 Azure 本地群集中逐出计算机以及偶尔的错误检查事件。在具有 SBE 4.2.2506.n (AX) 或 4.2.2507.n (MC) 安装的 mlx5.sys 驱动程序版本为 25.1.26647.0 和相应 ConnectX 固件的某些工作负载下观察到此情况。
识别受影响的 Azure 本地实例
当满足以下所有条件时,可能会出现问题的行为:
- 这些计算机是 Azure 本地实例的成员
- 计算机上安装了一个或多个 ConnectX NIC
- SBE 4.2.2506.n (AX) 或 4.2.2507.n (MC) 已安装在 Azure 本地实例上
- 正在运行的 ConnectX NIC 驱动程序版本为 25.1.26647.0
识别已安装的 ConnectX 固件版本
可以在 Azure 本地实例中的每台计算机上执行以下过程。
- 连接到 iDRAC Web 界面,选择系统下拉列表和资源清册。
- 展开固件资源清册并查找描述中包含“ConnectX”工作的组件。记下安装的固件版本。

识别已安装的 ConnectX 驱动程序版本
可以在 Azure 本地实例中的每台计算机上执行以下过程。
- 在主机作系统中运行以下命令,以确定正在运行的 ConnectX 驱动程序版本:
Get-NetAdapter -InterfaceDescription “*ConnectX*” | Sort-Object -Property Name | Format-Table -Property Name, InterfaceDescription, DriverInformation

ConnectX 驱动程序和固件版本
|
组件 |
受影响的版本 |
修正版本 |
修正版本下载 |
|
ConnectX 驱动程序 |
25.1.26647.0 |
24.4.26429.0 |
不适用(SBE 有效负载) |
|
ConnectX-6 LX 固件 |
26.44.10.36 |
26.41.10.00 |
|
|
ConnectX-6 DX 固件 |
22.44.10.36 |
22.41.10.00 |
|
|
ConnectX-5 EN/EX 固件 |
16.35.40.30 |
16.35.30.06 |
|
|
ConnectX-4 LX |
14.32.21.02 |
14.32.20.04 |
Cause
在具有 SBE 4.2.2506.n (AX) 或 4.2.2507.n (MC) 安装的 mlx5.sys 驱动程序版本为 25.1.26647.0 和相应 ConnectX 固件的 Dell AX 和 MC Azure 本地解决方案的某些工作负载下,观察到这种情况。
Resolution
实施修正
在安装 SBE 4.2.2509.n (AX) 之前降级 ConnectX NIC 固件
在受影响的 Azure 本地实例中的每台计算机上执行以下过程。
- 连接到 iDRAC Web 界面,选择 Maintenance下拉列表,然后选择 System Update。
- 单击 Choose File 按钮,然后选择要为计算机中的 ConnectX NIC 安装的固件文件可执行文件。单击 Open按钮以完成选择。

- 单击“上传”按钮以开始上传过程。

- 上传过程完成后,单击已上传文件旁边的加号,以查看应用此固件文件的组件。此时将显示当前安装的固件版本和可用的固件版本。可用的固件版本是将要安装的版本。
- 单击要安装的固件文件旁边的复选框,然后选择安装。此作将暂存 ConnectX NIC 固件升级,固件升级将在稍后步骤中重新启动主机作系统时完成。

- 编队安装作业将添加到作业队列中。单击Job Queue按钮以查看作业队列中的作业。

- 此时将显示作业进度。

- 等待作业状态显示 100% 完成。请注意所指示的服务器重新启动挂起状态。

- 单击 Lifecycle Log,并再次记下固件更新将在重新启动服务器后生效。在后续步骤中,服务器将作为 SBE 安装的一部分自动重新启动。

安装 SBE 4.2.2509.n
使用标准 SBE 安装过程安装 SBE 4.2.2509.n。SBE 4.2.2509.n 安装将安装调用安装暂存的 ConnectX 固件,安装 SBE 4.2.2509.n 驱动程序和固件有效负载。在安装 SBE 4.2.2509.n 的过程中,还将安装 MLX5 驱动程序版本 24.4.26429.0。
验证是否成功修正
成功安装 SBE 4.2.2509.n 后,验证 ConnectX 驱动程序和固件版本。
验证已安装的 ConnectX 固件版本
可以在 Azure 本地实例中的每台计算机上执行以下过程。
- 连接到 iDRAC Web 界面,选择系统下拉列表和资源清册。
- 展开固件资源清册并查找描述中包含“ConnectX”工作的组件。记下安装的固件版本。

验证已安装的 ConnectX 驱动程序版本
可以在 Azure 本地实例中的每台计算机上执行以下过程。
- 在主机作系统中运行以下命令,以确定正在运行的 ConnectX 驱动程序版本:
Get-NetAdapter -InterfaceDescription “*ConnectX*” | Sort-Object -Property Name | Format-Table -Property Name, InterfaceDescription, DriverInformation

提醒:对于 MC 节点,请使用此知识库文章中的方法手动降级 Nvidia 驱动程序和固件,直至下一次 Apex Cloud Platform 软件更新。
提醒:如果您已应用 SBE 4.2.2509.n,但未降级 Mellanox 固件,请使用以下步骤将固件降级到与驱动程序相同的级别。
- 暂停并耗尽节点。
- 在 C 中暂挂 BitLocker: ->
Suspend-BitLocker -MountPoint "C:" -RebootCount 0 - 按照“实施修正”部分下的步骤执行固件降级,具体取决于 NIC 型号,调用相应的 DUP,然后重新启动系统。
- 在 IDRAC 中验证固件降级是否成功。
- 验证 Mellanox nic 中的连接是否正常,然后恢复 BitLocker:
Resume-BitLocker -MountPoint "C:" - 将节点从维护模式中移除。等待存储作业完成,然后再暂停任何其他节点。