纵观我们部署在基础设施当中并始终保持运作的全部测量机制,监控系统无疑是重要性最高的机制之一,但它却常常遭到我们的忽视。如果能够建立起一套坚实的监控系统来针对可能发生的灾难加以警示,我们就有机会迅速启动灾难响应方案或者着手排除复杂的性能故障,这对于任何规模的企业而言都极具巨大的实际价值。
有效的运行监测体系,最终离不开相关技术平台的支撑,而我们需要了解监测技术平台.
详解十三款运维监控工具
一、开源工具介绍
- Zabbix
- Nagios
- Ganglia
- Grafana
- Zenoss
- Open-falcon
- Cacti
- 天兔开源监控(只适用于mysql、redis、oracle)
二、商用运维监控系统篇
- 监控宝
- 听云
- 360网站服务监控
- 阿里云监控
- 百度云观测
一、开源工具介绍
Zabbix
官方网站:https://www.zabbix.com/
推荐星级:★★★★★
Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级开源运维平台,也是目前国内互联网用户中使用最广的监控软件,云智慧遇到的85%以上用户在使用Zabbix做监控解决方案。
入门容易、上手简单、功能强大并且开源免费是云智慧对Zabbix的最直观评价。Zabbix易于管理和配置,能生成比较漂亮的数据图,其自动发 现功能大大减轻日常管理的工作量,丰富的数据采集方式和API接口可以让用户灵活进行数据采集,而分布式系统架构可以支持监控更多的设备。理论上,通过 Zabbix提供的插件式架构,可以满足企业的任何需求。
用户群:90%以上中小型的泛互联网企业
优点:
1. 支持多平台的企业级分布式开源监控软件
2. 安装部署简单,多种数据采集插件灵活集成
3. 功能强大,可实现复杂多条件告警,
4. 自带画图功能,得到的数据可以绘成图形5. 提供多种API接口,支持调用脚本6. 出现问题时可自动远程执行命令(需对agent设置执行权限)
缺点:
1. 项目批量修改不方便2. 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发,难度较大;3. 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;并且自定义的项目报警需要自己设置,过程比较繁琐(但是网上的模板比较,也可以使用模板导入的方法);4. 缺少数据汇总功能,如无法查看一组服务器平均值,需进行二次开发;5. 数据报表需要特殊二次开发定义;
Nagios
官方网站:https://www.nagios.org/
推荐星级:★★★★☆
Nagios是一款开源的企业级监控系统,能够实现对系统CPU、磁盘、网络等方面参数的基本系统监控,以及 SMTP,POP3,HTTP,NNTP等各种基本的服务类型。另外通过安装插件和编写监控脚本,用户可以实现应用监控,并针对大量的监控主机和多个对象 部署层次化监控架构。
![image_1bnnjd8s59gg1pr71q97nmplr3m.png-129.1kB][2]
Nagios最大的特点是其强大的管理中心,尽管其功能是监控服务和主机的,但Nagios自身并不包括这部分功能代码,所有的监控、告警功能都是由相关插件完成的。
用户群:适合复杂IT环境的企业
优点:
1. 出错的服务器、应用和设备会自动重启,自动日志滚动
2. 配置灵活,可以自定义shell脚本,通过分布式监控模式
3. 支持以冗余方式进行主机监控,报警设置多样
4. 命令重新加载配置文件无需打扰Nagios的运行
缺点:
1. 事件控制台功能很弱,插件易用性差
2. 对性能、流量等指标的处理不给力
3. 看不到历史数据,只能看到报警事件,很难追查故障原因
4. 配置复杂,初学者投入的时间、精力和成本比较大
Ganglia
官方网站:http://ganglia.info/
推荐星级:★★★★☆
Ganglia是加州大学伯克利分校发起的一个开源集群监控项目,设计之初是用于监控数以千计的网络节点。Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统。它已被广泛移植到各种操作系统和处理器架构上。
![image_1bnnji6etu471k52m9he72ld513.png-726.2kB][3]
用户群:适用于大型服务器集群用户。
优点:
1. 适合监控系统性能,通过曲线很容易见到每个节点的工作状态
2. 可以自定义监控项,监控展示有表格和图像两种,支持手机版
3. 部署方便,通过不同的分层管理上万台机器,无需逐个添加配置
缺点:
1. 没有内置的消息通知系统
2. 没有报警机制,出现问题不能够及时报警
Grafana
推荐星级:★★☆☆☆
官方网站:http://grafana.org/
Grafana可以用在任何需要数据可视化的地方,如果有一天老板需要你做一份漂亮的业务数据图表,你无需头疼用什么绘图库去开发,你要做的仅仅是将业务数据稍作加工存入Grafana支持的DataSource,点几下鼠标即可配制出一份完美的数据图表。
因为这款工具只可以绘图,我们可以通过influxdb监控,Prometheus采集的主机信息!
Zenoss
推荐星级:★★★★☆
Zenoss Core是Zenoss的开源版本,其商用版本为ZenossEnterprise。作为企业级智能监控软件,Zenoss Core允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss Core的强大能力来自于深入的列表与配置管理数据库,以发现和管理公司IT环境的各类资产。Zenoss同时提供与CMDB关联的事件和错误管理系统, 以协助提高各类事件和提醒的管理效率。
优点:
1. Zenoss比较出色的地方在于它的Dashboard,可以配置很多portlet
2. 每个用户的界面都是分开管理的,自定义dashboard不会影响其他用户
3. 强大监控功能支持服务器、路由交换、防火墙、存储、数据库、中间件监控
4. 采用基于HBASE的opentsdb存储任意时间段的数据
5. 将状态监控,性能监控,资源管理,良好的报告机制进行有机的整合
缺点:
1. 对资源要求较高,即使只管理少数几台设备,也需要消耗大量硬件及内存等附加资源。2. 针对windows系统,开源版只提供SNMP,通过WMI检测CPU,Disk,软硬件和性能只在收费版提供。
Open-falcon
推荐星级:★★★☆☆
Open-falcon是小米运维团队从互联网公司的需求出发,根据多年的运维经验,结合SRE、SA、DEVS的使用经验和反馈,开发的一套面向互联网的企业级开源监控产品。
Open-falcon架构
用户群:目前有几十家企业用户不同程度使用。
优点:
1. 自动发现,支持falcon-agent、snmp、支持用户主动push、用户自定义插件支持
2. 支持每个周期上亿次的数据采集、告警判定、历史数据存储和查询
3. 高效的portal、支持策略模板、模板继承和覆盖、多种告警方式、支持callback调用
4. 单机支撑200万metric的上报、归档、存储
5. 采用rrdtool的数据归档策略,秒级返回上百个metric一年的历史数据
6. 多维度的数据展示,用户自定义Screen
7. 通过各种插件目前支持Linux、Windows、Mysql、Redis、Memache、RabbitMQ和交换机监控。
缺点:
由于发布时间较短,很多基础的服务监控插件(如Tomcat、apache等)还不支持,很多功能还在不断完善中,另外由于缺少专门的支持,虽然有开放社区,但是解决问题的效率相对较低。
Cacti
推荐星级:★★★☆☆
官方网站:http://www.cacti.net
提示: 近几年cacti和nagios已经基本被zabbix代替
Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP、MySQL、SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用 RRDtool绘画图形,它的界面非常漂亮,能让你根本无需明白rrdtool的参数能轻易的绘出漂亮的图形。而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结 构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,让你添加自己的snmp_query和script!功能非常强大完善,界面友好。可以说,Cacti将rrdtool的所有“缺点”都补足了!下图是Cacti运行的主界面,
Cacti 工作流程
步骤一,snmp协议收集远程服务器的数据
步骤二,将snmp收集的数据内容保存到rrd数据库中
步骤三,若用户查看某台设备上的流量或其它状态信息 步骤四,在mysql数据库中查找该设备对应的rra数据库文件的名称
步骤五,通过rrdtool命令进行绘图即可提示:cacti的图确实不好找,只能官网截一个
还有很多不出门的监控工具,这里就不在介绍了。
天兔开源监控(只适用于mysql、redis、oracle)
推荐星级:★★☆☆☆
官方网站:http://www.lepus.cc/
简洁、直观、强大的开源数据库监控系统,MySQL/Oracle/MongoDB/Redis一站式性能监控,让数据库监控更简单
优点: 中文开源软件,里面监控mysql和redis可以精确到sql语句
缺点: 因为只有监控数据库和非关系数据库,监控项不能统一,不能结合其他监控平台
二、商用运维监控系统篇
监控宝
推荐星级:★★★★★
官方网站:http://www.jiankongbao.com
监控宝是云智慧为用户提供IT性能监控(IT Performance Monitoring)的SaaS产品,包含网站监控、服务器监控、中间件监控、数据库监控、应用监控、API监控和页面性能监控等功能。包含免费版、畅 享版和企业版,目前用户约40万,监控宝app也是国内唯一提供移动监控服务的产品。
我个人网站也在使用
免费的监控有限,但是报警确实不错
报警也是相当快的,有短信有邮件
优点:
作为国内最早提供基于SaaS服务的网络监控平台,监控宝不但为初级用户提供免费的标准服务,企业用户还可以按需购买所需的监控、告警资源,最大限度的节省企业运维成本;
监控宝通过遍布全球的300多个分布式监测节点,对网络进行稳定性和可用性的主动监控和实时分析,支持http(https)、ftp、ping、udp、tcp、smtp、traceroute等多种协议,测量CDN效果及DNS状态,全网全地域性能趋势分析。
优点太多了,反正花钱的就是好的
缺点:
除了花钱,没有不好的地方
听云
推荐星级:★★★★★
官方网站:http://www.tingyun.com
听云是帮助客户实时监控定位从崩溃报错、慢交互到网络环境出错等多维度复杂的性能问题。听云致力于用户视角的IT管理创新服务,为不同行业提供最终用户端到端的完整应用链的性能管理解决方案,帮助客户不断优化系统性能及用户体验,提高用户满意度和企业竞争力。
360网站服务监控
推荐星级:★★☆☆☆
360网站服务监控是一款面向广大站长的网站监控产品,提供免费的网站、服务器监控。
用户群:个人站长
优点:
服务免费,支持网站HTTP监控、PING监控、域名DNS监控和服务器监控
提供网站访问全景数据和简单配置信息
缺点:
只支持简单的网站和服务器监控,历史数据保留15天,且免费监控点数量仅为四个
最后一次产品更新是2014年9月,目前已停止更新和运营支持
价格也不是很便宜
阿里云监控
官方网站:https://aliyun.com
推荐星级:★★★★☆
阿里云监控是一款免费网站监控产品,可监控站点和服务器,并提供多种告警方式:短信,旺旺,邮件。
用户群:阿里云用户
优点:
与阿里云服务捆绑紧密,允许用户自定义数据监控
阿里云多IDC间内网数据传输,不占用客户公网资源
支持对业务数据的通用统计,从各个角度反应服务的运行情况
缺点:
所有服务基于阿里云,功能单一,扩展性差
功能不够强大,只能满足基础监控需求
百度云观测
推荐星级:★★☆☆☆
官方网站:http://ce.baidu.com/
百度云观测是百度推出的一款云服务产品,类似于360云监控、阿里云监控,主要是为站长提供免费的一站式网站监测、预警服务,功能覆盖网站运行状况、安全和访问速度等多个方面。
用户群:个人站长
优点:
对于用户每日访问的站点进行安全检测
国内各大城市云节点覆盖,支持CDN、DNS状态和主机监控
缺点:
需要进行网站认证
监控点少,功能简单,只能监测网站状态,不支持服务器、应用监控。
文章参考: