我有两个storm集群-一个使用ubuntu。这个集群工作正常,很长时间没有问题。我刚刚在一台单独的机器上建立了第二个集群(有单独的zookeeper、nimbus和supervisors)。我在喷口上加了几行字:
String msgid = UUID.randomUUID().toString();
_collector.emit(new Values(sentence), msgid);
检查消息是否得到确认。另外,bolt还有一个ack方法。
当我在ubuntu集群上启动这个拓扑时,一切都正常。我可以看到消息正在通过喷口得到确认。
但是当我在centos集群上启动相同的拓扑时,消息并没有得到消息的确认。
但在光轮,主管,Zookeeper上没有错误。
这里是 zoo.cfg
```
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
autopurge.purgeInterval=24
autopurge.snapRetainCount=5
这里是 `storm.yaml` :
storm.zookeeper.servers:
- "xxxxxxxxxxx"
nimbus.host: "xxxxxxxx"
nimbus.childopts: "-Xmx1024m -Djava.net.preferIPv4Stack=true"
ui.childopts: "-Xmx768m -Djava.net.preferIPv4Stack=true"
supervisor.childopts: "-Djava.net.preferIPv4Stack=true"
worker.childopts: "-Xmx768m -Djava.net.preferIPv4Stack=true"
storm.local.dir: "/mnt/storm"
我禁用了iptables,selinux,打开了安全组中的所有端口(我在aws上)
不知道去哪里找问题。
p、 目前我使用的是0.8.2版本的storm。但我也尝试了0.9.0.1。尝试了两种通信方法(zeromq和netty)
暂无答案!
目前还没有任何答案,快来回答吧!