开源系统监控工具Nagios、Zabbix和Open-Falcon的功能特性汇总及优缺点比较
Nagios
Nagios 全名为(Nagios Ain’t Goona Insist on Saintood),最初项目名字是 NetSaint。它是一款免费的开源 IT 基础设施监控系统,其功能强大,灵活性强,
能有效监控 Windows 、Linux、VMware 和 Unix 主机状态,交换机、路由器等网络设置等。Nagios核心功能是监控报警,告警能力很不错,但是图形展示效果很差。
同时nagios更加灵活,很多功能都要通过插件化来实现,对于技术能力没那么强的同学,上手会有些困难。当然,对于运维老手,上手会很快。
Nagios 的功能特性如下:
• 监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);
• 监控主机资源(处理器负荷、磁盘利用率等);
• 简单地插件设计使得用户可以方便地扩展自己服务的检测方法;
• 并行服务检查机制;
• 具备定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;
• 当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式);
• 可以定义一些处理程序,使之能够在服务或者主机发生故障时起到预防作用;
• 自动的日志滚动功能;
• 可以支持并实现对主机的冗余监控;
• 可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;
Zabbix
Zabbix是一个企业级的开源分布式监控解决方案,支持实施从数以万计的服务器、虚拟机、网络设备等收集百万的指标数据,具备常见的商业监控软件所具备的功能(主机的性能监控、网络设备性能监控、数据库性能监控、FTP等通用协议监控、多种告警方式、详细的报表图表绘制)支持自动发现网络设备和服务器;支持分布式,能集中展示、管理分布式的监控点;扩展性强,server提供通用接口,可以自己开发完善各类监控。
Zabbix重要组件说明:
• zabbix server:负责接收agent发送的报告信息的核心组件,所有配置、统计数据及操作数据都由它组织进行;
• database storage:专用于存储所有配置信息,以及由zabbix收集的数据;
• web interface:zabbix的GUI接口;
• proxy:可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力;
• agent:部署在被监控的主机上,负责收集主机本地数据如cpu、内存、数据库等数据发往server端或proxy端;
优点:
• All in One:部署相当便捷
• Server对宿主机性能要求很低。
• 自动发现服务器与网络设备
• 分布式监控,以及WEB集中管理功能
• 同时支持agent采集和无agent采集,主机通过agent 或者ipmi采集数据,网络设备、存储设备等通过 SNMP 客户端采集数据,agent支持常用的UNIX和Windows操作系统
• 功能全面,数据采集、数据存储、数据展现、事件告警。
• 开放式接口,扩展性强,插件编写容易
不足:
• 数据库瓶颈,使用mysql作为底层存储,大数据读写的时候,对于数据库的压力非常大
• 需要在主机中安装agent
• 对容器监控支持不好,需要自己扩展。
Open-Falcon
Open-Falcon是小米运维部门开源出来的互联网企业级监控系统,目前包括小米、金山云、美团、京东金融、赶集网等都在使用Open-Falcon。Open-Falcon 整体可以分为两部分,
即绘图组件、告警组件。“绘图组件”负责数据的采集、收集、存储、归档、采样、查询、展示(Dashboard/Screen)等功能,可以单独工作,作为time-series data的一种存储
展示方案。“告警组件”负责告警策略配置(portal)、告警判定(judge)、告警处理(alarm/sender)、用户组管理(uic)等,可以单独工作。
关键功能特性有:
• 数据采集免配置:agent自发现、支持Plugin、主动推送模式
• 容量水平扩展:生产环境每秒50万次数据收集、告警、存储、绘图,可持续水平扩展。
• 告警策略自发现:Web界面、支持策略模板、模板继承和覆盖、多种告警方式、支持回调动作。
• 告警设置人性化:支持最大告警次数、告警级别设置、告警恢复通知、告警暂停、不同时段不同阈值、支持维护周期,支持告警合并。
• 历史数据高效查询:秒级返回上百个指标一年的历史数据。
• Dashboard人性化:多维度的数据展示,用户自定义Dashboard等功能。
• 架构设计高可用:整个系统无核心单点,易运维,易部署。
缺点:
• 支持的监控类型较少,不支持常用应用服务器如tomcat、apache、jetty等的监控。
• 没有专门的运维支持,代码更新较少,没有一个较大的社区来维护,后续想要有什么新的能力基本只能指望自己扩展。
Open-Falcon 作为国内首个开源监控系统,可谓大型互联网公司的首选监控解决方案,比 zabbix的容量更大,使用更方便,节省了运维与开发人员的时间成本。
Open-Falcon官网介绍:
https://book.open-falcon.org/zh_0_2/intro/
附:
Zabbix、Nagios和Open-Falcon的整体优缺点对比图:
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15498/viewspace-2638172/,如需转载,请注明出处,否则将追究法律责任。
开源系统监控工具Nagios、Zabbix和Open-Falcon的功能特性汇总及优缺点比较的更多相关文章
- 淘宝内部大量使用的开源系统监控工具--Tsar
Tsar是淘宝开发的一个非常好用的系统监控工具,在淘宝内部大量使用 它不仅可以监控CPU.IO.内存.TCP等系统状态,也可以监控Apache,Nginx/Tengine,Squid等服务器状态 ...
- 淘宝开源系统监控工具Tsar
Tsar是淘宝开发的一个非常好用的系统监控工具,在淘宝内部大量使用 它不仅可以监控CPU.IO.内存.TCP等系统状态,也可以监控Apache,Nginx/Tengine,Squid等服务器状态 ...
- 非常实用的Linux 系统监控工具
随着互联网行业的不断发展,各种监控工具多得不可胜数.这里列出网上最全的监控工具.让你可以拥有超过80种方式来管理你的机器.在本文中,我们主要包括以下方面: 命令行工具 网络相关内容 系统相关的监控工具 ...
- 系统管理员都要知道的 30 个 Linux 系统监控工具
1. top - 进程活动监控命令 top 命令会显示 Linux 的进程.它提供了一个运行中系统的实时动态视图,即实际的进程活动.默认情况下,它显示在服务器上运行的 CPU 占用率最高的任务,并且每 ...
- Cacti nagios zabbix 的区别
Cacti nagios zabbix 的区别 首先 Cacti 是一个用 rrdtool 来画图的网络监控系统, 通常一说到网络管理, 大家首先想到的经常是 mrtg, 但是 mrtg 画的图比较简 ...
- 管理员必备的Linux系统监控工具
管理员必备的Linux系统监控工具 #1: top - 进程活动 top提供一个当前运行系统实时动态的视图, 也就是正在运行进程.在默认情况下,显示系统 中CPU使用率最高的任务,并每5秒钟刷新一次. ...
- 管理员必备的20个Linux系统监控工具
需要监控Linux服务器系统性能吗?尝试下面这些系统内置或附件的工具吧.大多数Linux发行版本都装备了大量的监控工具.这些工具提供了能用作取得相关信息和系统活动的量度指标.你能使用这些工具发现造成性 ...
- 【转】管理员必备的Linux系统监控工具
原文连接: 管理员必备的Linux系统监控工具 #1: top - 进程活动 top提供一个当前运行系统实时动态的视图,也就是正在运行进程.在默认情况下,显示系统中CPU使用率最高的任务,并每5秒钟刷 ...
- 分布式监控系统(类zabbix)
目录: 为什么要做监控? 监控系统业务需求分析: 监控系统架构设计: 监控系统表结构设计: 一.为什么要做监控系统? 市面上已经有很多成熟的监控系统,例如zabbix.nagios,为什么自己开发监控 ...
随机推荐
- 受限玻尔兹曼机(RBM)以及对比散度(CD)
1. RBM 的提出 BM 的缺点: 计算时间漫长,尤其是无约束自由迭代的负向阶段: 对抽样噪音敏感: 流行软件的不支持: 受限玻尔兹曼机(Restricted Boltzmann Machine,简 ...
- leetcode先刷_Pascal's Triangle II
三角相对简答题.第一个问题是太简单.我不沾了,我一定会写.其实没什么的第二个问题,与这个问题计算路径有点像一个三角形,假定输入是n,然后从第一行计数到第一n行,保存在数据线上的时间到,由于只有相关的事 ...
- WPF DispatcherTimer(定时器应用) 无人触摸60s自动关闭窗口
原文:WPF DispatcherTimer(定时器应用) 无人触摸60s自动关闭窗口 如果无人触摸:60s自动关闭窗口 xmal:部分 <s:SurfaceWindow x:Class=&qu ...
- WPF学习笔记:(二)数据绑定模式与INotifyPropertyChanged接口
数据绑定模式共有四种:OneTime.OneWay.OneWayToSource和TwoWay,默认是TwoWay.一般来说,完成数据绑定要有三个要点:目标属性是依赖属性.绑定设置和实现了INotif ...
- boost库asio详解8——几个TCP的简单例子
摘于boost官网的几个例子, 做了点小修改, 笔记之. 同步客户端 void test_asio_synclient() { typedef boost::asio::io_service IoSe ...
- 探究操作系统的内存分配(malloc)对齐策略
问题: 我们在写程序的时候经常发现程序使用的内存往往比我们申请的多,为了优化程序的内存占用,搅尽脑汁想要优化内存占用,可是发现自己的代码也无从优化了,怎么办?现在我们把我们的焦点放到malloc上,毕 ...
- Grokking PyTorch
原文地址:https://github.com/Kaixhin/grokking-pytorch PyTorch is a flexible deep learning framework that ...
- CenOS7 docker部署lnmp环境
Step1:下载lnmp镜像 [root@docker html]# docker pull winstonpro/lnmp Step2:启动lnmp镜像的docker实例 [root@docker ...
- vs2015未能正确加载“ProviderPackage”包。
原文:vs2015未能正确加载“ProviderPackage”包. 出现以下错误的解决方案 --------------------------- Microsoft Visual Studio - ...
- 【MVC 笔记】MVC 自定义 Attribute 属性中的猫腻
原想在 MVC Action 上加一个自定义 Attribute 来做一些控制操作,最先的做法是在自定 Attribute 中定义一个属性来做逻辑判断,可惜事与愿违,这个属性值居然会被缓存起来,于是于 ...