以下是为麒麟服务器版V10配置RoCEv2的步骤:

第一步:确认硬件和驱动支持

在开始配置之前,首先要确保你的服务器硬件满足要求。通常需要Mellanox ConnectX系列网卡(例如mlx5系列),并且已安装最新的OFED驱动包。可以通过以下命令检查驱动状态:

modinfo mlx5_core  # 查看内核模块信息
lspci | grep Mellanox # 确认网卡型号

如果发现驱动未正确加载,需要从Mellanox官网下载对应版本的驱动并安装。

第二步:切换网卡到RoCEv2模式

默认情况下,RDMA可能运行在RoCEv1模式(基于以太网二层),而RoCEv2需要切换到三层IP模式。使用cma_roce_mode工具调整(假设网卡设备名为mlx5_1):

cma_roce_mode -d mlx5_1 -p 1 -m 2

这里的-m 2表示启用RoCEv2。完成后,建议通过dmesg | grep RDMA查看内核日志,确认模式切换成功。

第三步:配置流量控制和优先级

RoCEv2对网络质量敏感,需配合DCQCN(动态拥塞控制)和PFC(优先级流控制)。假设网卡接口名为ens1np0,需在系统中设置:

  1. 开启ECN和优先级:

    将优先级3(通常用于RoCE流量)的ECN功能启用:
    echo 1 > /sys/class/net/ens1np0/ecn/roce_np/enable/3
    echo 1 > /sys/class/net/ens1np0/ecn/roce_rp/enable/3
  2. 标记CNP报文:

    设置拥塞通知报文(CNP)的DSCP值和802.1p优先级:
    echo 48 > /sys/class/net/ens1np0/ecn/roce_np/cnp_dscp  # DSCP=48
    echo 6 > /sys/class/net/ens1np0/ecn/roce_np/cnp_802p_prio # 802.1p优先级6

第四步:优化网卡队列调度

通过Mellanox的mlnx_qos工具调整QoS策略,确保RoCE流量获得足够的带宽。例如,为优先级3分配更高的权重:

mlnx_qos -i ens1np0 --trust=dscp  # 信任DSCP标记
mlnx_qos -i ens1np0 -f 0,0,0,1,0,0,0,0 # 在优先级3启用PFC
mlnx_qos -i ens1np0 -s ets,ets,ets,ets,ets,ets,strict,strict -t 10,10,10,50,10,10,0,0 # 队列权重分配

这一步的关键是让优先级3(对应RoCEv2流量)的队列获得更高的带宽比例,避免其他流量抢占资源。

第五步:配置交换机端

如果服务器连接到交换机,需确保交换机配置与网卡一致。例如:

  • 在交换机上启用基于DSCP的PFC,并针对DSCP=48(即优先级3)开启流控。
  • 确认交换机的ECN功能已启用,并与服务器的DSCP/802.1p映射匹配。

    具体配置命令因交换机型号而异,建议参考交换机厂商的文档。

第六步:验证配置

最后一步是测试RoCEv2是否正常工作。推荐使用ib_send_bw工具进行带宽测试:

服务端:

ib_send_bw -d mlx5_1 --report_gbits -F -R

客户端:

ib_send_bw -d mlx5_1 --report_gbits -F -R <服务端IP>

如果看到稳定的高带宽(例如25Gbps或100Gbps,取决于网卡型号),说明配置成功。若出现丢包或低带宽,可以通过ethtool -S ens1np0检查网卡统计信息,或使用Wireshark抓包分析ECN和CNP报文。

注意事项

  • 网络服务重启:配置完成后,建议重启网络服务使设置生效:
    systemctl restart NetworkManager  # 或传统network服务
  • 内核参数:如果使用网卡绑定(bonding),需在/etc/modprobe.d/bonding.conf中配置miimon=100 mode=4(802.3ad动态聚合)。
  • 固件升级:如果遇到兼容性问题,可能需要升级网卡固件。

通过以上步骤,你应该能在麒麟V10上成功部署RoCEv2。如果在操作中遇到问题,可以优先检查驱动版本和交换机配置是否匹配,这是最常见的故障点。

麒麟V10部署ROCEv2网卡配置步骤的更多相关文章

  1. 大数据学习——linux系统的网卡配置步骤

    ifconfig 查看ip,没有ip时需要配置 配置步骤: 1输入命令setup,选择network configuration,选择runtool,选择device configuration,选择 ...

  2. jmeter 环境部署、数据库设置、分布式设置、多网卡配置等随笔

    <!-- linux系统修改系统环境变量  系统语言-->[root@web-249 ~]# env|grep LANGLANG=zh_CN.UTF-8[root@web-249 ~]# ...

  3. linux部署二:网卡配置和Yum源的替换

    一,初次登陆: 1.登陆(用root登陆)(1).账户名root(2).密码 ....2.工作界面切换A.Ctrl + alt + F1 : 图形化界面B.Ctrl + alt + F2----F6 ...

  4. .NET 6应用程序适配国产银河麒麟V10系统随记

    最近想在麒麟系统上运行.NET 6程序,经过一番折腾最终完成了,简单记录一下. 目标系统: CPU: aarch64架构(ARM64) 操作系统:银河麒麟V10高级服务器系统 银河麒麟V10系统(以下 ...

  5. (转)Centos7上部署openstack ocata配置详解

    原文:http://www.cnblogs.com/yaohong/p/7601470.html 随笔-124  文章-2  评论-82  Centos7上部署openstack ocata配置详解 ...

  6. 银河麒麟V10 SP1服务器操作系统-单用户模式与救援模式调试方法

    单用户模式 单用户模式:该模式下系统并没有完全运行进来,只是部分程序运行,包括网络服务,ssh服务等部分服务未运行,因此无法通过远程登录到操作系        统.进入单用户方式进行系统维护由是ROO ...

  7. MySQL数据库集群进行正确配置步骤

    MySQL数据库集群进行正确配置步骤 2010-06-09 10:47 arrowcat 博客园 字号:T | T 我们今天是要和大家一起分享的是对MySQL数据库集群进行正确配置,我前两天在相关网站 ...

  8. Oracle 11g客户端在Linux系统上的配置步骤详解

    Oracle 11g客户端在Linux系统上的配置步骤详解 2011-07-26 10:47 newhappy2008 CSDN博客 字号:T | T 本文我们主要介绍了Oracle 11g客户端在L ...

  9. linux学习之centos(三):网卡配置

    Linux系统版本:Centos 6.5 在linux学习之centos(二):虚拟网络三种连接方式和SecureCRT的使用中,使用远程工具SecureCRT,通过“ifconfig eth0 + ...

  10. 网卡配置和DNS配置,手动挂在nas存储的共享目录,网络相关其它操作命令,修改防火墙中的端口配置,resolv.conf配置详细介绍和网卡信息配置详细介绍

    1.   网卡配置和DNS配置 若想服务器能够发邮件,需要让部署的服务器能够访问到外网环境.若部署的服务器访问不到外网,通过ping www.baidu.com的方式执行的时候,会出现以下问题: &q ...

随机推荐

  1. w3cschool-Apache Kafka 教程

    参考https://www.w3cschool.cn/apache_kafka/ Apache Kafka 基础 2021-07-27 16:23 更新 对于大数据,我们要考虑的问题有很多,首先海量数 ...

  2. Redis的分布式锁详解

    Redis实现的分布式锁 # 对资源key加锁,key不存在时创建,并且设置,10秒自动过期 SET key value EX 10 NX # 删除key DEL key NX的作用 NX参数是为了保 ...

  3. 存储过程专题(Oracle)

    本文转自 https://www.cnblogs.com/lukelook/p/9600407.html,感谢博主 豆豆DE思念 整理分享. 1.Oracle 存储过程基本格式  最简单的版本 is ...

  4. [记录点滴]Spring Boot Admin源码分析笔记

    [记录点滴]Spring Boot Admin源码分析笔记 0x00 摘要 本文是过去使用Spring Boot Admin时候分析源码的笔记.虽然比较简单,但是也可以看出Spring Boot Ad ...

  5. vue-element-template改为从后台获取菜单

    一.后端接口获取菜单信息 1.返回数据样式 { "code": 20000, "data": [{ "menuId": "2000 ...

  6. 解锁 DeepSeek 的高效秘籍:技术人员的进阶技巧

    DeepSeek 作为一款强大的代码搜索引擎,能够帮助开发者快速定位代码.解决疑难问题,甚至学习前沿技术.但想要真正释放其潜力,必须掌握以下核心技巧.本文将通过重点标注,直击高效使用 DeepSeek ...

  7. 【效能提升】测试人员提bug,应该提供哪些信息以便排查问题?

    背景 我们在运维企业级应用时,会遇到很多Bug. 有时候,测试人员或业务方反馈bug,描述得不够详细,我们基于他的描述很难清晰地了解情况,以解决bug. 一般情况下,我们会跟他询问更多的详情,才能知悉 ...

  8. QT5笔记:4. 设置应用图标

    4. 设置应用图标 参考视频:https://www.bilibili.com/video/BV1AX4y1w7Nt # 在项目的.pro文件中添加如下内容,ico文件名称可变 RC_ICONS = ...

  9. Java 实现 Excel(XLS/ XLSX)和 HTML 格式之间的转换

    Excel 是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言.虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,以便更好地利用和展示数据.本文 ...

  10. Week09_day05(Java API操作Hbase)

    package com.wyh.HbaseAPI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbas ...