当下大规模AI训练成为常态,RoCEv2凭借高性能、低延迟与低CPU开销的优势,已成为构建智算中心的优先选择。然而,RoCE对网络无损的严苛要求,配置不当会放大拥塞,如 PFC、ECN、Buffer滞留等引发的高延迟、性能下降等,而这些问题统一表现为“GPU通信异常”。而逐项排查的操作相当繁琐。
为解决 RoCE 网络监控运维上的不便,我们新推出了EasyRoCE-NE(RoCE网卡状态采集,NIC Exporter)RoCE网卡状态采集工具。
EasyRoCE 工具集是星融元依托开源、开放的网络架构与技术,为AI 智算、超算等场景的RoCE网络提供的一系列实用特性和小工具,如一键配置RoCE,高精度流量监控等…

NE 是 EasyRoCE 工具集中针对服务器网络监控部分的组件。由两部分构成:Exporter 客户端(NIC Exporter)、监控面板自动化创建程序(NIC Generator)
NIC Exporter 运行在GPU服务器内部,采集GPU网卡的配置、流量状况信息。转换为Prometheus能读取的标准格式并通过HTTP接口暴露。
NIC Generator运行在部署EasyRoCE 工具集的服务器上,从 AID 工具(AI基础设施蓝图规划,AI Infrastructure Descriptor)(数据库组件)读取GPU服务器的IP信息。即可自动在 UG 工具 (统一监控面板,Unified Glancer)中创建可视化面板,将NIC Exporter采集到的信息展示出来。


1.将nic_exporter上传到GPU服务器中,并后台启动
chmod +x nic_exporter nohup ./ nic_exporter &
2.将nic_exporter.tgz上传到服务器的EasyRoCE工具集目录下并解压,解压后其目录结构如下
. ├── ne_dashboard.json #UG面板文件 ├── nic_generator.py #启动脚本 └── requirements.txt #依赖
其中ne_dashboard.json为UG的面板文件,nic_exporter.py是工具的启动脚本。
注意:这里为了为了避免影响服务器自身的python环境,推荐使用venv作资源隔离。
python -m venv .venv source .venv/bin/activate
安装依赖
pip install -r requirement.txt
3. 启动
./nic_generator.py
4. 打印如下即成功创建UG面板
Pushing dashboard to Grafana... Dashboard pushed successfully: {'id': 116, 'slug': 'gpu-server8', 'status': 'success', 'uid': 'easyroce-ne-gpu-server8', 'url': '/d/easyroce-ne-gpu-server8/gpu-server8', 'version': 4} All dashboards processed. Total: 8. Url: http://10.106.219.5:3000/dashboards/f/2LzXeK6Hk Pushing dashboard to Grafana... Dashboard pushed successfully: {'id': 116, 'slug': 'gpu-server8', 'status': 'success', 'uid': 'easyroce-ne-gpu-server8', 'url': '/d/easyroce-ne-gpu-server8/gpu-server8', 'version': 4} All dashboards processed. Total: 8. Url: http://10.106.219.5:3000/dashboards/f/2LzXeK6Hk
【面板展示】
访问打印信息中的URL即可访问UG面板
NE面板目录
NE网卡详细信息展示左上角变量就是该服务器的网卡,切换变量则可以展示不同网卡的信息。
全部0条评论
快来发表一下你的评论吧 !