DOCA 文档 v2.10.0

NVIDIA BlueField 复位和重启步骤

本节介绍在 NVIDIA® BlueField® NIC 固件更新后加载新 NIC 固件的必要操作。此过程不再需要完全服务器断电重启。

以下步骤在 BlueField 操作系统中执行

  1. 发出查询命令,以确定您的环境是否支持 BlueField 系统重启

    复制
    已复制!
                

    mlxfwreset -d 03:00.0

    如果输出包含以下行,请继续执行步骤 2

    复制
    已复制!
                

    3: Driver restart and PCI reset         -Supported (default) ... 1: Driver is the owner                  -Supported (default)

    注意

    如果显示 不支持,则继续执行“BlueField 系统级复位”部分下的说明。

  2. 发出 BlueField 系统重启

    复制
    已复制!
                

    mlxfwreset -d 03:00.0 -y -l 3 --sync 1 r

本节介绍执行系统级复位 (SLR) 的方法,这对于固件配置更改生效是必要的。

DPU 模式下 BlueField 的系统级复位

以下是该过程的高级流程

  1. 优雅地关闭 BlueField Arm 内核。

  2. 查询 BlueField 状态以确认已达到关闭状态。

    信息

    在具有多个 BlueField 网络平台的系统中,对所有设备重复步骤 1 和 2,然后再继续。

  3. 热重启服务器。

逐步过程

信息

以下某些步骤可以使用不同的方法执行,具体取决于用户环境中的资源可用性和支持。

  1. 优雅地关闭 BlueField Arm 内核。

    信息

    此操作预计在 15 秒内完成。

    可能的方法

    • 从 BlueField 操作系统

      复制
      已复制!
                  

      shutdown -h now

      复制
      已复制!
                  

      mlxfwreset -d /dev/mst/mt*pciconf0 -l 1 -t 4 --sync 0 r

    • 从主机操作系统

      信息

      当 BlueField 在零信任模式下运行时不相关。

      复制
      已复制!
                  

      mlxfwreset -d <mst-device> -l 1 -t 4 r

    • 使用 BlueField BMC

      复制
      已复制!
                  

      ipmitool -C 17 -I lanplus -H <bmc_ip> -U root -P <password> power soft

      或使用 Redfish(BlueField-3 及更高版本)

      复制
      已复制!
                  

      curl -k -u root:<password> -H "Content-Type: application/json" -X POST https://<bmc_ip>/redfish/v1/Systems/Bluefield/Actions/ComputerSystem.Reset -d '{"ResetType": "GracefulShutdown"}'

  2. 查询 BlueField 状态。

    可能的方法

    • 从主机操作系统

      信息

      当 BlueField 在零信任模式下运行时不相关。

      复制
      已复制!
                  

      echo DISPLAY_LEVEL 2 > /dev/rshim0/misc cat /dev/rshim0/misc

      预期输出

      复制
      已复制!
                  

      INFO[BL31]: System Off

    • 利用 BlueField BMC

      复制
      已复制!
                  

      ipmitool -C 17 -I lanplus -H <bmc_ip> -U root -P <password> raw 0x32 0xA3

      预期输出:06

  3. 从主机操作系统热重启服务器

    复制
    已复制!
                

    mlxfwreset -d <mst-device> -l 4 r

    注意

    如果主机中存在多个 BlueField 设备,则此命令必须仅运行一次。在这种情况下,MST 设备可以是任何需要复位并参与步骤 1 的 BlueField 设备。

    复制
    已复制!
                

    reboot

    注意

    对于在其标准重启命令中不切换 PERST# 的外部主机,请使用 mlxfwreset 选项。

NIC 模式下 BlueField 的系统级复位

执行主机操作系统的热重启

复制
已复制!
            

mlxfwreset -d <mst-device> -l 4 r

复制
已复制!
            

reboot

注意

对于在其标准重启命令中不切换 PERST# 的外部主机,请使用 mlxfwreset 选项。


带独立电源控制主机的系统级复位

此过程是一个特殊用例,仅与 PCIe 插槽和 CPU 具有独立电源控制的主机平台相关,其中 BlueField(在 DPU 模式下运行)在主机操作系统/CPU 可能处于关机或类似待机状态时供电(这允许 BlueField 设备在主机 CPU 处于关机/待机状态时运行)。

以下是该过程的高级流程

  1. 优雅地关闭主机操作系统或类似的 CPU 待机状态。

  2. 优雅地关闭 BlueField Arm 内核。

  3. 查询 BlueField 状态以确认已达到关闭状态。

  4. 完全 BlueField 复位

  5. 查询 BlueField 状态以确认已达到运行状态

    信息

    在具有多个 BlueField 网络平台的系统中,对所有设备重复步骤 1 到 5,然后再继续。

  6. 打开服务器电源。

逐步过程

信息

以下某些步骤可以使用不同的方法执行,具体取决于用户环境中的资源可用性和支持。

  1. 通过任何首选方式优雅地关闭主机操作系统。

  2. 优雅地关闭 BlueField Arm 内核。

    信息

    此步骤通常需要最多 15 秒才能完成。

    • 从 BlueField 操作系统

      复制
      已复制!
                  

      shutdown -h now

    • 利用 BlueField BMC

      • 使用 IPMI

        复制
        已复制!
                    

        ipmitool -C 17 -I lanplus -H <bmc_ip> -U root -P <password> power soft

      • 使用 Redfish(对于 BlueField-3 及更高版本)

        复制
        已复制!
                    

        curl -k -u root:<password> -H "Content-Type: application/json" -X POST https://<bmc_ip>/redfish/v1/Systems/Bluefield/Actions/ComputerSystem.Reset -d '{"ResetType": "GracefulShutdown"}'

  3. 利用 BlueField BMC 查询 BlueField 的状态

    复制
    已复制!
                

    ipmitool -C 17 -I lanplus -H <bmc_ip> -U root -P <password> raw 0x32 0xA3

    预期输出:06

  4. 利用 BlueField BMC 执行 BlueField 硬复位

    信息

    此步骤最多需要 2 分钟才能完成。

    • 使用 IPMI

      复制
      已复制!
                  

      ipmitool -C 17 -I lanplus -H <bmc_ip> -U root -P <password> power cycle

    • 使用 Redfish(对于 BlueField-3 及更高版本)

      复制
      已复制!
                  

      curl -k -u root:<password> -H "Content-Type: application/json" -X POST https://<bmc_ip>/redfish/v1/Systems/Bluefield/Actions/ComputerSystem.Reset -d '{"ResetType" : "PowerCycle"}'

  5. 利用 BlueField BMC 查询 BlueField 运行状态

    信息

    此时,预计 BlueField 处于运行状态。

    复制
    已复制!
                

    ipmitool -C 17 -I lanplus -H <bmc_ip> -U root -P <password> raw 0x32 0xA3

    预期输出:05

  6. 打开电源/启动主机操作系统。

BlueField DPU 也可以通过 BMC 平台使用 I2C 上的 NC-SI 命令进行复位。当 DPU BMC 缺失、BlueField DPU 在 NIC 模式下运行或用作控制器时,此选项更常见。

复位使用 复位 BlueField DPU(命令=0x12,参数=0xB) 执行,这允许 BMC 平台复位 NVIDIA BlueField DPU 设备。此命令仅适用于 BlueField-2 设备。

复位 BlueField-3 DPU 命令仅寻址到封装。当内部复位完成时,BMC 平台应重新配置设备。

信息

复位 BlueField DPU 命令在 BlueField-2 及更高版本设备上受支持。

复位 BlueField DPU 格式

字节/位

31:24

23:16

15:8

7:0

0:15

NC-SI 标头(OEM 命令)

16:19

NVIDIA 制造商 ID (IANA) = 0x8119

20:23

命令修订版=0x00

MLNX 命令 ID=0x12

参数=0x0B

NICR

模式

24:27

校验和 31:0

下面提供了复位 BlueField DPU 命令的参数描述。

复位 BlueField DPU 参数

字段

描述

NICR

  • 0 - NIC 不复位。仅嵌入式 CPU 将复位。

  • 1 - 复位嵌入式 CPU 和 NIC

模式

此字段定义在执行内部复位之前要使用的条件类型

  • 0 - 内部复位将在发送对此命令的响应后开始

  • 1 - 内部复位仅在所有主机断言其 PERST# 信号为低电平时开始

  • 2 - 内部复位仅在所有主机禁用其 PCIe 链接时开始。这可能包括或不包括断言其各自的 PERST# 信号为低电平。

  • 其他 - 保留

复位 BlueField DPU 响应

当封装 ID 匹配且没有校验和错误时,ConnectX 适配器响应复位 BlueField DPU 命令。

复位 BlueField DPU 响应格式

字节/位

31:24

23:16

15:8

7:0

0:15

NC-SI 标头(OEM 命令)

16:19

响应代码

原因代码

20:23

NVIDIA 制造商 ID (IANA) = 0x8119

24:27

命令修订版=0x00

MLNX 命令 ID=0x12

参数=0x0B

NICR

模式

28:31

校验和 31:0

关闭 BlueField DPU 操作系统命令允许受信任的平台 bmc 向 NVIDIA BlueField DPU 设备上的嵌入式 CPU 发送操作系统关闭请求。

关闭 BlueField DPU 操作系统命令格式如下所示。

关闭 BlueField DPU 操作系统命令格式

字节/位

31:24

23:16

15:8

7:0

0:15

NC-SI 标头(OEM 命令)

16:19

NVIDIA 制造商 ID (IANA) = 0x8119

20:23

命令修订版=0x00

MLNX 命令 ID=0x12

参数=0x1A

保留

24:27

保留

28:31

校验和 31:0

此命令没有输入参数。此命令是封装命令。

关闭 BlueField DPU 操作系统响应

当封装 ID 匹配时,NVIDIA BlueField DPU 始终在支持的设备上接收并响应关闭 BlueField DPU 操作系统命令。当关闭 BlueField DPU 操作系统命令发送到不支持的设备,或从不受信任的平台 bmc 接收到该命令时,该命令将失败,原因代码为 0x7FFF(不支持的命令)。

关闭 BlueField DPU 操作系统响应格式

字节/位

31:24

23:16

15:8

7:0

0:15

NC-SI 标头(OEM 命令)

16:19

响应代码

原因代码

20:23

NVIDIA 制造商 ID (IANA) = 0x8119

24:27

命令修订版=0x00

MLNX 命令 ID=0x12

参数=0x1A

保留

28:31

保留

32:35

校验和 31:0

© 版权所有 2025 NVIDIA。 上次更新时间:2025 年 2 月 12 日。