监控系统的选型建议,这是一款灵活( 二 )
缓存 :成功连接数、阻塞连接数、已使用内存、内存碎片率、请求量、耗时、缓存命中率
队列:连接数、队列数、生产速率、消费速率、堆积量
5应用监控
HTTP接口:URL存活、请求量、耗时、异常量
RPC接口:请求量、耗时、超时量、拒绝量
JVM :GC次数、GC耗时、各个内存区域的大小、当前线程数、死锁线程数
线程池:活跃线程数、任务队列大小、任务执行耗时、拒绝任务数
连接池:总连接数、活跃连接数
日志监控:访问日志、错误日志
业务指标:视业务来定 , 比如PV、订单量等
4. 监控的基本流程
无论是开源的监控还是自研的监控 , 监控的整个流程大同小异 , 一般都包括以下模块:
文章图片
数据采集:采集的方式有很多种 , 包括日志埋点进行采集(通过Logstash、Filebeat等进行上报和解析)JMX标准接口输出监控指标 , 被监控对象REST API进行数据采集(如Hadoop、ES)命令行 , 统一的SDK进行侵入式的埋点和上报等 。
数据传输:将采集的数据以TCP、UDP或者HTTP协议的形式上报给监控 , 有主动Push模式 , 也有被动Pull模式 。
数据存储:有使用MySQL、Oracle等RDBMS存储的 , 也有使用时序数据库RRDTool、OpentTSDB、InfluxDB存储的 , 还有使用HBase存储的 。
主流监控介绍
下面再来认识下主流的开源监控 , 由于篇幅有限 , 我挑选了3款使用最广泛的监控:Zabbix、Open-Falcon、Prometheus , 会对它们的架构进行介绍 , 同时总结下各自的优劣势 。
文章图片
1. Zabbix(老牌监控的优秀代表)
文章图片
Zabbix 1998年诞生 , 核心组件采用C语言 , Web端采用PHP 。 它属于老牌监控中的优秀代表 , 监控功能很全面 , 使用也很广泛 , 差不多有70%左右的互联网公司都曾使用过 Zabbix 作为监控解决方案 。
先来了解下Zabbix的架构设计:
文章图片
Zabbix架构图
Zabbix Server:核心组件 , C语言编写 , 负责接收Agent、Proxy发送的监控数据 , 也支持JMX、SNMP等多种协议直接采集数据 。 同时 , 它还负责数据的汇总存储以及告警触发等 。
【监控系统的选型建议,这是一款灵活】Zabbix Proxy:可选组件 , 对于被监控机器较多的情况下 , 可使用Proxy进行分布式监控 , 它能代理Server收集部分监控数据 , 以减轻Server的压力 。
Database:用于存储配置信息以及采集到的数据 , 支持MySQL、Oracle等关系型数据库 。 同时 , 最新版本的Zabbix已经开始支持时序数据库 , 不过成熟度还不高 。
Web Server:Zabbix的GUI组件 , PHP编写 , 监控数据的展现和告警配置 。
下面是 Zabbix 的优势:
产品成熟: 由于诞生时间长且使用广泛 , 拥有丰富的文档资料以及各种开源的数据采集插件 , 能覆盖绝大部分监控场景 。
采集方式丰富: 支持Agent、SNMP、JMX、SSH等多种采集方式 , 以及主动和被动的数据传输方式 。
推荐阅读
- 中国新闻网|团结香港基金就通识科提出13项建议 含取消七个等级评分方式
- 消化疾病|秋燥来袭口燥咽干还便秘?秋燥的人都应知道的4种缓解方法,建议收藏
- |初秋第一双鞋,建议你买这双鞋,百搭又时髦
- 穿搭|30岁以上的微胖女人若想视觉显瘦,下面这4款裤子,建议别再碰
- 建议|远洋集团建议分拆远洋服务控股有限公司独立上市
- 控股|远洋集团建议分拆远洋服务控股有限公司独立上市
- |西装、奶奶针织衫显老气?深度解析“衣橱单品”,建议你一定要看
- 穿搭|女人30岁以后,如果不差钱,建议多穿这几款裙子,减龄又显气质
- 樊辰杰|黄金还会跌吗?,樊辰杰:9.7黄金早间最新走势分析建议
- 引爆|忧美国大选引爆波动性,机构建议投资者这样对冲风险
