IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

storm集群的监控

淘宝网通用产品团队博客 2012-01-27 18:16:57 累计浏览 3,642 次
本机暂存

     所谓兵马未动,粮草先行,准备将storm用在某个项目中做实时数据分析。无论任何系统,一定要有监控系统并存,当故障发生的时候你能第一个知道,而不是让别人告诉你,那处理故障就很被动了。

     因此我写了这么个项目,取名叫storm-monitor,放在了github上

      https://github.com/killme2008/storm-monitor

     主要功能如下:

    1.监控supervisor数目是否正确,当supervisor挂掉的时候会发送警告。

    2.监控nimbus是否正常运行,monitor会尝试连接nimbus,如果连接失败就认为nimbus挂掉。

    3.监控topology是否正常运行,包括它是否正常部署,是否有运行中的任务。

     当故障发生的时候通过alarm方法警告用户,开放出去的只是简单地打日志。因为每个公司的告警接口不一样,所以你需要自己扩展,修改alarm.clj即可。我们这儿就支持旺旺告警和手机短信告警。

     基本的原理很简单,对supervisor和topology的监控是通过zookeeper来间接地监控,通过定期查看path是否存在。对nimbus的监控是每次起一个短连接连上去,连不上去即认为挂掉。

     整个项目也是用clojure写。你的机器需要安装leinexec插件,然后将你的storm.yaml拷贝到conf目录下,编辑monitor.yaml设定监控参数如检查间隔等,最后启动start.sh脚本即可。默认日志输出在logs/monitor.log。

同分类推荐文章

  1. 从零重建 macOS 开发机:可复现的环境初始化流程 (2026-06-14 20:36:00)
  2. 百度物理网络监控工具开源第二弹:毫秒级监控工具 baize,让你的网络问题无处遁形 (2026-06-11 08:10:28)
  3. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)

查看更多 DevOps 文章 →

建议继续学习

  1. Storm:最火的流式处理框架 (累计阅读 7,467)
  2. Storm源码浅析之topology的提交 (累计阅读 5,939)
  3. Storm源码浅析之topology的提交 (累计阅读 5,727)
  4. storm入门教程 第一章 前言 (累计阅读 5,112)
  5. storm集群的监控 (累计阅读 4,282)
  6. Storm入门教程 第二章 构建Topology (累计阅读 4,248)
  7. storm常见问题解答 (累计阅读 4,018)
  8. Storm配置项详解 (累计阅读 3,604)
  9. storm入门教程 第四章 消息的可靠处理 (累计阅读 3,247)
  10. Storm入门教程 第五章 一致性事务 (累计阅读 2,863)