Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
Nagios 可以监控的功能有:
1、监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);
2、监控主机资源(处理器负荷、磁盘利用率等);
3、简单地插件设计使得用户可以方便地扩展自己服务的检测方法;
4、并行服务检查机制;
5、具备定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;
6、当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式);
7、可以定义一些处理程序,使之能够在服务或者主机发生故障时起到预防作用;
8、自动的日志滚动功能;
10、可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;
nagios 如何能实现这么多功能,主要是他要依赖与很多的插件,如果没有插件光单存的安装一个nagios意义是不大的。所以这样就产生了一个问题,在安装与配置nagios的时候会很复杂。在开始我在安装与配置的时候看到了需要安装很多的包,有人的是用编译安装有的人是用的是yum或rpm包来安装的,要这的就会产生很多的环境不一样。在初始做这一项工作时,我也是很头大。虽然在安装的过程中会发现很多的路径不一样,只要你在用编译安装插件等的时候,你把路径指定一下就OK了。
关于nagios配置文件和路径(注:这里的路径有可能不一样,但是大多数的安装都会在这个路径下,如果不是可以用find去找到配置文件即可)
/usr/local/nagios/在安装完后nagios的配置文件一般在这个目录下
Bin |
Nagios执行程序所在目录,nagios文件即为主程序 |
Etc |
Nagios配置文件位置 |
Sbin |
Nagios cgi 文件所在目录,也就是执行外部命令所需文件所在目录 |
Share |
Nagios网页文件所在目录 |
Var |
Nagios日志文件、sqid等文件所在的目录 |
/usr/local/nagios/etc/cgi.cfg #控制CGI访问的配置文件
/usr/local/nagios/etc/nagios.cfg #Nagios的主配置文件
/usr/local/nagios/etc/resource.cfg #resource.cfg定义了一些变量,以便被其他文件引用,如$ USER1 $对象#对象是一个目录,用于定义Nagios的对象服务器
/usr/local/nagios/etc/objects/commands.cfg #命令定义配置文件,里面定义的命令可以被其他文件引用
/usr/local/nagios/etc/objects/contacts.cfg #联系人和联系人组配置文件
/usr/local/nagios/etc/objects/localhost.cfg #监控本地机器的配置文件
/usr/local/nagios/etc/objects/printer.cfg #监控点的打印机的一个事例配置文件(默认未启用)
/usr/local/nagios/etc/objects/switch.cfg #监控点的路由器的一个事例配置文件(默认未启用)
/usr/local/nagios/etc/objects/templates.cfg #模板配置文件,在此可以定义模板,在其他文件中引用
/usr/local/nagios/etc/objects/timeperiods.cfg #定义监控时间段的配置文件
/usr/local/nagios/etc/objects/windows.cfg #监控的Windows的一个事例配置文件(默认未启用)
/usr/local/nagios/etc/objects/hostgroup.cfg #自己创建的主机群组配置文件