renshanshan 发表于 2019-1-16 09:46:14

我的nagios

            今天想为我负责的几台apache做个nagios 监控,主要监控负载与web服务。
  在网上找了很多文档,都感觉各有千秋,所以就总结了些加上自己的小摸索做个vmware的
  nagios。可能有些地方不对,比如yum喜欢用*,但结果是成功的,菜鸟还需要提高。
  实现nagios监控大概需要的包有这些:
  http://blog.运维网.com/attachment/201111/162101622.jpg
  监控端:
  nagios-3.2.0.tar.gz
  nagios-plugins-1.4.13.tar.gz
  nrpe-2.12.tar.gz
  
  被监控端:
  nagios-plugins-1.4.13.tar.gz
  nrpe-2.12.tar.gz
  
第一部分原理
   一、核心要素:
        个人见解:如要实现nagios监控服务包括三个方面;第一个是nagios的主程序没什 么实际的用途,就是一个实现的平台。第二个是nagios-plugins,他相当于一个脚本的集合,作用是包涵了一些测试或查询服务器状态的脚本。第三个就是nrpe;为了使Nagios的监测服务器能够心扩展插件程远程对被监测主机系统上的信息进行获取,比如远程系统上的进程数、磁盘空间使用状况、所运行的服务等等这些必须要登录远程主机系统上才能了解的信息的话,就必须要依靠NRPE这个核序,NRPE作为中间的代理程序,扮演着一手接受着Nagios监测服务器发来的请求,另一手在远程主机系统上获取指定的信息的中间人角色。首先必须要在远程主机上除了安装Nagios-plugins插件程序之外还必须安装NRPE核心扩展插件程序,并将NRPE在被监测的远程主机系统上以守护进程的方式运行起来,开放指定的NRPE监听端口监听着Nagios监测服务器发送过来的所有监测请求。另外,在Nagios监测服务器上,在必须要安装Nagios-plugins插件程序和NRPE核心扩展插件程序。唯一不同的是,Nagios监测服务器不需要将NRPE作为守护进程运行着,因为它本身一般不需要被别人监测着而是去监测别人,对Nagios监测服务器而言,它只需要使用到Nagio-plugins插件程序和NRPE扩展插件程序就足够了。(nrpe摘自它处,因说的简明)

   二、串连
  核心要素理解了以后,只要把核心要素按照功能串连起来,就会组成nagios监控系统了。
  http://blog.运维网.com/attachment/201111/121051696.jpg
        监控端                                 被监控端
  
  这里面唯一不好理解的就是NRPE。用的多了自然就了解了。
  
第二部分安装:
  一就是注意分清监控端与被监控端分别安那些包。二就是如果新系统需要那些工具包,我就是gcc * ,gd*,openssl*,本菜鸟,呵呵。第三就监控端与被监控端都有要nagios用户。
监控端的配置:
  1.装工具(gcc,gd-devel,openssl)包与web服务略,首先
  useradd -s /sbin/nologin nagios
  mkdir /usr/local/nagios
  chown -R nagios.nagios /usr/local/nagios
2.然后安装主程序包nagios-x.x.x
  tar -zxvf nagios-x.x.x.tar.gz
  cd /nagios-x.x.x
  ./configure --prefix=/usr/local/nagios
  make all
  make install-init
  make install-commandmode
  make install-config
  make install-webconf
  就安装完成后设置开机启动:
  chkconfig -add nagios
  chkconfig --level 35 nagios on
  这样主程序包就安装完成了,下面我们创建下验证web界面的登录用户
  3.用/usr/local/apache/bin/htpasswd这个命令,创建apache目录验证文件
htpasswd -c /usr/local/nagios/etc/htpasswd.user nagiosadmin

修改apache的配置文件,添加:

user nagios

group nagios   

新如果要授权就在主配置文件中添加信息。

然后启动重新启动http服务

service httpd restart

主程序包安装完成后就可以通过web页面测试了,输入:

http://192.168.1.1/nagios

IP是你监控端的IP;回车后会弹出个页面,输入刚才建立的用户即可:

  
  http://blog.运维网.com/attachment/201111/172242639.jpg
  正确配置路后会出现WEB页面的管理界面
  http://blog.运维网.com/attachment/201111/172937165.jpg
  最后将nagios加为系统服务,并设置开机启动。然后检查下配置文件是否有错,没有错误就可以启动nagios了
  make install-commandm
  chkconfig --add nagios
  chkconfignagios on
  /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg验证nagios的配置文件
  启动服务:server nagios start
4.主程序包安装完成后安装插件包:
  tar -axvf nagios-plugins-x.x.x.tar.gz
  ./configure --prefix=/usr/local/nagios
  make all && make install
  插件包安装完成后,会在/usr/local/nagios/libexec中出现你刚才安装的全部插件。
  http://blog.运维网.com/attachment/201111/131506248.jpg
  chown -R nagios:nagios nagios
  5.最后安装NRPE
  tar -zxvf nrpe-x.x.x.tar.gz
  ./configure--prefix=/usr/local/nagios
  make all
  make install-plugins
  nrpe的作用上面已经提到过了。在监控端可以先不用配置xinetd服务。
  然后编辑command.cfg定义外部构件
  6.修改配置文件
  vi /usr/local/nagios/etc/objects/command.cfg
  #check nrpe
  define command{
  command_name check_nrpe
  command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
               }
  7.定义监控的主机
  vi /usr/local/nagios/etc/nagios/cfg
  添加一段:
  cfg_file=/usr/local/nagios/etc/objects/testlinux.cfg(这个名字可以自己起)
  然后编辑testlinux.cfg这个新建的文件的内容,这个是监控的核心部分,这个文件里面记录这要监控的主机的IP与要监控的服务。这里就不把一般需要监控的都写上了,只写1个主机字段与1个服务的字段,之后的以此类推。
  主机
  define host {
           use                  linux-server
           host_name               alias                  
           alias                   test
           address               192.168.1.2(被监控端IP)
           }
  defineservice {
           use                  linux-server
           host_name               chenyang
           service_description      check-swap
           check_command         check_nrpe!check_swap
           }
  其他的就省略了,想监控什么就在配置文件中灵活添加的就好了。
  这样监控端的配置就差不多完成了,还有些注意的如:
  chkconfig --add nagios
  chkconfig nagios on开机启动
  /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 检查配置文件
  要想成功,防火墙与SELINUX要不修改,要不关闭,最后都没问题了就可以启动nagios服务了。
  service nagios start
http://blog.运维网.com/attachment/201111/160704515.jpg
  检查配置文件的时候容易报错,如果如上图中errors中为0,那就是没问题的。
被监控端的配置:
  被监控端与监控端一样,需要工具包与创建nagios用户。
  然后跟监控端一样,装plugins与nrpe这两个包。
  然后改变主目录权限。
  安装nrpe的时候有些不一样,需要配合xinetd服务来实现.
  tar -zxvf nrpe-x.x.x.tar.gz
  ./configure --prefix=/usr/local/nagios
  make all
  make install-plugins
  make install-daemon
  安装完成后配置nrpe的信息:
  vi /usr/local/nagios/etc/nrpe.cfg
  allowed_host=192.168.1.1,127.0.0.1
  然后启动nrpe
  /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
  最后验证
  本地:
  netstat -an | grep 466
  http://blog.运维网.com/attachment/201111/170231585.jpg
  服务端测试与被监控端NRPE的连通性:
  /usr/local/nagios/libexec/check_nrpe -H 192.168.1.2 (在监控端输入,IP为被监控端IP)
  显示: NRPE V2.x.x就正确了
  http://blog.运维网.com/attachment/201111/170314383.jpg



  
  



  
  
  



页: [1]
查看完整版本: 我的nagios