监视Apache Storm心跳/状态::不允许

时间:2016-05-19 10:16:58

标签: java monitoring apache-storm cloudera bigdata

是否可以监控Apache Storm发送给nimbus的心跳事件?

我目前遇到的问题是,我的工作人员看似随机重新分配,虽然我们没有看到整个群集中CPU,RAM,I / O或网络使用率出现任何明显的峰值,这可能表明瓶颈。我能够监视这一点的唯一方法是检查supervisor.log文件(Shutting down and clearing id xxx. Current supervisor time: 123. State: :disallowed, Heartbeat: { ... })和应用程序结果中的错误行为。风暴UI中没有错误,工作日志中没有堆栈跟踪(例如内存不足或其他任何内容)。

在一个小型4节点集群上运行风暴0.10,其中包括~12名工作人员和约650名执行人员。工作人员的最大JVM ram / childopts设置为4096MiB,这不应该在GC中产生有趣的结果。

1 个答案:

答案 0 :(得分:0)

事实上,任务心跳正在完成将其内置指标写入Zookeeper,而Nimbus从Zookeeper读取它们。

当Storm集群中的任务太多时,可能会对ZK进行大量写入,这会导致ZK过载,从而导致写入/读取心跳不准时。因此,当您发现ZK是瓶颈时,您需要监控Zookeeper并采取适当的措施。