Nagios 监控实现原理
Nagios 软件需安装在一台独立的服务器上运行,这台服务器称为监控中心,监控中心服务器可以采用 Linux 或 Unix 操作系统;每一台被监视的硬件主机或服务都运行一个与监控中心服务器进行通信的 Nagios 软件后台程序,也可以理解为 Agent 或插件均可。监控中心服务器读取配置文件中的指令与远程的守护程序进行通信,并且指示远程的守护程序进行必要的检查。虽然 Nagios 软件必须在 Linux 或 Unix 操作系统上运行,但是远程被监控的机器可以是任何能够与其进行通信的主机,根据远程主机返回的应答,Naigos 将依据配置进行回应;接着 Nagios 将通过本地的机器进行测试,如果检测返回值不正确,Nagios 将通过一种或多种方式报警
一.准备工作
安装之前先将安装过程中会用到的一些服务和软件安装好
# yum install httpd httpd-devel php
# yum install gcc glibc glibc-common
# yum install gd gd-devel
二.安装Nagios软件
创建nagios用户并设置密码:
# /usr/sbin/useradd -m nagios
# passwd nagios
密码其实不设置也行,因为基本上不会通过该用户来登陆。bash也可以直接设置成/sbin/nolgoin。
接下来我们创建nagcmd用户组以执行来自web接口的命令,并添加nagios和apache用户到此用户组。
# /usr/sbin/groupadd nagcmd
# /usr/sbin/usermod -a -G nagcmd nagios
# /usr/sbin/usermod -a -G nagcmd apache
下载Nagios和插件
# wget http://iweb.dl.sourceforge.net/project/nagios/nagios-3.x/nagios-3.4.1/nagios-3.4.1.tar.gz
# wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz
安装Nagios
# tar xzf nagios-3.4.1.tar.gz
# cd nagios
运行Nagios配置脚本,并把nagcmd更改为之前所创建的组:
# ./configure –with-command-group=nagcmd
# make all
安装二进制,init脚本,sample配置文件和设置外部命令目录权限。
# make install
# make install-init
# make install-commandmode
联系人信息配置
#vi /usr/local/nagios/etc/objects/contacts.cfg
修改联系人邮箱等
配置web接口
安装Nagios Web配置文件在Apache的conf.d目录:
# make install-webconf
为登录Nagios Web接口创建nagiosadmin帐号和密码。
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
# service httpd restart
编译安装Nagios插件
# cd ~
# tar xzf nagios-plugins-1.4.14.tar.gz
# cd nagios-plugins-1.4.16
# ./configure –with-nagios-user=nagios –with-nagios-group=nagios
# make
# make install
启动Nagios
设置开机启动:
# chkconfig –add nagios
# chkconfig nagios on
测试配置文件是否有错误:
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
启动nagios
# service nagios start
登陆Nagios
# http://192.168.0.245/nagios
账号和密码即上面设置的。Nagios监控页面截图如下