首页 > 其他分享 >mellanox&nvidia ib高速网络优化及常见问题FAQ

mellanox&nvidia ib高速网络优化及常见问题FAQ

时间:2024-06-20 12:28:37浏览次数:11  
标签:常见问题 Leaf FAQ 端口 交换机 模块 nvidia LED 节点

一、Infiniband vs 以太网区别

  • Ethernet和InfiniBand是特点鲜明的两种不同的互连技术,各有所长,都有自己的适用场景。Ethernet主要是为了实现万物互联。Infiniband主要表现在带宽、时延、网络可靠性、和组网方式上。
  • 在高性能计算场景中,数据传输很容易成为瓶颈,为了解决高带宽、低延时的要求,产生了RDMA技术,即可以直接访问另外一台节点内存中的数据。Infiniband天生支持RDMA。为了降低成本,产生在以太网上运行RDMA的技术,即ROCE。
  • 对于Ethernet的组网,当网络内的节点数量增加到一定程度的情况下,很容易产生arp风暴,造成带宽的浪费。为此,又引入了Vlan机制,为了避免环路,又引入的STP等等,又增加了延迟,等等。网络的配置会比较复杂。
  • 在高性能计算领域,丢包重传对整体性能的影响非常大。InfiniBand是一个完整的网络协议有自己定义的一至四层格式,发送端是否可以发送,是受接收端调度控制的,这样就可以保证报文从发送到接受都不会出现拥塞,这样不仅实现了真正意义上的无损网络;
  • Ethernet构造的网络没有基于调度的流控机制,导致报文在发出的时候是不能保证对端是否会出现拥塞的,因此,为了能够吸收网络内瞬时流量的突然增大,需要在交换内开辟多大数十MB的缓存空间用于暂时存储这些报文,而缓存的实现是非常占用芯片面积的,这使得同等规格的Ethernet的交换机芯片面积明显大于InfiniBand芯片,不仅成本高而且功耗也会更大,除此之外,由于没有端到端的流控机制,导致网络在略极端情况下,会出现缓存拥塞而导致的丢包,使得数据转发性能大幅波动。

二、典型 IB link width 速率

三、NDR/HDR的发展趋势

  • NDR vs HDR:
  • NDR性能更好,带宽是hdr的两倍,并且支持更多的加速库,更多功能,比如拥塞控制等等。理论上会提高更好的网络性能。
  • 产品规格不一样,对于小交换机,NDR交换机采用的64个NDR400的端口,可以通过split,设置成128个NDR200的端口。HDR采用的是40端口,可以通过split,设置成80个HDR100的端口。
  • HDR目前还是主流产品。NDR稳定性还不好。

HDR交换机

NDR交换机

ConnectX7

四、ib交换机各型号常见问题

4.1 交换机EDR-CS7500系列:

用户手册:NVIDIA Mellanox CS7500 InfiniBand 智能机箱式交换机 | NVIDIA

4.1.1交换机各种指示灯状态定义

tatus LED[上]

LED 状态

描述

Leaf板没有上电

绿:常亮

Leaf板工作正常

绿:闪烁

Leaf板正在启动或者恢复出厂设置

黄:常亮

故障

Bad PoBadPort LED[中]

LED 状态

描述

所有端口都正常

黄:闪烁

一个或多个端口异常

Ø常见问题:

Leaf指示灯不亮。

Ø可能原因:

Leaf板接触不良?

Leaf板故障?

Leaf板所在槽位异常?

Ø排查思路:

先重新插拔页板。

如果没有恢复,就考虑交叉验证,确定是哪个模块的问题。确定之后,就开case、申请rma。

Leaf Module Port Connector LED Assignment

LED 状态

描述

端口没有供电

绿:常亮

逻辑连接正常,up

绿:闪烁

有数据传输,闪烁频率和数据传输速度成正比

黄:常亮

物理连接正常,up

黄:闪烁

物理乱路有问题

Ø常见问题:

端口指示灯不亮。

Ø可能原因:

端口接触不良,线缆两端。

线缆故障。

端口故障。

Ø排查思路:

先重新插拔线缆两端的端口。

如果没有恢复,就考虑交叉验证线缆和设备端口,确定是哪个模块的问题?

Status LED[上]

LED 状态

描述

Spine板没有上电

绿:常亮

Spine板工作正常

绿:闪烁

Spine板正在启动或者恢复出厂设置

黄:常亮

故障

Bad Port LED[中]

LED 状态

描述

所有端口都正常

黄:闪烁

一个或多个端口异常

UID LED Switch Identifier[下]

调试功能的端口,应该还没有启用。

Ø常见问题:

Leaf指示灯不亮,或者黄灯。

Ø可能原因:

Leaf板接触不良?

Leaf板故障?

Leaf板所在槽位异常?

Ø排查思路:

先重新插拔页板。

如果没有恢复,就考虑交叉验证,确定是哪个模块的问题。确定之后,就开case、申请rma。

Fan LED

LED 状态

描述

绿:常亮

Spine风扇状态正常

黄:常亮

其中一个风扇不工作,需要更换

Spine to Leaf IB Connection Status LEDs

LED 状态

描述

连接已关闭

绿:常亮

逻辑连接正常,OK

绿:闪烁

有数据活动

黄:常量

物理连接已建立

物理连接:[Physical connection],表示物理层,比如线缆、供电等。

逻辑连接:[Logicalconnection],表示软件层,比如opensm已经下发lid号等等。

4.1.2 交换机管理端口定义

1 I2C/CONSOLE:1个用于本地连接管理板,对管理板进行常规配置。

注意:建议使用mellanox官方附赠的console线缆。未经认证的线缆,可能会导致接口挂起,严重的话,会虽坏接口。

2 MGMT:2个以太网管理口。主要用来远程管理,可以通过ssh、或者web界面等等。

1USB port:1个USB端口,应该是安装系统的时候使用的。

1RST:1个重置按钮,可以用来切换master。另外,按住15秒,会重置管理模块,恢复默认密码等等。

1QSFP:一个QSFP端口,主要用来调试。

4.1.3 开关机操作

开机:

Ø在连接交流电之前,检查所有的FRU(可更换单元)已经正确插入。支持热插拔的部件有管理模块、Leaf模块、Spine模块、Leaf风扇、Spine风扇、PSU。

Ø开机通常需要5分钟左右,如果有LED指示灯保持黄灯超过7分钟,请关闭系统。

关机:

Ø无法远程关机,将电源拔出即可。

Ø把两块管理板拔出[应该也可以]。

注意事项:

Ø注意:如果模块发生故障,更换模块的时候,一定要保证是同一个系列、同一代的交换芯片。千万不要混合使用。

Ø注意:通常一半的PSU电源,就可以保障交换机的电源供应。如果没有足够的电力,交换机会停用一部分的Leaf模块。

Ø注意:在更换部件的时候,拔出旧部件,等待一分钟。之后再插入新的部件。

Ø注意:如果交换机同时有好几块板子需要更换,换一块,等一会儿,确认正常了,再换另外一块。不要一下子,都换上去。

4.2 HDR200-CS8500系列

4.2.1 NDR400-CS9500系列:

HDR200-QM8700系列:【40端口】

ØMQM8700-HS2F NVIDIA Quantum 200Gb/s InfiniBand switch, 40 QSFP56 ports, two power supplies (AC), x86

dual core,standard depth, P2C airflow,rail kit

ØMQM8700-HS2R NVIDIA Quantum 200Gb/s InfiniBand switch, 40 QSFP56 ports, two power supplies (AC), x86

dual core,standard depth, C2P airflow,rail kit

ØMQM8790-HS2F NVIDIA Quantum 200Gb/s InfiniBand switch, 40 QSFP56 ports, two power supplies (AC), unmanaged, x86 dual core, standard depth,P2C airflow, rail kit

ØMQM8790-HS2R NVIDIA Quantum 200Gb/s InfiniBand switch, 40 QSFP56 ports, two power supplies (AC), unmanaged, x86 dual core, standard depth,C2P airflow, rail kit

Ø曙光OEM

4.2.2 带管理模块和不带管理模块的交换机的区别:

1.交换机的管理方式不一样,比如带管理模块,需要安装OS,可以执行部分管理操作。不带管理模块,对交换机配置(比如重命名交换机),只能通过IB命令完成。

2.带管理模块的交换机,功能更多,节点数少的话,可以将opensm服务,启动到交换机上。

3.带管理模块的交换机,可以自己记录一些日志信息,出现问题,方便排查。

NVIDIAQuantum-2:NDR400交换机

NVIDIAQuantum:HDR200交换机

Switch-IB/Switch-IB2:EDR交换机

SwitchX-2:FDR交换机

DAC:铜缆AOC:光缆

官方手册:https://docs.nvidia.com/networking/display/include/200G+%28HDR%29+Based+Switch+and+HCAs+Cable+Connectivity+Matrix%3A+May22+Release

ØWinOF官方手册:https://docs.nvidia.com/networking/display/winof2v280/NVIDIA+WinOF2+Documentation+v2.80

ØWinOF驱动下载地址:https://network.nvidia.com/products/adaptersoftware/ethernet/windows/winof-2/

Ø注意事项:Windows下的Mellanox网卡驱动叫做WinOF。

•For ConnectX-3 and ConnectX-3 Pro drivers download WinOF.

•For ConnectX-4 and onwards adapter cards drivers download WinOF-2.

五、 IB网络典型拓扑图

5.1 300节点的胖树拓扑

传统的树形网络拓扑,带宽是逐层收敛的,树根处的带宽要远小于所有带宽的综合。

为了实现网络带宽的无收敛,胖树网络中的每个节点(根节点除外)都需要保证上行带宽和下行带宽相等,并且每个节点都要提供对接入带宽的线速转发的能力。

使用40端口的交换机举例:

使用40端口的hdr200的交换机,二层胖树,无缩减,构建300节点的集群:

核心层至少使用8台,接入层使用15台,每个交换机连20个节点。

六、IB网络优化

6.1 检查网络内没有降速、init的链路

•可以通过iblinkinfo、ibdiagnet命令检查。

6.2 检查交换机上连线,数量是否正确。

•可以通过iblinkinfo命令。

6.3 检查相同型号的设备固件、驱动版本一致。

•可以通过ibdiagnet、ibstat等命令,检查固件。

•可以通过ofed_info

-s命令检查驱动版本。

Ø如果节点数较多,建议根据实际情况,调整opensm的相关配置。

6.4 寻找链路质量不稳定的链路,比如误码率高、经常down的链路,定位问题原因,并处理。

•查看opensm日志,看是否有报错日志刷屏。tail

-f /var/log/opensm.log | egrep  -i

"Link state change|Removed|expired|down"

•通过ibdiagnet命令,输出日志报告,并分析。

•通过mlxlink命令,单独定位某个端口的误码率等信息。

•通过perfquery命令,查看某个端口的计数器信息。

【使用前,建议清理一下历史记录。】

•通过ibqueryerrors命令,查看各种超过阈值的端口信息。【使用前,建议清理一下历史记录。】

如果有多块网卡,有时候可能需要指定网卡id。示例:ibdiagnet -i mlx5_0--pc

ibdiagnet命令,依赖的工具的版本。

--pc:重置一下网络内的端口的PM计数器。比如有一些计数器超过了阈值,产生了Error的告警。如果不加--pc,下次扫描,报告中还会有告警。所以我经常会加--pc。

注意:

-I-:表示是 Info级别 的信息。

-W-:表示是 Warn级别 的信息。

-E-:表示是Error级别 的信息。

注意:

对于2.6.2.MLNX20210321.84ba964版本的ibdiagnet命令,在Port Conters章节,会扫描两次计数器。

默认等待1s,会再扫描一次。可以通过参数修改等待时间。

在此处等待了1s,然后又扫描了遍。对于不同版本的ibdiagnet,第二次的扫描结果会单独记录,有的会直接覆盖掉ibdiagnet2.db_csv。

注意:Nodes Information章节非常重要。相同型号的设备固件不统一,会在此处展示。如果版本不一致的少,会直接在此处打印出来。如果太多,就直接放到报告中了,需要进入报告中确认。

子网管理器信息,主节点、备节点,以及优先级、所在节点等信息。

对前面的扫描结果做一个汇总,有多少条告警信息,有多少条Error信息,等等

详细的告警、错误信息,放到了该文件中。

其他的报告文件列表

注意:ibdiagnet命令扫描出来的告警信息,并不是一定要处理掉的哈。具体问题,还需要管理员分析。

注意:一直强调同一个类型的设备,项目实施期间,固件版本刷新一致。在项目交付之后,再发现问题,要调整部分设备的固件版本,会比较麻烦。

注意:ibdiagnet命令还有很多参数。ibdiagnet -r --pc --pm_pause_time 600 -P all=1 --extended_speeds all --pm_per_lane --reset_phy_info --get_phy_info --get_cable_info

七、IB网络常见问题

问题1:通过iblinkinfo、ibstat命令,看到节点HCA端口状态为Disable或Polling!

常见原因:

1.交换机与计算节点连接的端口被Disable。【通过ibportstate命令将该端口启用。enable之前,最好了解一下Disable的原因。】

2.HCA的某个参数被误修改。【重新刷一下该节点的IB固件。】

3.线缆没插好。【重新插拔线缆、或者更换线缆。】

问题2:通过ibstat命令,看到节点HCA端口状态为Polling!

常见原因:

1.hca端口故障。

2.线缆有故障,或者没插好。

3.交换机端口异常。【交叉验证,确定具体有问题的设备。】

问题3:通过ibstat命令,看到节点HCA端口状态为Down/Initializing,但是物理状态为Linkup!

常见原因:

1.交换机和HCA的固件不兼容。常见于跨代的设备之间。【将老设备固件刷新至合适版本。通常是最新版本。】

问题4:通过ibstat命令没有正常输出,通过iblinkinfo命令,看到该端口始终Init!

常见原因:

1.HCA节点异常,建议断电重启。不是reboot。

标签:常见问题,Leaf,FAQ,端口,交换机,模块,nvidia,LED,节点
From: https://blog.csdn.net/qq_27815483/article/details/139710656

相关文章

  • 【能力提升】SQL Server常见问题介绍及快速解决建议
    前言本文旨在帮助SQLServer数据库的使用人员了解常见的问题,及快速解决这些问题。这些问题是数据库的常规管理问题,对于很多对数据库没有深入了解的朋友提供一个大概的常见问题框架。下面一些问题是在近千家数据库用户诊断时发现的常规问题,本文分为【常见问题诊断流程】-......
  • 计算机图形学入门13:纹理映射常见问题、MipMap
        上一章介绍了纹理映射,这一章介绍纹理映射常见的问题。1.纹理太小 1.1产生原因        例如要渲染一面墙,它的分辨率4K,但与它对应的纹理大小是256x256,这样要怎样?显然纹理会被拉大。当墙面上一个点去查询纹理时,可能查询到不准确的值,如下:        ......
  • PHP面试宝典之Laravel篇(15个常见问题轻松搞定Laravel面试)
    引言在PHP的众多框架中,Laravel以其优雅的语法、丰富的功能以及强大的社区支持而脱颖而出。对于PHP开发者而言,掌握Laravel已成为迈向高级开发的必经之路。本文将深入探讨Laravel框架的核心概念和高级特性,为即将面临Laravel相关工作面试的开发者提供一个全面的复习材料。本文最......
  • Ant Design Vue 的 Notification 组件如何调用以及常见问题解释
    AntDesignVue是一个基于Vue.js的UI组件库,它提供了一套丰富的组件来构建高质量的企业级应用程序。其中,Notification组件用于在屏幕的角落显示全局通知,以告知用户某些信息或操作的结果。以下是关于如何在AntDesignVue中调用Notification组件的详细介绍。什么是......
  • Jmeter分布式性能测试环境的搭建常见问题
     1.在负载机上安装jmeter,修改jmeter\bin\jmeter.properties配置:1)server.rmi.ssl.disable=false改server.rmi.ssl.disable=true,注释要去掉2)启动jmeter-server.bat2.在本地测试机修改jmeter.properties配置:1)在jmeter.properties中remote_hosts=127.0.0.1:1099,192.xxx......
  • redis常用5种数据类型及其常见问题(缓存穿透,缓存击穿,缓存雪崩)
    1.字符串(String)2.哈希(hash):redishash是一个string类型的字段和value的映射表,hash特别适合存储对象3.列表(List):字符串列表,按照插入的顺序。可以添加一个元素到列表的头部或尾部4.集合(set):String类型的无序集合。集合成员不可重复,redis中集合通过哈希表实现的,添加,删除,查找复杂度......
  • 不同PC设备共用同用一套键鼠,以及使用Barrier常见问题解决方案
    设备环境:一台windows11,一台ubuntu桌面版网络环境:使用同一wifi一、下载安装windows安装下载地址:Releasev2.4.0·debauchee/barrier·GitHububuntu安装sudoapt-getinstallbarrier二、设置使用服务端设置服务端作为主控端,键鼠连接的是服务端设备,配置连接......
  • Redis常见问题
    1key的生存时间到了,Redis会立即删除吗?不会立即删除。定期删除:Redis每隔一段时间就去会去查看Redis设置了过期时间的key,会再100ms的间隔中默认查看3个key。惰性删除:如果当你去查询一个已经过了生存时间的key时,Redis会先查看当前key的生存时间,是否已经到了,直接删除当前key......
  • 青龙面板常见问题合集
    前言在青龙面板跑脚本的过程中可能会出现各种错误,这里给大家汇总一下常见的问题类型,之后有其他的问题的话会慢慢更新。如果嫌麻烦可以选择直接上车:Rabbit  备用地址:Pro QQ群:570499950阿里云服务器:阿里云高校计划_云工开物_助力高校科研与教育加速-阿里云云小站_专享......
  • [FAQ] vscode 装了 vim 之后,ctrl+p 不起作用?
     #进入设置(左下角setting)-->vim.handleKeys-->在settings.json中编辑,把需要禁用Vim的热键以json格式写入vim.handleKeys中即可,如:"vim.handleKeys":{"<C-a>":false,"<C-c>":false,"<C-x>":false,&......