nagios是一个开放源码的网络监控工具。它不仅免费,而且功能强大,并具有极强的可定制性。虽然学习和实施它比较复杂,但它在记录你们组织的IT基础架构如何运行方面,会节省大量的时间。
Nagios的有效性
为了理解Nagios的有效性,通常要考虑一个典型的IT基础架构由一个或多个系统管理员负责。即使是一个小公司,在他们所使用的计算机系统中,也应该包含有一定数量的,运行着许多服务和软件包的硬件。大公司则有成百上千的同类设施需要维护和运行。因此,不管是小公司,还是大公司,都需要分散式的操作,也就是拥有分散的IT基础架构,这种架构在物理上没有掌握所有机器信息的能力。
自然地,每一件硬件都将运行***一套软件产品。这就需要面对众多的硬件和软件需要监控,但管理员并不能注意到每一个特殊的项目;在这种情况下,默认只能采取发生问题后进行解决的方案,也就是基于反应的问题解决方法。而更糟糕的是,此种问题通常来自于终端用户的抱怨,这无疑为使IT部门的工作受到质疑。
除了显而易见的公共关系问题,这种基于反应的问题解决方案效率非常低下。如果及早发现问题,只需几分钟就能够解决,但若是发现的晚了,则将浪费更多的时间。举例来说,若是发现的早,通过日志就可以在磁盘空间用完之前,解决数据库空间不足的问题,并很容易就能够修复,但若是在系统暂定之后再进行修复,由于日记文件已经无法记录,因此将变得非常困难。
因此,一个能够帮助系统管理员进行此类操作的自动化工具就成为必需品。此类工具被分类到网络管理软件的类目中,都具有以下Nagios网络监控主要功能:
①能够记住基础设施中运行的所有服务器和机器;
②在小问题变大之前发出警告;
③从一个中心地点运行,以减少必须到每台物理机器才能解决问题的需求;
④提供一个有关全系统状态,未解决问题等的直观视图。
而这里还有两个阻碍网络管理软件被广泛采用Nagios网络监控的主要原因:
—它的花费太贵;
—它需要为一个给定的环境进行有效的配置工作。
Nagios是一个开放源码的网络管理工具,因此它解决了***个主要问题。当然,即使是Nagios也需要大量的合理配置,不过在这篇文章以下的叙述中,我会提出几个建议,以减少配置的负担。
Nagios的体系结构
Nagios应用软件运行在一个中心式的服务器上面,此服务器运行Linux或Unix操作系统。每一件硬件都必须由一个运行的Nagios进程监控,此进程与中心服务器通话。根据中心服务器可以阅读的配置文件中的指令, Nagios将"伸出并触摸"远程进程,并象棋发出指令,运行必要的检查。由于软件必须在Linux或Unix上运行,因此远程机器上的每一个硬件都能够被加入通话。
Nagios之后根据来自远程机器的反应,将根据它的配置,采取适当的行动。而根据远程测试执行的需要,Nagios将通过一台本地机器能力(例如,测试一个文件是否存在),或运行一个定制的测试程序(叫做插件),来执行测试,测试更多特殊的项目(例如,检查是否有一组特殊的值被放如数据库)。如果测试返回的值不正确,Nagios将通过一种或多种方法发出警告――同样,方法是根据Nagios的配置来选择的。
【编辑推荐】