Nagios是一款开源免费的网络监视工具,可以监控的设备:Windows,Linux,Unix,Router,Switch,打印机等,具有报警功能,是一个网络监控系统。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
Nagios Core 原先设计在Linux下运行,当然,它在其他的Unix系统下应该也能进行工作。
官方网站:http://www.nagios.org
也分为很多个Nagios版本
其中,我们看到Nagios 4.0 数字版本命名的为开源免费的版本(core开源免费也有很多版本是收费的,如上图),Nagios XI 英文版后缀再跟版本的命名为商业版本,如下图
针对于Nagios,我们需要配合许多组件和插件来工作(打开很慢,需要FQ):https://www.nagios.org/downloads/nagios-core-frontends/
Nagios界面很不美观,可以更换主题:https://www.nagios.org/downloads/nagios-core-addons/
Nagios插件:https://exchange.nagios.org
各类拓展组件官方网站,包括脚本:https://exchange.nagios.org/directory/Addons
Nagios运行模式和优点
运行模式:数据收集是C/S模式,用户查看监控信息是B/S模式
优点:
- 监控网路服务状态(HTTPD,FTP,SSH,MySql……)
- 监控主机资源(处理器符合,硬盘利用率……)
- 拓展,根据自己的需求实现拓展检测功能(插件开发)
- 自动日志回滚
- 能够定义网络主机的层次,允许逐级检查,就是从父主机开始向下检查
- 警告,基于状态的警告:OK,Warning(警告),critical(关键),unknown(未知)
- 可以支持并实现对主机的冗余监控
- Web界面可以查看当前网络状态,通知,问题历史,日志文件等
Nagios运行原理
Nagios的功能是监控服务和主机,但是他自身并不包括这部分功能,所有的监控、检测功能都是通过各种插件来完成的。
启动Nagios后,它会周期性的自动调用插件去检测服务器状态,同时Nagios会维持一个队列,所有插件返回来的状态信息都进入队列,Nagios每次都从队首开始读取信息,并进行处理后,把状态结果通过web显示出来。
Nagios提供了许多插件,利用这些插件可以方便的监控很多服务状态。安装完成后,在nagios主目录下的/libexec里放有nagios自带的可以使用的所有插件,如,check_disk是检查磁盘空间的插件,check_load是检查CPU负载的,等等。每一个插件可以通过运行
./check_xxx -h
来查看其使用方法和功能。
两张比较经典的监控图
在大规模生产环境中,如果需要浏览历史数据,需要结合db
获取数据的方式:主动发送、NRPE插件、SNMP、NSClient++
Nagios 通过NRPE 来远端管理服务
- Nagios 执行安装在它里面的check_nrpe 插件,并告诉check_nrpe 去检测哪些服务。
- 通过SSL,check_nrpe 连接远端机子上的NRPE daemon
- NRPE 运行本地的各种插件去检测本地的服务和状态(check_disk,..etc)
- 最后,NRPE 把检测的结果传给主机端的check_nrpe,check_nrpe 再把结果送到Nagios状态队列中。
- Nagios 依次读取队列中的信息,再把结果显示出来。
Nagios所需要的软件
- nagios-3.5.1.tar.gz #Nagios核心文件,Nagios服务文件,不建议用最新,很多插件没做好
- nagios-plugins-2.1.1.tar.gz #Nagios插件,用于存放脚本和命令
- NSCP-0.5.0 #也就是Nsclient++,用来监控Windows,分为64位、32位版本
- nrpe-2.15.tar.gz #代理服务,用于监控非Nagios服务器的服务器本地私有信息代理
- vautour_style.zip #主题包
本文暂时没有评论,来添加一个吧(●'◡'●)