`
woodding2008
  • 浏览: 285339 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Storm平台监控方案[ 下 ]

 
阅读更多

监控选型

监控目标确定后,需要选择合适平台来实现数据收集、展示、以及告警。

经过调研发现小米运维部开源出来的Openfalcon设计巧妙,组件足够松散,扩容方便,经过大规模数据考验,周边生态比较完善。数据展示部分做得比较粗糙,不够美观,控制起来不是很方便,果断选择展示效果更胜一筹的Grafana,Grafana有比较绚的展示效果,而且有可以自动化的api使用,很容易实现定制以及程序化生成Dashboard,这里很感谢快网同学为Grafana与Openfalcon系统桥接插件做出的努力。

 

遇到的坑

  • Openfalcon的dashboard等个别组件依赖python,安装比较困难,跟作者沟通过,后续可能会用go重写。
  • Openfalcon组件太过于分散,管理成本较高,1.0版本也可能会做出调整。
  • Openfalcon权限部分太弱,扩展起来比较麻烦,快网、小米、美团等基本都是自己定制版。
  • Openfalcon的Judge组件以及mysql建议使用ssd盘,避免IO过高的问题
  • Grafana当时使用的是 v3.0.0-beta2,遇到了删除Dashboard API不太好用的问题,被迫使用页面上URL删除,这有很大隐患,目前V3.1.1问题已经fixed。

数据采集

  • Worker JVM信息通过Jmx的方式获取:GC、线程、老年代内存等
  • Worker 进程使用资源通过脚本获取:cpu、fd、日志等
  • 任务相关信息通过NimbusClient来获取,并做二次加工
  • 定时脚本抓取Jstack
  • 触发开关触发Jmap,生成堆文件
  • Openfalcon Agent默认会采集300项系统指标

 

数据汇报

  • agent插件汇报
  • jsonrpc4go RPC汇报

 

数据展示

Openfalcon提供API可以查看到endpoint下所有的监控项,Grafana也可以通过API的方式创建Dashboard,根据展示规则,采用程序【定时+手动】化生Dashboard【DashboardIndex】。

这里没有选择通过在Grafana中配置Template的方式来展示数据,这种方式效果不太理想,比如:过滤过期数据,展示版面控制个性化描述信息,用户视图展示等。

 

 

Oepfalcon API

  • POST   /graph/last
  • POST  /api/counters

 

Grafana API

  • GET        /api/search?query=$queryTitle&starred=false
  • POST      /api/dashboards/db/$dashboardName
  • DELETE  /api/dashboards/db/$dashboardName
  • POST      /api/user/stars/dashboard/$dashboardName

 

监控规模

  • 监控主机2800+
  • 监控指标70W+
  • 对接另外一个监控系统数据会整体翻倍

告警力度

  • 管理员收主机以及集群相关告警
  • 用户只收与自己相关任务告警

 

 老年代内存监控

 

 

 

  • 大小: 171.9 KB
分享到:
评论

相关推荐

    Storm入门教程 之Storm原理和概念详解

    Storm流计算从入门到精通之技术篇(高并发策略、批处理事务、Trident精解、运维监控、企业场景) Storm入门教程 之Storm原理和概念详解,出自Storm流计算从入门到精通之技术篇,Storm入门视频教程用到技术:Storm集群...

    Storm技术内幕与大数据实践

    汇集作者在大众点评和1号店实时平台的大数据实践, 讲解基于Storm的流数据处理的整体解决方案, 《Storm技术内幕与大数据实践》内容主要围绕实时大数据系统的各个方面展开,从实时平台总体介绍到集群源码、运维监控、...

    城市大数据平台.pptx

    目 录 2 运营、应用 3 项目案例 1 方案、产品 城市大数据平台全文共31页,当前为第1页。 智慧城市大数据建设背景 城市大数据平台全文共31页,当前为第2页。 大数据平台在智慧城市中的位置 城市大数据平台全文共31页...

    1城市大数据平台.pptx

    目 录 2 运营、应用 3 项目案例 1 方案、产品 1城市大数据平台全文共31页,当前为第1页。 智慧城市大数据建设背景 1城市大数据平台全文共31页,当前为第2页。 大数据平台在智慧城市中的位置 1城市大数据平台全文共31...

    DockOne技术总结整理(五)

    很多人在搞ELK,很多人也在搞Storm。更多人在用传统的Nagios、Zabbix等监控工具。Jason Dixon在2012就意识到这些工具的问题是每个人都想做到大而全,实际上我们更需要的是一对小二精的组件拼装成一个个性化的解决...

    数据分析方法与技术.pptx

    海量 数据存储 大规模计算 智能 分析算法 Zoo Keeper 明细数据 E T L 报表展示 数据分析 数据挖掘 元数据管理 数据质量监控 数据监控 数据集市 数据应用 汇总加工数据 数据应用 数据仓库 源数据 数据平台技术 ...

    Python.Unix和Linux系统管理指南

    书中各章都提出了具体的管理问题,如并发或数据备份,然后通过Python示例提供了解决方案。通过《Python UNIX和Linux系统管理指南》,读者可以学习如何用Python开发自己的一套命令行工具来解决诸多问题。 作者建立了...

    Python在Unix和Linux系统管理中的应用

    通过《Python在Unix和Linux系统管理中的应用(影印版)》及其辅助虚拟机,你将学习如何打包并部署Python应用程序和库文件,以及如何编写在多个Unix和Linux平台下都运行良好的代码。 通过这《Python在Unix和Linux系统...

    PYTHON UNIX和LINUX系统管理指南

    书中各章都提出了具体的管理问题,如并发或数据备份,然后通过Python示例提供了解决方案。通过《Python UNIX和Linux系统管理指南》,读者可以学习如何用Python开发自己的一套命令行工具来解决诸多问题。, 作者建立了...

    大型分布式网站架构与实践

     在开放平台体系下,OAuth协议如何保障ISV对数据的访问是经过授权的合法行为。  3.1 常见的Web攻击手段 128  3.1.1 XSS攻击 128  3.1.2 CRSF攻击 130  3.1.3 SQL注入攻击 133  3.1.4 文件上传漏洞 139  3.1.5...

    switch security.rar

    二层安全: 一、MAC layer attacks 攻击方法: 1、MAC地址...3550(config-if)#storm-control broadcast level 5 按百分比进行监控 3550(config-if)#storm-control broadcast bps 10 按实际流量,注意单位是M

    java开源包1

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

    java开源包11

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

    java开源包2

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

    java开源包3

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

    java开源包6

    GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解的依赖注入和RPC机制。 Java扫雷游戏 JVMine JVMine用Applets开发的扫雷游戏,可在线玩。 public class JVMine extends java.applet....

Global site tag (gtag.js) - Google Analytics