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

求助:Locust Worker节点启动失败,无法连接Master节点

Locust Worker无法连接Master节点的排查与解决方法

问题重现

执行以下命令启动Locust Master及7个Worker节点:

locust -f locust_test.py --master-host=10.5.0.3 --master --master-port=8089 > master.log 2>&1 & for x in {1..7}; do locust -f locust_test.py --master-host=10.5.0.3 --master-port=8089 --worker > worker_$x.log 2>&1 & done

Worker节点出现如下警告:

[2024-08-08 09:58:47,279] locust-32-core-qwed/WARNING/locust.runners: Failed to connect to master 10.5.0.3:8089, retry 18/60.

排查与解决步骤

  • 确认Master节点正常启动并监听端口

    1. 查看Master日志验证启动状态:tail -f master.log,检查是否存在Starting Locust master at *:8089类日志,确认端口已正常监听。
    2. 检查端口绑定情况:执行ss -tulpn | grep 8089(或netstat -tulpn | grep 8089),确保端口绑定的是0.0.0.0或10.5.0.3,而非127.0.0.1(绑定回环地址会导致外部节点无法访问)。
    3. 修正Master启动命令:Master启动无需指定--master-host参数,该参数仅用于Worker节点。正确的Master启动命令应为:
      locust -f locust_test.py --master --master-port=8089 > master.log 2>&1 &
      
  • 检查网络连通性与防火墙规则

    1. 在Worker节点测试端口连通性:执行nc -zv 10.5.0.3 8089或telnet 10.5.0.3 8089,若连接失败则说明存在网络或防火墙拦截问题。
    2. 开放Master节点8089端口:
      • 若使用firewalld:
        firewall-cmd --add-port=8089/tcp --permanent
        firewall-cmd --reload
        
      • 若使用iptables:
        iptables -A INPUT -p tcp --dport 8089 -j ACCEPT
        
    3. 确认Master与Worker处于同一可互通网络,检查VPC、子网路由是否允许两者间的流量传输。
  • 验证Locust版本一致性
    Master与Worker节点的Locust版本必须完全一致,否则会出现兼容性问题。分别在两边执行locust --version,版本不一致时统一升级或降级至同一版本。

  • 查看Worker日志获取详细错误
    查看Worker节点的worker_x.log文件,根据具体错误定位问题:

    • 连接超时:优先排查网络延迟、防火墙拦截或路由配置问题。
    • 连接被拒绝:确认Master节点是否正常启动,端口是否正确监听。

内容的提问来源于stack exchange,提问作者Dhanashekhar I.J.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 23:17:41