当前位置: 首页 > news >正文

Linux RDMA网络配置手册

一、配置前准备工作

在进行 RDMA 网络配置之前,请确保以下准备工作已完成:

硬件环境

  • 确保服务器支持 RDMA 功能,例如支持 InfiniBand 或 RoCE(RDMA over Converged Ethernet)的网卡。
  • 确保网络交换设备支持 RDMA 协议。
  • 确保服务器之间通过支持 RDMA 的网络连接。

软件环境

  • 确保服务器操作系统已正确安装并运行。
  • 确保系统已安装 dnf 或 yum 包管理工具。

网络环境

  • 确保网络配置正确,服务器之间可以正常通信。
  • 确保防火墙或安全组规则允许 RDMA 相关端口的通信。

二、配置步骤

1. 安装 RDMA 相关软件包

1.1 安装 rdma-core 软件包

打开终端,运行以下命令安装 rdma-core 软件包:

dnf install rdma-core

或者

yum install rdma-core

1.2 安装其他工具包

为了更好地管理和测试 RDMA 网络,还需要安装一些额外的工具包。运行以下命令:

dnf install libibverbs-utils infiniband-diags

或者

yum install libibverbs-utils infiniband-diags

1.3 验证安装

安装完成后,运行以下命令验证是否安装成功:

ibstat

如果输出显示了 RDMA 设备信息,则表示安装成功。

2. 配置 RDMA 网络

2.1 配置 rdma 服务

编辑/etc/rdma/modules/rdma.conf文件,取消您要启用的模块的注释。例如,如果您需要支持 iSCSI over RDMA 客户端,则取消ib_iser模块的注释。

修改完成后,保存文件并重启rdma-load-modules@rdma.service服务以使更改生效:

systemctl restart rdma-load-modules@rdma.service

2.2 配置 IP over InfiniBand (IPoIB)

如果需要配置 IPoIB,可以通过创建 NetworkManager 连接配置文件来完成。例如,使用nmcli命令创建 IPoIB 连接:

nmcli con add type infiniband con-name ib0 ifname ib0 master eth0

替换ib0eth0为实际的设备名称。

2.3 配置 RoCE

如果使用 RoCE,需要确保网卡驱动已正确加载,并配置 RoCE 版本。例如,临时更改 RoCE 版本:

mkdir /sys/kernel/config/rdma_cm/mlx5_0/
echo "IB/RoCE v1" > /sys/kernel/config/rdma_cm/mlx5_0/ports/1/default_roce_mode

2.4 验证配置

使用ibstat -v命令检查物理端口状态。确保端口状态为 Active,物理状态为 LinkUp。

如果需要测试网络性能,可以使用qperf工具。例如,在服务器端启动qperf,在客户端运行以下命令:

qperf -v -i mlx4_0:1 192.0.2.1 rc_bi_bw

三、配置示例

示例 1:配置 InfiniBand 网络

环境描述

  • 两台服务器,分别命名为 ServerA 和 ServerB。
  • 服务器之间通过 InfiniBand 网络连接。
  • ServerA 的 InfiniBand 设备名为 ib0,ServerB 的设备名为 ib1。

配置步骤

  1. 安装 RDMA 软件包
    在 ServerA 和 ServerB 上分别运行以下命令:

    dnf install rdma-core libibverbs-utils infiniband-diags
    
  2. 配置 IPoIB
    在 ServerA 上运行以下命令:

    nmcli con add type infiniband con-name ib0 ifname ib0 master eth0
    

    在 ServerB 上运行以下命令:

    nmcli con add type infiniband con-name ib1 ifname ib1 master eth1
    
  3. 验证配置
    在 ServerA 上运行以下命令:

    ibstat -v
    

    如果输出显示ib0设备状态为 Active,则表示配置成功。

    在 ServerA 和 ServerB 上分别运行以下命令测试网络性能:

    qperf -v -i ib0 192.0.2.2 rc_bi_bw
    

示例 2:配置 RoCE 网络

环境描述

  • 两台服务器,分别命名为 ServerA 和 ServerB。
  • 服务器之间通过以太网连接,支持 RoCE。
  • ServerA 和 ServerB 的网卡设备名为 enp0s1。

配置步骤

  1. 安装 RDMA 软件包
    在 ServerA 和 ServerB 上分别运行以下命令:

    dnf install rdma-core libibverbs-utils infiniband-diags
    
  2. 配置 RoCE
    在 ServerA 和 ServerB 上分别运行以下命令:

    mkdir /sys/kernel/config/rdma_cm/mlx5_0/
    echo "IB/RoCE v1" > /sys/kernel/config/rdma_cm/mlx5_0/ports/1/default_roce_mode
    
  3. 验证配置
    在 ServerA 上运行以下命令:

    ibstat -v
    

    如果输出显示设备状态为 Active,则表示配置成功。

    在 ServerA 和 ServerB 上分别运行以下命令测试网络性能:

    qperf -v -i mlx4_0:1 192.0.2.2 rc_bi_bw
    

四、附录

如果 ibstat 命令未显示设备信息

可能是 RDMA 内核模块未正确加载。可以尝试手动加载模块:

modprobe ib_uverbs
modprobe ib_core

相关文章:

  • 专门做化妆的招聘网站网站出售
  • 合肥那家公司做网站百度一下你就知道移动首页
  • 余杭区建设规划局网站深圳企业黄页网
  • 做网站每年需要购买域名吗吴中seo网站优化软件
  • php 做网站网络营销的模式有哪些
  • 怎么做网站啊徐州seo推广
  • 11 MySQL 如何优化数据查询方案?
  • Cookie 在 HTTP 中的作用HTTP 中的状态码
  • HuggingFace下载的模型缓存到了C盘,如何安全迁移到其他盘
  • 通达信 蛟龙腾飞突破信号系统
  • 【深度学习新浪潮】空间计算的医疗应用技术分析(简要版)
  • 数学:多项式相乘法则详解
  • 刷题 | 牛客 - js中等题-下 (更ing)45/54知识点解答
  • Android14音频子系统-Linux音频子系统ALSA
  • selenium UI自动化元素定位中classname和CSS区别
  • 如何打造Apache Top-Level开源时序数据库IoTDB
  • 中国地图分幅编号计算工具
  • Nuclei安装+使用+基础教程(附安装包)-windows下
  • Altium Designer实现类似Allegro Z-Copy功能
  • AI正在使软件发生根本变化 | AI大咖说
  • 车牌识别与标注:基于百度OCR与OpenCV的实现(一)
  • HarmonyOS 5分布式数据库有哪些性能指标?
  • POJ2718-Smallest Difference(穷竭搜索:全排列)
  • vue3递归组件的使用
  • 不用vue,只用html,即可简单实现electron项目
  • 初学python的我开始Leetcode题10-3