DPU环境配置

DPU 型号:MBF2M516A-CEEOT  (全高半长 (FHHL) DPU)

DPU 类型:NVIDIA BlueField-2 Ethernet DPU

操作系统:ubuntu20.04

参考文档:

https://docs.nvidia.com/networking/display/BlueFieldDPUOSLatest/NVIDIA+BlueField+DPU+Platform+Operating+System+v3.9.3.1+Documentation

硬件安装手册:

https://docs.nvidia.com/networking/display/BlueField2DPUENUG

DOCA开发手册:

https://docs.nvidia.com/networking/display/BlueField2DPUENUG

安装过程所需要的包的下载页面:

https://developer.nvidia.com/networking/doca

一共需要3个安装包,这里我使用了1.5.0版本的,如下:

doca-dpu-repo-ubuntu2004-local_1.5.0055-1.5.8.1.0.1.1.bf.3.9.3.12383.11.signed_arm64.deb

doca-host-repo-ubuntu2004_1.5.0-0.2.2.1.5.0055.1.5.8.1.0.1.1_amd64.deb

DOCA_1.5.0_BSP_3.9.3_Ubuntu_20.04-11.signed.bfb

安装参考这里:

https://docs.nvidia.com/doca/sdk/installation-guide-for-linux/index.html#installation-files

下面是我的安装过程:

主机端操作:

这一部分可以直接参考上面链接的教程。

1.卸载老版本的DOCA

host# for f in $( dpkg --list | grep doca | awk '{print $2}' ); do echo $f ; apt remove --purge $f -y ; done
host# sudo apt-get autoremove

2. install doca-tools

sudo dpkg -i doca-host-repo-ubuntu2004_1.5.0-0.2.2.1.5.0055.1.5.8.1.0.1.1_amd64.deb 
sudo apt-get update
sudo apt-get install doca-tools

目前为止没有发生报错

sudo apt-get install doca-cx-tools

这一步发生报错,报错信息如下:

sun@sun-G3-3590:~$ sudo apt-get install doca-cx-tools 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
doca-cx-tools 已经是最新版 (1.5.0-0.2.2)。
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
 doca-cx-tools : 依赖: doca-cx-prime-tools (= 1.5.0055-1) 但是它将不会被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。

于是按照提示安装依赖:

 sudo apt-get install doca-cx-prime-tools 

显示另一个报错:

sun@sun-G3-3590:~$ sudo apt-get install doca-cx-prime-tools 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列【新】软件包将被安装:
  doca-cx-prime-tools
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 366 个软件包未被升级。
有 3 个软件包没有被完全安装或卸载。
需要下载 0 B/1,884 B 的归档。
解压缩后会消耗 13.3 kB 的额外空间。
获取:1 file:/usr/share/doca-host-repo-ubuntu2004-1.5.0/repo main/ doca-cx-prime-tools 1.5.0055-1 [1,884 B]
(正在读取数据库 ... 系统当前共安装有 318918 个文件和目录。)
准备解压 .../doca-cx-prime-tools_1.5.0055-1_amd64.deb  ...
正在解压 doca-cx-prime-tools (1.5.0055-1) ...
dpkg: 处理归档 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-prime-tools_1.5.0055-1_amd64.deb (--unpack)时出错:
 正试图覆盖 /etc/profile.d/doca-runtime.sh,它同时被包含于软件包 doca-prime-tools 1.5.0055-1
在处理时有错误发生:
 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-prime-tools_1.5.0055-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

于是对dpkg加入强制覆盖选项 [--force-overwrite]

sun@sun-G3-3590:~$ sudo dpkg -i --force-overwrite /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-prime-tools_1.5.0055-1_amd64.deb
(正在读取数据库 ... 系统当前共安装有 318918 个文件和目录。)
准备解压 .../doca-cx-prime-tools_1.5.0055-1_amd64.deb  ...
正在解压 doca-cx-prime-tools (1.5.0055-1) ...
dpkg: 警告: 由于开启了 --force 选项,以下问题被忽略:
dpkg: 警告: 正试图覆盖 /etc/profile.d/doca-runtime.sh,它同时被包含于软件包 doca-prime-tools 1.5.0055-1
正在设置 doca-cx-prime-tools (1.5.0055-1) ...

然后运行:

sudo apt-get -f install
sun@sun-G3-3590:~$ sudo apt-get -f install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 366 个软件包未被升级。
有 3 个软件包没有被完全安装或卸载。
解压缩后会消耗 0 B 的额外空间。
正在设置 mlnx-fw-updater (5.8-1.0.1.1) ...
Initializing...
Attempting to perform Firmware update...
No devices found!

正在设置 ibdump (6.0.0-1.58101) ...
正在设置 doca-cx-tools (1.5.0-0.2.2) ...

再次运行:sudo apt install doca-cx-tools

sun@sun-G3-3590:~$ sudo apt install doca-cx-tools
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
doca-cx-tools 已经是最新版 (1.5.0-0.2.2)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 366 个软件包未被升级。

发现直接就安装上了。

3. install software on host

按照官网的命令运行:

sudo apt install -y doca-runtime doca-sdk

这里没有发生报错,但是下面的命令发生了类似的错误,解决方法也类似:

sun@sun-G3-3590:~$ sudo apt install -y doca-cx-runtime doca-cx-sdk
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
doca-cx-runtime 已经是最新版 (1.5.0-0.2.2)。
doca-cx-sdk 已经是最新版 (1.5.0-0.2.2)。
您也许需要运行“apt --fix-broken install”来修正上面的错误。
下列软件包有未满足的依赖关系:
 doca-cx-prime-runtime : 依赖: doca-cx-libs 但是它将不会被安装
                         依赖: doca-cx-apps 但是它将不会被安装
 doca-cx-prime-sdk : 依赖: libdoca-cx-libs-dev 但是它将不会被安装
                     依赖: doca-cx-apps-dev 但是它将不会被安装
                     依赖: doca-cx-samples 但是它将不会被安装
E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。

按照提示,运行:

sun@sun-G3-3590:~$ sudo apt --fix-broken install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
正在修复依赖关系... 完成
将会同时安装下列软件:
  doca-cx-apps doca-cx-apps-dev doca-cx-libs doca-cx-samples libdoca-cx-libs-dev
下列【新】软件包将被安装:
  doca-cx-apps doca-cx-apps-dev doca-cx-libs doca-cx-samples libdoca-cx-libs-dev
升级了 0 个软件包,新安装了 5 个软件包,要卸载 0 个软件包,有 364 个软件包未被升级。
有 4 个软件包没有被完全安装或卸载。
需要下载 0 B/657 kB 的归档。
解压缩后会消耗 3,541 kB 的额外空间。
您希望继续执行吗? [Y/n] y
获取:1 file:/usr/share/doca-host-repo-ubuntu2004-1.5.0/repo main/ doca-cx-libs 1.5.0055-1 [221 kB]
获取:2 file:/usr/share/doca-host-repo-ubuntu2004-1.5.0/repo main/ doca-cx-apps 1.5.0055-1 [53.9 kB]
获取:3 file:/usr/share/doca-host-repo-ubuntu2004-1.5.0/repo main/ libdoca-cx-libs-dev 1.5.0055-1 [314 kB]
获取:4 file:/usr/share/doca-host-repo-ubuntu2004-1.5.0/repo main/ doca-cx-apps-dev 1.5.0055-1 [51.2 kB]
获取:5 file:/usr/share/doca-host-repo-ubuntu2004-1.5.0/repo main/ doca-cx-samples 1.5.0055-1 [16.7 kB]
(正在读取数据库 ... 系统当前共安装有 324459 个文件和目录。)
准备解压 .../doca-cx-libs_1.5.0055-1_amd64.deb  ...
正在解压 doca-cx-libs (1.5.0055-1) ...
dpkg: 处理归档 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-libs_1.5.0055-1_amd64.deb (--unpack)时出错:
 正试图覆盖 /etc/ld.so.conf.d/doca-runtime-x86_64-linux-gnu.conf,它同时被包含于软件包 doca-libs 1.5.0055-1
dpkg-deb: 错误: 粘贴 子进程被信号(断开的管道) 终止了
准备解压 .../doca-cx-apps_1.5.0055-1_amd64.deb  ...
正在解压 doca-cx-apps (1.5.0055-1) ...
dpkg: 处理归档 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-apps_1.5.0055-1_amd64.deb (--unpack)时出错:
 正试图覆盖 /opt/mellanox/doca/applications/nat/bin/doca_nat,它同时被包含于软件包 doca-apps 1.5.0055-1
准备解压 .../libdoca-cx-libs-dev_1.5.0055-1_amd64.deb  ...
正在解压 libdoca-cx-libs-dev (1.5.0055-1) ...
dpkg: 处理归档 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/libdoca-cx-libs-dev_1.5.0055-1_amd64.deb (--unpack)时出错:
 正试图覆盖 /etc/profile.d/doca-sdk-x86_64-linux-gnu.sh,它同时被包含于软件包 libdoca-libs-dev 1.5.0055-1
dpkg-deb: 错误: 粘贴 子进程被信号(断开的管道) 终止了
准备解压 .../doca-cx-apps-dev_1.5.0055-1_amd64.deb  ...
正在解压 doca-cx-apps-dev (1.5.0055-1) ...
dpkg: 处理归档 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-apps-dev_1.5.0055-1_amd64.deb (--unpack)时出错:
 正试图覆盖 /opt/mellanox/doca/applications/VERSION,它同时被包含于软件包 doca-apps-dev 1.5.0055-1
由于已经达到 MaxReports 限制,没有写入 apport 报告。
                                                    准备解压 .../doca-cx-samples_1.5.0055-1_amd64.deb  ...
正在解压 doca-cx-samples (1.5.0055-1) ...
dpkg: 处理归档 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-samples_1.5.0055-1_amd64.deb (--unpack)时出错:
 正试图覆盖 /opt/mellanox/doca/samples/common.c,它同时被包含于软件包 doca-samples 1.5.0055-1
由于已经达到 MaxReports 限制,没有写入 apport 报告。
                                                    在处理时有错误发生:
 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-libs_1.5.0055-1_amd64.deb
 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-apps_1.5.0055-1_amd64.deb
 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/libdoca-cx-libs-dev_1.5.0055-1_amd64.deb
 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-apps-dev_1.5.0055-1_amd64.deb
 /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-samples_1.5.0055-1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

对这5个包逐一进行处理:(这5条命令一个一个执行)

sun@sun-G3-3590:~$ sudo dpkg -i --force-overwrite /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-libs_1.5.0055-1_amd64.deb


sun@sun-G3-3590:~$ sudo dpkg -i --force-overwrite  /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-apps_1.5.0055-1_amd64.deb


sun@sun-G3-3590:~$ sudo dpkg -i --force-overwrite /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/libdoca-cx-libs-dev_1.5.0055-1_amd64.deb


sun@sun-G3-3590:~$ sudo dpkg -i --force-overwrite /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-apps-dev_1.5.0055-1_amd64.deb


sun@sun-G3-3590:~$ sudo dpkg -i --force-overwrite  /usr/share/doca-host-repo-ubuntu2004-1.5.0/repo/pool/doca-cx-samples_1.5.0055-1_amd64.deb

最后执行:

sun@sun-G3-3590:~$ sudo apt-get -f install
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 364 个软件包未被升级。
有 4 个软件包没有被完全安装或卸载。
解压缩后会消耗 0 B 的额外空间。
正在设置 doca-cx-prime-sdk (1.5.0055-1) ...
正在设置 doca-cx-prime-runtime (1.5.0055-1) ...
正在设置 doca-cx-sdk (1.5.0-0.2.2) ...
正在设置 doca-cx-runtime (1.5.0-0.2.2) ...

运行:

sudo apt install -y doca-runtime doca-sdk
sun@sun-G3-3590:~$ sudo apt install -y doca-runtime doca-sdk
[sudo] sun 的密码: 
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
doca-runtime 已经是最新版 (1.5.0-0.2.2)。
doca-sdk 已经是最新版 (1.5.0-0.2.2)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 364 个软件包未被升级。

没有报错,继续按照官网的步骤,运行:

sun@sun-G3-3590:~$ sudo apt install -y doca-extra
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
下列【新】软件包将被安装:
  doca-extra
升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 364 个软件包未被升级。
需要下载 0 B/50.8 MB 的归档。
解压缩后会消耗 50.9 MB 的额外空间。
获取:1 file:/usr/share/doca-host-repo-ubuntu2004-1.5.0/repo main/ doca-extra 0.0.8-1 [50.8 MB]
正在选中未选择的软件包 doca-extra。
(正在读取数据库 ... 系统当前共安装有 324474 个文件和目录。)
准备解压 .../doca-extra_0.0.8-1_amd64.deb  ...
正在解压 doca-extra (0.0.8-1) ...
正在设置 doca-extra (0.0.8-1) ...

到这里主机上的驱动和软件已经安装完成了

继续运行官网的命令:

sun@sun-G3-3590:~$ sudo mst start
Starting MST (Mellanox Software Tools) driver set
Loading MST PCI module - Success
Loading MST PCI configuration module - Success
Create devices
Unloading MST PCI module (unused) - Success
Unloading MST PCI configuration module (unused) - Success

sun@sun-G3-3590:~$ sudo mlxconfig -d /dev/mst/mt41686_pciconf0 -y reset

 Reset configuration for device /dev/mst/mt41686_pciconf0? (y/n) [n] : y
Applying... Failed!
-E- Failed to open the device

这里有错误可能是因为我还没有插入DPU

sun@sun-G3-3590:~$ sudo systemctl status rshim
● rshim.service - rshim driver for BlueField SoC
     Loaded: loaded (/lib/systemd/system/rshim.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2023-03-15 19:03:41 CST; 28min ago
       Docs: man:rshim(8)
   Main PID: 90071 (rshim)
      Tasks: 2 (limit: 18909)
     Memory: 424.0K
     CGroup: /system.slice/rshim.service
             └─90071 /usr/sbin/rshim

3月 15 19:03:41 sun-G3-3590 systemd[1]: Starting rshim driver for BlueField SoC...
3月 15 19:03:41 sun-G3-3590 systemd[1]: Started rshim driver for BlueField SoC.

这里显示DPU所需要的rshim驱动已经安装完成了。

(后续的操作我会持续记录)

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值