Nagios
Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设备,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
功能介绍
Nagios 可以监控的功能有:
1、监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);
2、监控主机资源(处理器负荷、磁盘利用率等);
3、简单地插件设计使得用户可以方便地扩展自己服务的检测方法;
4、并行服务检查机制;
5、具备定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;
6、当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式);
7、可以定义一些处理程序,使之能够在服务或者主机发生故障时起到预防作用;
8、自动的日志滚动功能;
9、可以支持并实现对主机的冗余监控;
10、可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;
11、可以通过手机查看系统监控信息;
12、可指定自定义的事件处理控制器;
Nagios工作原理
Nagios的功能是监控服务和主机,但是他自身并不包括这部分功能,所有的监控、检测功能都是通过各种插件来完成的。
启动Nagios后,它会周期性的自动调用插件去检测服务器状态,同时Nagios会维持一个队列,所有插件返回来的状态信息都进入队列,Nagios每次都从队首开始读取信息,并进行处理后,把状态结果通过web显示出来。
Nagios提供了许多插件,利用这些插件可以方便的监控很多服务状态。安装完成后,在nagios主目录下的/libexec里放有nagios自带的可以使用的所有插件,如,check_disk是检查磁盘空间的插件,check_load是检查CPU负载的,等等。每一个插件可以通过运行./check_xxx –h 来查看其使用方法和功能。
Nagios的四种监控状态
ok, warn, critial, unknown
Nagios各状态监控需要用到的插件
check_by_ssh
check_nt
check_nrpe
check_nsca
check_snmp
check_xyz ---------> 代表可以自定义名字
=============================================================
部署nagios
nagios下载 https://www.nagios.org/downloads/nagios-core/thanks/?t=1503146125
下面以3.2.0版本的示范
部署nagios监控端
1、安装nagios核心
1) 安装nagios依赖软件
[root@nagios ~]# yum install -y httpd mariadb-server php php-mysql gd php-gd gcc unzip
[root@nagios ~]# systemctl start httpd
[root@nagios ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@nagios ~]# systemctl start mariadb
[root@nagios ~]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
2) 创建naigos用户
[root@nagios ~]# groupadd nagcmd
[root@nagios ~]# useradd -G nagcmd nagios
[root@nagios ~]# usermod -aG nagcmd apache
3) 安装nagios核心
[root@nagios ~]# tar zxf nagios-3.2.0.tar.gz
[root@nagios ~]# cd nagios-3.2.0
[root@nagios nagios-3.2.0]# ./configure --with-command-group=nagcmd
[root@nagios nagios-3.2.0]# make all
[root@nagios nagios-3.2.0]# make install>>>生成nagios相关的文件
[root@nagios nagios-3.2.0]# make install-init>>>生成nagios服务脚本
[root@nagios nagios-3.2.0]# make install-commandmode>>>设置nagios权限
[root@nagios nagios-3.2.0]# make install-config>>>生成配置文件
[root@nagios nagios-3.2.0]# make install-webconf>>>生成httpd子配置文件
创建一个登录nagios web页面的用户,这个用户账号在以后通过web登录nagios时使用
[root@nagios ~]# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin
[root@nagios ~]#
nagios目录介绍:
/usr/local/nagios安装目录
/usr/local/nagios/etc配置文件
/usr/local/nagios/libexec插件
2、安装nagios插件
# tar zxf nagios-plugins-1.5.tar.gz
# cd nagios-plugins-1.5
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make && make install
通过# ls /usr/local/nagios/libexec/命令可查看到插件表明插件安装成功
启动nagios服务,并设置开机自启动
[root@nagios ~]# /etc/init.d/nagios start
Reloading systemd: [ 确定 ]
Starting nagios (via systemctl): [ 确定 ]
[root@nagios ~]# chkconfig --add nagios
[root@nagios ~]# chkconfig nagios on
[root@nagios ~]# systemctl restart httpd
登录nagios的web界面 http://本机的IP/nagios