Centos 7.9创建本地yum源,离线安装MCX455A-ECAT驱动,并配置IB卡为InfiniBand模式
CentOS 7.9离线安装MCX455A-ECAT驱动
操作系统平台
RHEL/CentOS 7.9
准备本地 YUM 仓库
1. 挂载系统安装光盘
[!NOTE]
确保系统已插入操作系统安装光盘,且系统识别到光驱设备。大多数情况下,光驱设备为 /dev/sr0,但某些系统可能为 /dev/cdrom 或其他设备名。如遇问题,可使用 lsblk 命令查看可用设备。
1 2 3 4 5 6 7 8
| lsblk
mkdir -p /media/cdrom
mount -t iso9660 /dev/sr0 /media/cdrom
|
2. 备份原有 YUM 仓库配置
1 2 3 4 5
| mkdir -p /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
|
3. 创建本地仓库配置文件
1
| vi /etc/yum.repos.d/local.repo
|
1 2 3 4 5
| [local-centos] name=Local CentOS Repository baseurl=file:///media/cdrom enabled=1 gpgcheck=0
|
[!WARNING]
将 gpgcheck 设置为 0 仅建议在测试环境中使用。在生产环境中,应保留 GPG 检查功能并导入适当的 GPG 密钥以保证软件包的完整性。
安装必要依赖
1 2 3 4 5 6 7 8
| yum clean all yum makecache
yum install -y nano vim python-devel pciutils lsof libusbx tcl fuse-libs tcsh tk usbutils
|
安装 Mellanox OFED
1. 解压安装包
1 2
| unzip MLNX_OFED_LINUX-5.6-2.0.9.0-rhel7.9-x86_64.zip cd MLNX_OFED_LINUX-5.6-2.0.9.0-rhel7.9-x86_64
|
2. 授予执行权限并安装
1 2 3 4 5
| chmod +x mlnx_add_kernel_support.sh mlnxofedinstall
./mlnxofedinstall --add-kernel-support --skip-repo
|
[!NOTE]
--add-kernel-support 参数确保 OFED 驱动与当前内核版本兼容;--skip-repo 参数避免覆盖现有仓库配置。安装过程会自动检测并安装必要的内核模块和用户空间库。
3. 更新 initramfs 并重启服务
1 2 3 4 5 6 7 8 9
| dracut -f
/etc/init.d/openibd restart
systemctl enable openibd systemctl enable mst
|
配置 InfiniBand 设备
1. 检查设备状态
1 2 3 4 5 6
| mst status
ibdev2netdev ibstatus
|
2. 配置 IB 卡为InfiniBand模式
1 2 3
|
mlxconfig -d /dev/mst/[DEVICE] set LINK_TYPE_P1=1
|
[!WARNING]
实际设备路径应通过 mst status 命令确认,如 /dev/mst/mt4115_pciconf0。请勿直接使用笔记中的示例路径。
服务管理说明
OpenIBD 服务
[!IMPORTANT]
openibd 是系统初始化脚本,负责在 Linux 系统启动时自动加载所有必要的 RDMA/InfiniBand 内核模块,必须设置为开机自启。
MST 服务
[!NOTE]
MST (Mellanox Software Tools) 用于设备发现与状态检查:
mst status: 检查设备状态
mlxconfig: 配置和管理 IB/HCA 设备
ibqueryerrors, perfquery: 查询端口信息和性能计数器
应设置 MST 服务开机自启以便持续管理设备。
OpenSM 服务(子网管理器)
[!WARNING]
在 IB 网络中,OpenSM 负责:
- 拓扑发现:扫描整个 IB Fabric,识别所有节点和交换机
- LID 分配:给每个 IB 端口分配唯一的本地标识符
- 路由计算:生成路由表
- 网络状态维护:监控链路健康状况
重要提示:整个子网内只需一台服务器启动 OpenSM 并设置开机自启,其他机器必须禁用 OpenSM 服务,否则会导致服务冲突。
验证安装
1 2 3 4 5 6 7 8 9 10 11 12
| ibstatus
ibdev2ibdev
ibdev2netdev
opensm --version systemctl status opensm
|
[!TIP]
完成配置后,建议通过以下命令测试 RDMA 功能:
1 2 3 4 5
| ib_send_lat -R
ib_send_lat <server-ip>
|