You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Deepspeed多节点训练报错:errno:98-地址已占用问题求助

Deepspeed多节点训练端口占用问题解决

问题原因

master_port是**主节点(node_rank=0)**用来接收从节点连接的监听端口,只有主节点会绑定这个端口;从节点是主动发起连接到主节点的master_addr:master_port,不会在本地绑定该端口。你遇到的报错是因为从节点本地的7000端口已经被其他进程占用,和主节点的端口占用无关。

另外,你当前在两个节点分别手动启动脚本的方式也容易引发问题,Deepspeed支持通过hostfile自动分发任务到从节点,无需手动在每个节点启动。

解决步骤

1. 清理从节点的7000端口占用

在报错的从节点上执行命令,查看占用7000端口的进程:

lsof -i :7000
# 或者
netstat -tulpn | grep 7000

找到进程ID(PID)后,杀掉该进程:

kill -9 <PID>

2. 修正启动方式(推荐)

只在主节点(node_rank=0)执行启动脚本即可,Deepspeed会通过hostfile自动连接从节点并启动训练任务,无需手动在从节点运行命令。

3. 检查hostfile配置

确保你的hostfile正确列出两个节点的信息,格式如下:

xxx.xx.xx.198 slots=1  # 主节点IP,对应master_addr
<从节点IP> slots=1

其中slots对应每个节点的GPU数量(此处为1)。

4. 若必须手动启动从节点

如果因为环境限制必须手动在两个节点启动,需确保:

  • 主节点启动命令中node_rank=0,从节点node_rank=1
  • 从节点本地没有其他进程占用7000端口
  • 两个节点之间的7000端口通信是打通的(防火墙允许)

验证

清理端口后,按照正确方式启动训练,即可解决卡在初始化和端口占用的问题。

内容的提问来源于stack exchange,提问作者linos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 15:17:33