Mar 132013
 

今年的一个目标,就是把监控好好搞搞。彻底熟悉一下nagios的使用。网上看了一下安装文档,感觉有点乱,安装文档,通常不详细解析组件的功能和用途。

基本介绍

先把一些常见的术语搞清楚。Nagios不仅仅是一个监控软件,其实更多像一个监控的框架,形成了一个生态圈,所以你需要了解他周围的东西很多。

Nagios介绍

自己以前转载过一篇文章原文,介绍的倒是很详细,只是当时没看懂,这次倒是用上。

监控软件,以前我倒是研究过一下,无非就两种:基于SNMP和通过agent来实现。基于SNMP,可以获得的数据会比较少,Agent的会比较多一点,但是也比较复杂。

Nagios通常由一个主程序(Nagios  Core)、一个插件程序(Nagios-plugins)和四个可选的附件(NRPE、NSCA、 NSClient++和NDOUtils)组成。Nagios的监控工作都是通过插件实现的,因此,Nagios和Nagios-plugins是服务器端工作所必须的组件。

    其它四个附件:
   (1)NRPE:用来在监控的远程Linux/Unix主机上执行脚本插件以实现对这些主机资源的监控。check_nrpe插件:运行在监控主机上 ,NRPE daemon:运行在远程的linux主机上(通常就是被监控机)
   (2)NSCA:用来让 被监控的远程Linux/Unix主机主动将监控信息发送给Nagios服务器(这在冗余监控模式中特别要用到)
   (3)NSClient++:用来监控 Windows主机时安装在Windows主机上的组件
   (4)NDOUtils:则用来将Nagios的配置信息和各event产生的数据存入数据库,以实现 这些数据的快速检索和处理

    这四个ADDON(附件)中,NRPE和NSClient++工作于客户端,NDOUtils工作于服务器端,而NSCA则需要同时安装在服务器端和客户端

所以你看安装文档的时候,就会看到各种文档,启用不同的插件,让你比较糊涂。另外Nagios提供web界面,不过只是展现功能,无法做任何的操作,例如添加监控节点,这个就只能在命令行下完成。

ICINGA

Nagios,其实可以理解为一个开源版本,一个商业版本。对于小的开源软件,这是一个不错的模式,不过一旦项目庞大,参与社区的开发者多了时候,就会出现矛盾:商业版本和开源版本的功能区别。这也是很可能导致分裂。Eucalyptus就是这样死掉了。

ICINGA,就是一个Nagios开发者独立出去成立的项目,项目野心很大,新的开源项目将完全兼容以前的Nagios应用程序及扩展功能。在新项目的网站上,他们是如此定义ICINGA的,这将是一个介于Nagios社区版和企业版间的产 品。特别将致力于解决Nagios项目现在的问题。 ICINGA,目前在加紧开发2.0的版本,完全抛弃1.x版本,将会在2013年底发布。到时候Nagios估计可以感受到压力。

据说web界面做的不错。改天要好好测试一下。很多配置,都和Nagios类似。

Centreon

Centreon作为nagios的分布式监控管理平台,其功能之强大,打造了Centreon在IT监控方面强势地位,它的底层使用Nagios监控软件,Nagios通过ndoutil模块将监控数据写入数据库,Centreon读取该数据并即时的展现监控信息,通过centreon可以简单地管理和配置所有Nagios,因此,完全可以使用centreon轻易的搭建企业级分布式IT基础运维监控系统。

简单理解,就是一个基于Nagios的Dashboard, 很多操作,可以在web完成。详细介绍

PNP4Nagios

这应该算是Nagios的一个插件,增强Nagios的图表功能。很多人是通过集成Cacti实现,不过现在可以通过这个nagios插件来实现,这个插件同时也支持ICINGA。软件更新还是很快,值得去尝试。

Check_MK

Check_MK也和Centreon有点类似,但是它有个更强大的地方是Check_MK有自己单独的数据采集客户端工具,配置也比较简单,当然同时也支持snmp。官方网站介绍

Check_MK 是开源的。Check_MK Monitoring-system 是收费的系统。这个估计需要花点时间了解才行。

37signals也是采用Check_MK ,可见这个插件的厉害。中文  英文

NagiosQL

这也是一个web管理Nagios和ICINGA。看了一下网站,目前是一个人在开发。也已经有1年没有更新。网站

Nconf

这也是一个Nagios web管理工具,可以实现web进行操作。不过我看了一下网站,发现已经有1年多没更新。看看git上的代码,感觉也不很活跃。不打算研究这个。

 Leave a Reply

(required)

(required)