Nagios安装配置文档

 

     部署思路:要实现远程监控主机状态需要的服务,例如本地机192.168.43.143的监控端要对地址为192.168.43.139的远程主机进行监控,需要对两台主机配置如下。

    一:监控机安装:nagios包,nagios-plugin插件,nrpe包,三个包。

监控机通过本地浏览器对远程主机进行监控,因此本地监控机还需要安装LAMP

平台作为nagios的依赖,除此之外,在整个安装过程中还需要其他的依赖,安装之前需要先解决依赖环境问题,否侧会出错,需要的依赖包如下:

   gd ,  gd-devel ,  gcc ,  gcc-c++ , glibc , glibc-devel glibc-common , php-mysql , mysql-devel , .(这些依赖可以使用yum安装)

 

二:被监控主机:需要安装nagios-plugin nrpe包。

 

 ******************************************************************************

  

 一:监控机安装

1. 创建用户和组

  > groupadd  nagios

 >  useradd  nagios

 

*因为nagios在页面中监控,所有要调用到http服务所以将apache用户加入到nagios组。

 

> usermod  -a  -G  nagios  apache   #将apache用户加入nagios组

 

 2.安装nagios

 

 > tar  zxvf  nagios.3.3.1.tar.gz

 >cd  nagios 3.3.1

编译前先查看有哪些编译选项,使用 ./configure  –help 指令

 

编译:> ./configure  –sysconfdir=/usr/local/nagios

      >           –with-nagios-user=nagios

      >           –with-nagios-group=nagios

      >           –with-commond-group=nagios  #指定命令所有者组

      >           –enable-event-broker

编译完成后执行如下指令:(与其他安装方式有点区别)

      >         make  all

      >         make  install      #安装主程序,CGIHTML

      >         make  install-init   #安装启动脚本 /etc/init.d/nagios

      >         make  install-commandmode   #安装与配置目录权限

      >         make  install-config          #安装配置文件模板

      >         make  install-webconf        #安装nagios显示环境依赖

 

  * 由于nagios最终以web的形式进行监控,所有安装过程中使用make install-webconf指令生成一个web配置文件,指令如上最后一条。

*此时为nagios设定访问安全,使用特定的用户来进行使用nagios服务,该用户需要安装apache的访问权限:(执行如下命令要切换到nagios安装目录下执行)

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

指令中的路径要与nagios安装路径相同,nagiosadmin为用户名

 

安装完成后启动httpd :service  httpd  start

检查nagios.cfg: /usr/local/nagios/bin/nagios -v /usr/local/nagios/nagios.cfg

启动nagios:

>/etc/init.d/nagios  start / restart   #如果没有执行权限就给予

加入服务列表及开机启动:

>chkconfig  –add  nagios

>chkconfig  nagios  on

 3.安装nagios-plugin:(安装nagios-plugin之前先安装perl-devel和openssl-devel依赖)

> tar  xf  nagios-plugin-1.4.5.tar.gz

>cd  nagios-plugin-1.4.5

*使用./configure  –help 查看编译选项

  编译安装:

                    > ./configure  –prefix=/usr/local/nagios (将其安装到nagios安装目录下)

>           –with-nagios-user=nagios

>           –with-nagios-group=nagios

>                                     — with-perl-devel

>                                     –with-mysql

> make  all

> make  install

Chown  -R  nagios:nagios  /usr/local/nagios

4.安装nrpe (编译nrpe时需要opensll和openss-devel包,之前没有安装这两个包编译时出错了。。。)

          > tar  zxvf  nrpe.2.2.1.tar.gz

> cd  nrpe.2.2.1

> ./configure –prefix=/usr/local/nrpe  –with-nrpe-user=nagios –with-nrpe-group=nagios –with-nagios-user=nagios –with-nagios-group=nagios –enable-ssl

(*使用./configure  –help 查看编译选项

注意:在编译时要分别指定nrpe和nagios的用户和组 (均为nagios)

还有 daemon,enable,ssl等选项。之前没加的参数安装出错,加上参数之后安装成功。)

 

>make  all

>make  install-plugin

>make  install-daemon

>make  install-daemon-config

按照安装文档的说明,是将NRPE deamon作为xinetd下的一个服务运行的。在这样的情况下xinetd就必须要先安装好,不过一般系统已经默认安装了。(如果没有安装则先安装,可以执行yum安装)(*这里设置不好监控端和被监控端无法连接通信)

安装xinetd脚本

> make   install-xinetd

监控端和被监控端的nrpe安装完成后要分别设置:

被控端:
vi /etc/xinetd.d/nrpe
only_from 增加主控IP
vi /usr/local/nagios/etc/nrpe.cfg
allowed_hosts 增加主控IP
service xinetd restart
主控端:
/usr/local/nagios/libexec/check_nrpe -H 被监控端IP地址       测试是否连接成功

             然后重启服务:
                                  service xinetd restart

安装后检查check_nrpe插件:

执行:ls /usr/local/nagios/libexec/check_nrpe 

然后在 /etc/init.d/中创建启动脚本并给予执行权限,将解压文件里的init.script复制并重命名/etc/rc.d.init.d/nrpe

上面步骤完成后执行 加入服务列表并开机启动

> chkconfig  –add  nrpe

> chkconfig  nrpe  on

> chmod  +x  /etc/init.d/nrpe

最后启动被监控端的nrpe服务

> service  nrpe  start

在nrpe.conf中查看nrpe监控命令:

cd  /usr/local/nagios/etc

cat nrpe.cfg |grep -v “^#”|grep -v “^$”  如图

《 Nagios安装配置文档》

红色部分是命令名,也就是check_nrpe 的-c 参数可以接的内容,等号 “=” 后面是实际执行的插件程序(这与commands.cfg 中定义命令的形式十分相似,只不过是写在了一行)。也就是说check_users 就是等号后面/usr/local/nagios/libexec/check_users -w 5 -c 10 的简称。

测试其中一条指令 check_load:

《 Nagios安装配置文档》

 

 

 

 打开web页面出现如下

《 Nagios安装配置文档》

解决:编辑cgi-cfg文件 vim /usr/local/nagios/cgi-cfg

                 找到use_authentication=1 #把1修改为0,然后保存
最后重启服务访问正常了

/*******监控机安装结束******/

在被监控机上以同样的方式安装 nagios-plugin和nrpe

注意:1.被监控端也要创建nagios用户和用户组

      2.nrpe被依赖于nagios-plugin,因此要先安装nagios-plugin

 

/////////////////////////////////////////////////

 

配置信息:

注:监控端称为服务端,远程被监控主机称为 客户端。

服务端可客户端的配置文件比较多,容易乱,配置前需要规划好,备份好。

1.服务端主要是/usr/local/nagios/etc/nagios/nagios.cfg :这是整个服务的全局环境配置,

 …/nagios中的object中的文件是具体的对主机,服务,联系人,报警规则的设置

 

2.常用的模式为在object中创建一个主机监控配置文件。

3.command.cfg中定义将主机与服务监空信息参照windows.cfg文件中的格式写入。可以cp windows.cfg  ./web1.cfg,将web1的内容按照要求修改。

4./usr/local/nagios/etc/nagios/nagios.cfg中加入cfg-file, icfg-file就是在object中新创建的web1.cfg, cfg-file=后加上文件名在object中的完整路径。

 

////////////////////////////////////////////////////////////////

 

思路理清:

 

1.服务端(监控端)要安装nagios ,nagios-plugin ,nrpe三个包,

2.远程端只要安装 nrpe 和 nagios-plugin两个包,nrpe要在nagios用户下运行,所以远程端也要创建nagios用户及组

3.测试nrpe是否正常工作:使用check_nrpe

     /usr/local/nagios/libexc/check_nrpe  -H  localhost

测试远程 nrpe是否可用

/usr/local/nagios/libexc/check_nrpe  -H  +远程IP

 nrpe相关出错的问题:http://wushank.blog.51cto.com/3489095/1285707

更详细的安装步奏参考:http://www.cnblogs.com/mchina/archive/2013/02/20/2883404.html

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注