fedora15 nagios3.3.1 安装配置



fedora15 nagios3.3.1 安装配置

特别注意:

(1)因为这里用的yum 装的httpd,我曾经用的源代码的apache服务器编译安装,但是总是不能成功。所以后来干脆在线安装apache服务器。

(2)如果nagios-plugins不和nagios装在同一路径的话。那么要把/nagiosplugins/libexec下的/nagios/libexec目录下。

(3)遇到访问禁止问题一般是权限受阻问题

      1、将apache的user和group改为nagios

      2.将apache的user放入nagios组。

        usermod -G nagios apache

    3.chown nagios.nagios nagios3.31/

(4)安装nrpe

      configure时出现找不到kerneros时,不用管了。

      make all和make install-daemon-conf 时出错,重启吧

      安装make install-xinetd后,xinetd无法识别的任务:yum install xinetd

     5666端口对应xinetd

 (5)关于nagios3.31的/share/index.php会拒绝访问的问题安装gd、gd-devel、php

      yum  install gd      yum install gd-devel    yum install php

  (6)安装nrpe时fedora15 <wbr>nagios3.3.1 <wbr>安装配置

        yum install openssl-devel   openssl

(7)启动nrpe,当检测本机(/libexec/check_nrpe -H localhost)时出现connetction refused byhost,一般是没有启动nrpe。

/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d

 当检测本机nrpe的ip也出现被拒绝问题时,

 service xinetd stop因为原来装nrpe时可能make install-xinetd了。

然后kill点nrpe进程,在启动nrpe进程。

(8)一定要把监控机和被监控机的5666端口打开。

4.4.2. 准备软件包

在做安装之前确认要对该机器拥有root权限。

确认你安装好的Fedora系统上已经安装如下软件包再继续。

  1. Apache
  2. GCC编译器
  3. GD库与开发库

可以用yum命令来安装这些软件包,键入命令:

yum install httpd yum install gcc yum install glibc glibc-common yum install gd gd-devel
yum install openssl openssl-devel

4.4.3. 操作过程

1)建立一个帐号

切换为root用户

su -l

创建一个名为nagios的帐号并给定登录口令

/usr/sbin/useradd nagios passwd nagios

创建一个用户组名为nagcmd用于从Web接口执行外部命令。将nagios用户和apache用户都加到这个组中。

/usr/sbin/groupadd nagcmd /usr/sbin/usermod -G nagcmd nagios /usr/sbin/usermod -G nagcmd apache

2)下载Nagios和插件程序包

建立一个目录用以存储下载文件

mkdir ~/downloads cd ~/downloads

下载Nagios和Nagios插件的软件包(访问http://www.nagios.org/download/站点以获得最新版本),在写本文档时,最新的Nagios的软件版本是3.0rc1,Nagios插件的版本是1.4.11。

wget http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-3.0rc1.tar.gz wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.11.tar.gz

3)编译与安装Nagios

展开Nagios源程序包

cd ~/downloads tar xzf nagios-3.0rc1.tar.gz cd nagios-3.0rc1

运行Nagios配置脚本并使用先前开设的用户及用户组:

./configure --with-command-group=nagcmd

编译Nagios程序包源码

make all

安装二进制运行程序、初始化脚本、配置文件样本并设置运行目录权限

make install make install-init make install-config make install-commandmode

现在还不能启动Nagios-还有一些要做的…

4)客户化配置

样例配置文件默认安装在这个目录下/usr/local/nagios/etc,这些样例文件可以配置Nagios使之正常运行,只需要做一个简单的修改…

用你擅长的编辑器软件来编辑这个/usr/local/nagios/etc/objects/contacts.cfg配置文件,更改email地址nagiosadmin的联系人定义信息中的EMail信息为你的EMail信息以接收报警内容。

vi /usr/local/nagios/etc/objects/contacts.cfg

5)配置WEB接口

安装Nagios的WEB配置文件到Apache的conf.d目录下

make install-webconf

创建一个nagiosadmin的用户用于Nagios的WEB接口登录。记下你所设置的登录口令,一会儿你会用到它。

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin

重启Apache服务以使设置生效。

service httpd restart

6)编译并安装Nagios插件

展开Nagios插件的源程序包

cd ~/downloads 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

7)启动Nagios

把Nagios加入到服务列表中以使之在系统启动时自动启动

chkconfig --add nagios chkconfig nagios on


验证Nagios的样例配置文件

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

如果没有报错,可以启动Nagios服务

service nagios start

8)更改SELinux设置

Fedora与SELinux(安全增强型Linux)同步发行与安装后将默认使用强制模式。这会在你尝试联入Nagios的CGI时导致一个”内部服务错误”消息。

如果是SELinux处于强制安全模式时需要做

getenforce

令SELinux处于容许模式

setenforce 0

如果要永久性更变它,需要更改/etc/selinux/config里的设置并重启系统。

不关闭SELinux或是永久性变更它的方法是让CGI模块在SELinux下指定强制目标模式:

chcon -R -t httpd_sys_content_t /usr/local/nagios/sbin/ chcon -R -t httpd_sys_content_t /usr/local/nagios/share/

更多有关Nagios的CGI模块增加目标策略的强制权限方式见NagiosCommunity.org的维基百科http://www.nagioscommunity.org/wiki

9)登录WEB接口

你现在可以从WEB方式来接入Nagios的WEB接口了,你需要在提示下输入你的用户名(nagiosadmin)和口令,你刚刚设置的,这里用系统默认安装的浏览器,用下面这个超链接

http://localhost/nagios/

点击“服务详情”的引导超链来查看你本机的监视详情。你可能需要给点时间让Nagios来检测你机器上所依赖的服务因为检测需要些时间。

10)其他的变更

确信你机器的防火墙规则配置允许你可以从远程登录到Nagios的WEB服务。

配置EMail的报警项超出了本文档的内容,指向你的系统档案用网页查找或是到这个站点NagiosCommunity.org wiki来查找更进一步的信息,以使你的系统上可以向外部地址发送EMail信息。更多有关通知的信息可以查阅这篇文档。

11)完成了

祝贺你已经成功安装好Nagios,但网络监控工作只是刚开始。毫无疑问你不是只监控本地系统,所以要看以下这些文档…

  1. 对Windows主机的监控
  2. 对Linux/Unix主机的监控
  3. 对Netware服务器的监控
  4. 监控路由器和交换机
  5. 监控公众化服务(HTTP、FTP、SSH等)

 1.监控linux 主机

下载NRPE
http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz 

请先安装openssl 最好用yum [服务器和linux客户端都需要]
yum –y install openssl openssl-devel
否则会完成不了ssl 握手
1. 在nagios服务器端安装NRPE,

tar -zxvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure –enable-ssl –with-ssl-lib
make all && make install-plugin

下面是一些具体配置:

(1)、vim 编辑commands.cfg文件定义nrpe对的使用
#vim /usr/local/nagios/etc/objects/commands.cfg
//添加如下几行使支持check_nrep
#check_nrep
define command{
       command_name check_nrpe
       command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
       }

(2)、配置监控对象(工作站及其服务等)
#vim /usr/local/nagios/etc/nagios.cfg
//在losthost.cfg下添加
cfg_file=/usr/local/nagios/etc/objects/linux.cfg

(3)、新建linux.cfg设置要监控的内容
#vim /usr/local/nagios/etc/object/linux.cfg
define host{
          use             linux-server
         host_name        mylinux         //需要修改工作站的主机名
         alias           mylinux
         address        192.168.0.44      //工作站主机IP
              }
define service{
       use                      generic-service
       host_name                 mylinux
       service_description       check-swap         //对下面操作的描述
       check_command        check_nrpe!check_swap   //执行检测交换分区命令,监控swap
              }
define service{
       use                      generic-service
       host_name                 mylinux
       service_description      check-load
      check_command         check_nrpe!check_load    //监控负载
              }
define service{
       use                      generic-service
       host_name                 mylinux
      service_description       check-disk
      check_command        check_nrpe!check_had1    //监控硬盘
             }
define service{
       use                     generic-service
       host_name                mylinux
      service_description     check-users
      check_command       check_nrpe!check_users          //监控用户(使用)情况
              }
define service{
       use                    generic-service
       host_name          mylinux
       service_description  otal_procs
       check_command     check_nrpe!check_total_procs        //监控进程
               }

//对以上的linux.cfg文件编辑如果有错,将会导致nagios无法启动;
//修改工作站主机的主机名为mylinux,保证能够#ping mylinux 通信正常,可以选择
#echo “192.168.0.44   mylinux “  >>  /etc/hosts 
#echo”192.168.0.15   nagios “    >>  /etc/hosts
//在服务器端
#echo”192.168.0.15    nagios ” >>   /etc/hosts
#echo “192.168.0.44   mylinux “  >>  /etc/hosts 

(4)、准备启动nagios服务
#setenforce 0  保证selinux处于关闭状态
#service iptables stop  或者开放80,5666端口(http/nrep)
#chkconfig –add nagios    //添加nagios服务到系统服务队列  
#chkconfig nagios on       //开机自动启动服务
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
//检查nagios的配置文件的正确性
//如果上面有错误,请检查系统服务时间是否同步,新建的linux.cfg是否有语法错误!
//在commands.cfg是否添加对nrep使用等
//保证上述命令争取执行
// 参考:

//Total Warnings: 0
//Total Errors:   0
#service nagios start

2.在nagios客户端安装NRPE
/usr/sbin/useradd nagios
passwd nagios
安装插件9

(1)

tar -zxzf nagios-plugins-1.4.15.tar.gz
cd nagios-plugins-1.4.15
./configure –prefix=/usr/local/nagios
make && make install
chown nagios.nagios /usr/local/nagios/
chown -R nagios.nagios /usr/local/nagios/libexec/

(2)

tar -zxvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure –enable-ssl –with-ssl-lib(前提是已经安装了openssl与openssl-devel)
make all && make install-plugin && make install-daemon && make install-daemon-config

cp /usr/local/nagios/etc/nrpe.cfg /usr/local/nagios/bin
Vi /usr/local/nagios/etc/nrpe.cfg
修改nrpe.cfg allow_hosts 加上nagios服务器IP
启动NRPE
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
vi /etc/rc.local
可以把以上命令写入rc.local,开机自动启动,(vi /etc/rc.local)当然,要开放5666端口

3.验证
在被监控端/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1
NRPE v2.12
/usr/local/nagios/libexec/check_nrpe -H 127.0.0.1
CHECK_NRPE: Error – Could not complete SSL handshake.
此时出现此错误表明客户端没有安装openssl 不能完成ssl握手
Connection refused by host
Nrpe进程没有启动
参考此链接http://www.588k.com/?p=36

在nagios服务器端
[root@nagios objects]# /usr/local/nagios/libexec/check_nrpe -H 192.168.1.44  此处填写客户端ip地址
NRPE v2.12
返回NRPE版本号,测试成功
测试不成功,下面就不要进行了

4.监控
在 /usr/local/nagios/etc/ 下新建servers目录,在该目录下新建一个被监控端主机fedora15 <wbr>nagios3.3.1 <wbr>安装配置的配置文件mylinux.cfg
vi /usr/local/nagios/etc/nagios.cfg 在linux 部分添加一行
cfg_file=/usr/local/nagios/etc/mylinux.cfg
文件位置并不重要,也可以放在/etc/object/下,注意要和nagios.cfg里面的路径一致即可
改变文件属组为nagios
Chown –R nagios.nagios /usr/local/nagios/etc/mylinux.cfg
复制如下配置文件到此文件中
define host{
use linux-server
host_name xxxhotel
alias xxxhotel
address 192.168.1.4
max_check_attempts 5
}
define service{
use generic-service
host_name xxxhotel
service_description HTTP
check_command check_http
}
监控linux的地址及相关的服务,
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
查看有没有错误报警,有可能是没有定义服务之类
Service nagios restart
重启nagios服务
到web页面查看效果
如果监控更多的服务如httpd ssh等等的话,只需要在配置文件中做相应的添加即可
更多请参考官方配置文档
http://nagios.sourceforge.net/docs/3_0/monitoring-publicservices.html

本文出自 “老五的成长记录” 博客,请务必保留此出处http://yuzeying.blog.51cto.com/644976/533251