Nagios
php
Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设备,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。mysql
功能介绍ios
Nagios 能够监控的功能有:web
一、监控网络服务(SMTP、POP三、HTTP、NNTP、PING等);sql
二、监控主机资源(处理器负荷、磁盘利用率等);apache
三、简单地插件设计使得用户能够方便地扩展本身服务的检测方法;服务器
四、并行服务检查机制;网络
五、具有定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;运维
六、当服务或主机问题产生与解决时将告警发送给联系人(经过EMail、短信、用户定义方式);ssh
七、能够定义一些处理程序,使之可以在服务或者主机发生故障时起到预防做用;
八、自动的日志滚动功能;
九、能够支持并实现对主机的冗余监控;
十、可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;
十一、能够经过手机查看系统监控信息;
十二、可指定自定义的事件处理控制器;
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监控端
一、安装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插件
二、安装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