侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

【storm集群】storm 工作目录不停生成hs_err_pidXXX.log

2022-06-28 星期二 / 0 评论 / 0 点赞 / 61 阅读 / 2257 字

昨天搭建好集群,提交了topology,但是始终没有结果。今天debug一天终于解决了,记录下来。问题描述:##ui显示topology在运行,但是emit, uptime等数据始终为0。jps没有发

昨天搭建好集群,提交了topology,但是始终没有结果。今天debug一天终于解决了,记录下来。

问题描述:##

  • ui显示topology在运行,但是emit, uptime等数据始终为0。
  • jps没有发现worker进程,看 supervisor.log 和 worker-*.log,发现supervisor一直在启动worker进程,但是worker马上就死了
  • 工作目录不停产生hs_err_pidXXX.log日志。

解决过程:

  1. 开始怀疑代码有问题,在本地模式下调试,确实发现问题,但是解决完问题成功在本地运行后,在集群上还是一样

  2. 看到很多hs_err_pidXXX.log,在网上查了下是jvm崩溃了,因为对java了解不深,以为是java版本问题(集群机器上有1.6 1.7 两个版本)。于是将集群的机器都改成 1.6。结果还是有问题

  3. 反复看各种storm日志,google, 改代码,重新跑topology, 重启集群,以root身份启动集群....... 结果都失败了

  4. 回头找了下介绍hs_err_pidXXX.log,定位了问题(不能确定)从文件头部信息看来,是 libzmq这个库的问题。运维安装的是最新稳定版的zeromq 和 jzmq。在两者兼容性问题上纠结了半天,网上查了很多博客资料,依旧搞不出个所以然。

  5. 无意中看到storm出 0.9 了,想着是不是zeromq和jzmq太新了(刚release几天),而用的storm-0.8.1是12年release的,不兼容。抱着换0.9的想法,去找了下0.9的release log 。结果!卧槽尼玛,好大一个坑啊!!!

  6. 重新编译了 zeromq-2.1.7, 成功运行topology

注: 其实storm/bin里面有个脚本install_zmq.sh, 使用这个脚本安装就可以了。jzmq也使用脚本里的冻结的源码,使用最新的源码也会有出现上面说的问题!

总结:

storm 文档好少,实例好少,问题及解决好少,得靠自己多摸索啊

广告 广告

评论区