peiyuan1030 发表于 2019-1-14 11:53:49

CentOS安装配置nagios(3)

  这篇主要先讲解如何创建各个主机的监控文件,再详细讲讲各种插件,nagios的监控之所以那么强大主要就是依靠各种插件,可以说就是这些插件才成就了nagios那丰富的监控项目。一般安装nagios时,大家一般都会安装nagios-plugins 来安装一些非常常用的插件来监控各个服务器。但是这些插件并不一定够用,所以有时候会需要从网上找其它特定的插件,甚至自己编写插件。
  

  

  一,创建主机的监控文件
  

  想要监控具体主机,需要创建该主机的监控文件,一般推荐将其创建在 nagios/etc/objects目录下
  例如 监控一台IP地址为192.168.10.46的linux主机
  

  可在objects目录下创建一个46.cfg的文件,里面内容如下
  

  

  define host{
  host_name    46_linux      在web页面显示的主机名字
  use       linux-server    使用的模板
  address   10.0.110.46   主机地址
  max_check_attempts       3    检查失败后的重试次数
  notification_period       24x7    监控时段
  }
  

  define service{
  host_name            46_linux   引用上面的模板
  name            46-service   此服务模板的名字
  use               generic-service使用的service模板
  normal_check_interval      5         失败后重试次数
  notification_interval      60         重试时间间隔
  }
  

  上面这些基本包含了被监控机的主要参数。接下来就是需要引用nagios插件运作来达到监控的目的。
谈到nagios的原理时,特别指出了nagios本身并没有监控的功能,所有的监控是由插件完成的,插件将监控的结果返回给nagios,nagios分析这些结果,以web的方式展现给我们,同时提供相应的报警功能(这个报警的功能也是由插件完成的)
所有的这些插件是一些实现特定功能的可执行程序,默认安装的路径是/usr/local/nagios/libexec,可以查看
http://blog.运维网.com/attachment/201309/154125215.png
  这些程序都是可以独立执行的,使用方法可以通过”命令名–h”来查看
  

  在文件46.cfg里面通过一定的格式添加这些插件命令即可用来监控
  

  例如
  define service{
  use               46-service
  service_description       ping
  check_command          check_ping!3000.0,80%!5000.0,100%!10!30
  }
  define service{
  use               46-service
  service_description       ftp
  check_command          check_ftp!2!4!10
  }
  上面这两个基本是用来监控远程系统上对外开放的服务,对于这些可以用监控机上的插件来完成
  

  而对于磁盘容量,cpu负载,登陆用户等,就需要nrpe来通过插件收集数据然后再传回监控端。这部分的命令格式就与上面的略有不同
  首先在46.cfg上添加相关命令
  define service{
  use               46-service
  service_description       users
  check_command          check_nrpe!check_users
  }
  define service{
  use               46-service
  service_description       load
  check_command          check_nrpe!check_load
  }
  

  define service{
  use               46-service
  service_description       zombie_procs
  check_command          check_nrpe!check_zombie_procs
  }
  define service{
  use               46-service
  service_description       /
  check_command          check_nrpe!check_sda1
  


  上面4组命令分别通过NRPE监控 登陆用户数 负载 僵尸进程 磁盘剩余空间, 可以看到全是通过chenk_nrpe这个插件命令来收集数据
  后面的部分就是对应在被监控机上所填写的命令名称
  

  在被监控机46上的 nrpe.cfg中
  command=/usr/local/nagios/libexec/check_users -w 5 -c 10
  command=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
  command=/usr/local/nagios/libexec/check_disk -w 20% -c 10% -p /dev/sda1
  command=/usr/local/nagios/libexec/check_procs -w 5 -c 10 -s Z
  

  添加以上4行就可监控了。
  

  最后在监控端的 nagios.cfg文件中添加如下一行
  cfg_file=/usr/local/nagios/etc/objects/46.cfg
  

  然后监控端和被监控端的nagios都重启下即可
  这样的话 无论被监控机器的内部和外部信息我们都可以监控到,最后可在web页面中看到你监控的详细信息
http://blog.运维网.com/attachment/201309/162340170.png
  




页: [1]
查看完整版本: CentOS安装配置nagios(3)