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

Storm集群Supervisor部署拓扑时Nimbus连接拒绝问题求助

解决Storm Supervisor无法连接Nimbus下载拓扑代码的问题

这个问题我之前也碰到过,从你贴的日志里的Connection refused能明确看出来:Supervisor节点无法和Nimbus建立Thrift连接,这直接导致它没法从Nimbus的BlobStore下载拓扑代码执行。给你几个一步步排查的方案:

1. 先确认Nimbus服务是否正常运行

先登录到Nimbus节点,执行以下命令检查进程:

jps

看看输出里有没有nimbus进程。如果没有,重启Nimbus服务:

storm nimbus

同时可以查看Nimbus的日志(默认路径是${STORM_HOME}/logs/nimbus.log),确认启动过程中没有报错。

2. 验证Nimbus的Thrift端口是否能被Supervisor访问

Supervisor默认需要连接Nimbus的6627端口,在Supervisor节点上用以下命令测试连通性:

# 用telnet测试
telnet <你的Nimbus主机名/IP> 6627
# 或者用nc(如果安装了的话)
nc -zv <你的Nimbus主机名/IP> 6627

如果测试失败,需要排查两点:

  • 防火墙规则:检查Nimbus节点的防火墙是否开放了6627端口,比如用iptables -L查看规则,必要时添加开放规则:
    iptables -A INPUT -p tcp --dport 6627 -j ACCEPT
    
  • 配置正确性:确认Supervisor节点的storm.yaml里,nimbus.seeds参数是否正确指向了Nimbus的主机名或IP,不能有拼写错误。

3. 确保所有节点的Storm配置一致

Supervisor和Nimbus的storm.yaml里,以下关键参数必须完全一致:

  • nimbus.seeds:比如["nimbus-node-01"],所有节点要配置相同的内容
  • nimbus.thrift.port:如果修改了默认的6627端口,所有节点的配置要匹配
  • storm.thrift.transport:如果用了自定义传输插件,所有节点要统一(默认是org.apache.storm.security.auth.SimpleTransportPlugin)

4. 检查BlobStore相关配置(如果自定义过)

日志里提到了NimbusBlobStore,如果你没有修改过BlobStore配置,那还是回到Nimbus连接的问题上。如果用了HDFS或其他外部BlobStore,要确保Supervisor节点有访问该存储的权限,并且配置参数正确。

最后验证

当以上配置都确认无误后,重启Supervisor服务:

storm supervisor

然后查看Supervisor的日志(${STORM_HOME}/logs/supervisor.log),观察是否还有连接拒绝的错误,同时确认拓扑代码是否能正常下载执行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 06:52:57