监控软件nagios,有人把他说成“难搞死”,在学习过程发现有些地方可能比较难理解,不过最终疑问还是一个一个被打消了。废话不多说了。下面是我的学习过程,我把nagios学习分为三个部分,如下:
一、nagios的安装和基本配置
二、nagios监控linux系统
三、nagios监控windows系统

    Nagios是一个监视系统运行状态和网络信息的监视系统。Nagios能监视所指定的本地或远程主机以及服务,同时提供强大的异常报警功能等。下面是安装过程。
一、nagios的安装和基本配置
1.下载nagios软件和插件
#wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.0.tar.gz
#wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.14.tar.gz
2.安装nagios软件
#useradd nagios
#groupadd nagcmd
#usermod -a -G nagcmd nagios
#usermod -a -G nagcmd daemon
#tar -zxvf nagios-3.2.0.tar.gz
#cd nagios-3.2.0
#./configure --prefix=/usr/local/nagios --with-command-group=nagcmd
#make all
#make install
#make install-init
#make install-config
通过以上的步骤,nagios安装完成。
3.配置apache
    在安装nagios之前先搭建好一个LAMP的环境,给nagios的提供一个web监控的接口。具体配置LAMP这里就不些了。
1)修改apache的配置文件。
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
#  SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   Order allow,deny
   Allow from all
#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /usr/local/nagios/etc/htpasswd.users
   Require valid-user
</Directory>

Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/nagios/share">
#  SSLRequireSSL
   Options None
   AllowOverride None
   Order allow,deny
   Allow from all
#  Order deny,allow
#  Deny from all
#  Allow from 127.0.0.1
   AuthName "Nagios Access"
   AuthType Basic
   AuthUserFile /usr/local/nagios/etc/htpasswd.users
   Require valid-user
</Directory>
注意:在apache里面必须加载alias模块。
2)创建apache目录验证文件
#htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

3)安装nagios插件
#tar xzf nagios-plugins-1.4.11.tar.gz
#cd nagios-plugins-1.4.11
#./configure --with-nagios-user=nagios --with-nagios-group=nagios
#make
#make install

4)启动Nagios
#chkconfig --add nagios
#chkconfig nagios on
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
#service nagios start

到此配置完成!在浏览器里输入http:\\IP\nagios。成功安装!留下一张图!


最后说下nagios软件的目录结构和配置文件,为配置linux监控做好准备。
1)目录结构
bin             Nagios执行程序所在目录,nagios文件即为主程序
etc             Nagios配置文件位置
sbin            Nagios Cgi文件所在目录,也就是执行外部命令所需文件所在的目录
Share           Nagios网页文件所在的目录
var             Nagios日志文件、spid 等文件所在的目录
var/archives    日志归档目录
var/rw          用来存放外部命令文件

2)默认的配置文件(./etc目录下)
cgi.cfg         控制cgi访问的配置文件
resource.cfg    定义了一些变量,以便被其他文件引用,如$USER1$
nagios.cfg      Nagios主配置文件
objects         目录里面存放着nagios对象
对象目录(./etc/objects)下的对象配置文件有
commands.cfg    命令定义配置文件,里面定义的命令可以被其他文件引用
localhost.cfg   本地监控配置事例文件
switch.cfg      交换机监控配置事例文件
timeperiods.cfg 监控时间段的配置文件
contacts.cfg    联系人和联系人组配置文件
printer.cfg     监控打印机的一个事例配置文件
templates.cfg   模板配置文件
windows.cfg     windows系统配置事例文件
这下配置文件的调用比较复杂。我的理解是nagios监控有两个方面:主机监控和服务监控,配置文件的调用以这个为中心进行配置并调用。