DOCA-Host 安装和升级
以下选项可用于在主机上安装或升级 DOCA
方法 | 选项名称 | 描述 |
安装 | DOCA 本地仓库软件包 | 此选项安装 DOCA 组件 |
升级 | DOCA 在线仓库 | 此选项使用来自互联网的在线仓库升级 DOCA 组件 |
在 NVIDIA DOCA 下载页面中查找适用于您主机的相关 DOCA 安装文件。
此页面提供在标准系统上设置 DOCA 的基本说明。对于特定于设备的设置,请参阅相应的设备文档,因为可能需要额外的步骤。
如果您的主机上安装了旧版本的 DOCA(或 MLNX_OFED)软件,请确保在继续安装新版本之前将其卸载
基于 Deb |
|
基于 RPM |
|
本节重点介绍了用于确保软件包和内核模块的真实性和完整性的签名方法。
软件包签名
RPM 软件包使用 GPG 密钥签名,使用户能够确认软件包来自可信的 NVIDIA 来源且未被篡改。
在安装期间,软件包管理器会自动获取并验证签名,同时更新其元数据缓存。
有关更多详细信息,请参阅“在主机上安装软件”部分。
内核模块签名
内核驱动程序使用 NVIDIA 的 x.509 公钥签名,允许用户验证驱动程序是否来自可信的 NVIDIA 来源且未被篡改。
为了支持在启用安全启动的操作系统上加载 DOCA-HOST 驱动程序,应使用以下步骤将 NVIDIA x.509 公钥添加到密钥数据库中
获取 NVIDIA 的公钥 x.509 密钥
# wget http:
//www.mellanox.com/downloads/ofed/mlnx_signing_key_pub.der
注意SLES15 SP4 和 SP5 的构建版本使用较新的签名密钥进行签名。相应的公钥可以从此链接下载。
使用
mokutil
实用程序将公钥导入到 MOK 列表# mokutil --
import
mlnx_signing_key_pub.der信息将要求用户输入并确认此 MOK 注册请求的密码。
重启系统。
为主机安装 DOCA 本地仓库软件包
对于基于 deb 的发行版
从 NVIDIA DOCA 下载页面下载 DOCA 主机仓库。
解压缩 deb 仓库
host# dpkg -i <repo_file>
运行 apt update
host# apt-get update
如果您的主机上的内核版本不受支持(未在“DOCA-Host 安装配置文件支持的主机操作系统”部分下列出),请参阅“DOCA 额外软件包和 doca-kernel-support”部分。
确保安装的内核头文件与当前运行的内核版本匹配。
信息如果
build
目录存在于/lib/modules/$(uname -r)/build
下,则表示已安装内核头文件。安装您的操作系统和架构支持的任何配置文件。有关更多信息,请参阅“DOCA-Host 安装配置文件支持的主机操作系统”(例如,
doca-all
)。host# apt install -y doca-all
更新固件
host# apt install -y mlnx-fw-updater
对于基于 rpm 的发行版
从 NVIDIA DOCA 下载页面下载 DOCA 主机仓库。
解压缩 rpm 仓库
host# rpm -Uvh <repo_file>.rpm
对于非 SLES 系统,运行
host# yum makecache
对于 SLES 系统,运行以下命令以验证软件包签名
host# zypper --gpg-auto-
import
-keys refresh注意继续使用
zypper
而不是yum
的过程。信息如果您的主机上的内核版本不受支持(未在“DOCA-Host 安装配置文件支持的主机操作系统”部分下列出),请参阅“DOCA 额外软件包和 doca-kernel-support”部分。
安装您的操作系统和架构支持的任何配置文件(例如,doca-all)
host# yum/zypper install -y doca-all
更新固件
host# apt install -y mlnx-fw-updater
加载驱动程序
host# sudo /etc/init.d/openibd restart
初始化 MST
host# sudo mst restart
如果您的主机上的内核版本不受支持(未在“DOCA-Host 安装配置文件支持的主机操作系统”部分下列出),用户可以选择
切换到兼容的内核;或
安装
doca-extra
软件包并运行doca-kernel-support
doca-kernel-support
是一个脚本,旨在为未提供内核模块的情况重建 DOCA-host 附带的内核模块。它构建一个包含软件包仓库的软件包(即 rpm
或 deb
)(即 dnf
或 apt
)。
DOCA-host 为某些特定内核提供内核模块的二进制构建版本。此脚本为自定义内核版本重建 DOCA-host 附带的内核模块,并创建一个 RPM 或 DEB 软件包,其中包含所有这些重建的模块,以便于安装。
doca-kernel-support
不支持自定义或非官方内核。
要运行 doca-kernel-support
运行
host# apt/yum install -y doca-extra
执行
doca-kernel-support
脚本,该脚本使用正在运行的内核重建并安装 DOCA-host 内核模块host# /opt/mellanox/doca/tools/doca-kernel-support
输出可能以
rpm
或deb
结尾,通用格式如下doca-kernel-support: Built single
package
: <doca-kernel-repo> doca-kernel-support: Done输出示例
doca-kernel-support: Built single
package
: /tmp/DOCA.EuUfkWfV7Z/doca-kernel-repo-2.9
.0
-1
.kver.5.14
.0.356
.el9.x86.64
.x86_64.rpm doca-kernel-support: Done注意doca-kernel-support
不支持自定义或非官方内核。在所需的 DOCA 配置文件上安装生成的元软件包
信息提供的示例使用
doca-ofed
配置文件安装 DOCA 内核仓库 (RPM/DEB),但如果支持,也可以安装其他配置文件如果支持。对于基于 RPM 的发行版
host# rpm -i <doca-kernel-repo> host# dnf makecache host# dnf install <doca-userspace-metapackage> host# dnf install --disablerepo=doca doca-kernel-KERNEL_VERSION # For all the meta-
package
, not justthis
singlepackage
示例
host# rpm -i /tmp/DOCA.EuUfkWfV7Z/doca-kernel-repo-
2.9
.0
-1
.kver.5.14
.0.356
.el9.x86.64
.x86_64.rpm host# dnf makecache host# dnf install doca-ofed-userspace host# dnf install --disablerepo=doca doca-kernel-5.14
.0.356
.el9.x86.64
.x86_64.noarch对于基于 DEB 的发行版
host# dpkg -i <doca-kernel-repo> host# apt update host# apt install <doca-profile>
示例
host# dpkg -i /tmp/DOCA.J8JYxEmffD/doca-kernel-repo-
2.9
.0
-6.4
.0
.mlnx_2.9
.0_amd64.deb host# apt update host# apt install doca-ofed
(可选)检索已安装的软件包及其版本作为 DOCA Host 安装的一部分
host# /opt/mellanox/doca/tools/doca-info Versions: - DOCA Base MLNX_OFED_LINUX-
24.07
-0.5
.5.0
- MFT4.29
.0
-127
UEFI\ATF versions: - mst_device: mt41692_pciconf0 UEFI Version:4.7
.0
-42
-g13081ae ATF Version:4.7
.0
-25
-g5569834 Firmware (Current): - BlueField-3
32.41
.1000
DOCA: - doca-all2.8
.0
-0.0
.4
- doca-apsh-config2.8
.0079
-1
- doca-bench2.8
.0079
-1
… DOCA Dependencies: … - flexio24.07
.2300
- mlnx-dpdk22.11
.0
-2407.0
.10
OFED: … - rdma-core 2407mlnx52-1.2407055
… - ucx1.17
.0
-1.2407055
…注意如果 BlueField 上安装的 BF-Bundle 版本低于 2.7.0,则 UEFI/ATF 版本将显示为 N/A。如果您的版本为 2.7.0 或更高版本,但仍然看到 N/A,请在主机上执行驱动程序重启
/etc/init.d/openibd restart
要更新现有的 DOCA 主机软件包,请按照以下步骤操作
在社区模型中,NVIDIA 和选择在其环境中使用社区操作系统的客户之间存在共同责任
NVIDIA 拥有操作系统的基本验证,以便客户知道他们可以期望 DOCA 能够工作。
客户负责构建自己的软件包和二进制文件(基于源代码和下面详述的构建说明),并且还可以选择部署部分 DOCA 而不是整个软件包
NVIDIA 为拥有有效支持合同的客户和合作伙伴提供支持。但是,在某些情况下,NVIDIA 可能会要求客户与开源社区合作,以解决被确定为由社区变更导致的问题,这些变更会破坏 DOCA 功能。
要在主机上安装 doca-host-community
,请按照以下步骤操作
安装
doca-host-community
仓库,其中包含用于生成 DOCA 社区仓库的源代码和工具对于基于 RPM 的软件包
host# rpm -uvh doca-host-repo-community-{doca_version}.noarch.rpm
示例
host# rpm -uvh doca-host-repo-community-
2.9
.0
-0.2
.9.24
.10.0
.5.2
.0
.noarch.rpm对于基于 DEB 的软件包
host# dpkg -i doca-host_{doca_version}-community_all.deb
示例
host# dpkg -i doca-host_2.
9.0
-100000
-24.10
-community_all.deb
运行构建脚本以生成
doca-host-community
仓库host# /opt/mellanox/doca/tools/doca-community-build
脚本输出应包含类似于以下的行
对于基于 RPM 的软件包
host# doca-community-build: Built single
package
: /tmp/DOCA.Lz1pntWcGM/doca-community-repo-24.10
.0.5
.2.0
-1
.kver.4.18
.0.477
.10.1
.el8.8
.x86.64
.x86_64.rpm对于基于 DEB 的软件包
host# doca-community-build: Built single
package
: /tmp/DOCA.gcVyNokLfV/doca-community-repo-24.10
-0.5
.2.0
-6.8
.0.31
.generic_24.10.0
.5.2
.0_amd64.deb信息脚本创建的二进制文件可以复制到任何具有相同内核的类似机器。它包含所有
doca-ofed
配置文件构建的软件包,以及取决于这些软件包的额外元软件包,安装元软件包将安装所有构建的软件包。
生成的 DOCA 社区仓库应准备好在此主机上安装或分发到任何其他具有相同发行版和内核的类似机器
对于基于 RPM 的(非 SLES)软件包
host# yum install /tmp/DOCA.m6rIcEJNKl/doca-community-repo-
24.10
.0.4
.6.0
-1
.kver.5.14
.0.427
.13.1
.el9.4
.x86.64
.x86_64.rpm host# yum makecache对于基于 SLES RPM 的软件包
host# zypper install /tmp/DOCA.m6rIcEJNKl/doca-community-repo-
24.10
.0.4
.6.0
-1
.kver.5.14
.0.427
.13.1
.el9.4
.x86.64
.x86_64.rpm host# zypper refresh对于基于 DEB 的软件包
host# apt install /tmp/DOCA.gcVyNokLfV/doca-community-repo-
24.10
-0.5
.2.0
-6.8
.0.31
.generic_24.10.0
.5.2
.0_amd64.deb host# apt update
安装
doca-ofed-community
元软件包host# yum/apt install doca-ofed-community
安装专有软件包
安装过程不安装专有软件包。这些软件包应按需安装。
闭源专有软件包列表
Clusterkit
DPCP
hcoll
sharp
ibutils2
opensm
目前,安装这些软件包的唯一方法是使用来自类似主操作系统的已构建的 RPM 或 DEB 文件。
下表列出了与主操作系统最相似的社区操作系统
社区操作系统 | 最相似的主操作系统 |
Alma 8.5 | RHEL 8.5 |
Anolis OS 8.4 | RHEL 8.5 |
CentOS Stream 8 | RHEL 8 |
CentOS Stream 9 | RHEL 9 |
EulerOS-V2.0.SP10 | EulerOS-V2.0.SP11 |
Fedora 35 | RHEL 8.5 |
OpenEuler-20.03.SP1 | OpenEuler20 SP3 |
OpenSUSE 15.3 | SLES15 SP3 |
Photon OS 3.0 | RHEL 7.9 |
UOS-V20-1040d | Debian 10.8 |
下载并安装 MFT 和固件
安装前,使用系统的软件包管理器搜索所需的软件包
# apt/zypper/dnf/yum search mlnx-nvme # apt/zypper/dnf/yum search mlnx-nfsrdma
识别出正确的软件包名称后,使用以下命令安装它
# apt/zypper/dnf/yum install <full-
package
-name>
安装示例
对于 SLES
# zypper search mlnx-nvme # zypper install mlnx-nvme-kmp-
default
对于基于 Debian 的系统
# apt search mlnx-nvme # apt search mlnx-nfsrdma # apt install mlnx-nvme-dkms # apt install mlnx-nfsrdma-dkms