zhuce 发表于 2019-1-13 13:59:01

nagios 监控自身

  nagios 监控自身
  

  定义监控命令 commands.cfg
  vim /usr/local/nagios/etc/objects/commands.cfg
  

  #local_server check-host-alive command definition
  define command{
  command_namexxx   #定义监控的名字(自定义)
  command_linexxx   #定义命令具体实现的功能 $USER1$ = /usr/local/nagios/libexec/ 变量在/usr/local/nagios/etc/resource.cfg中定义
  }
  

  #local_server check-host-alive command definition
  define command{
  command_namecheck-host-alive
  command_line$USER1$/ping-H$HOSTADDRESS$-w3000.0,80%-c5000.0,100%-p5
  }
  

  

  定义监控对象 localhost.cfg
  

  Localhost.cfg相当于是一个监控LINUX主机的模板,如果需要监控其他LINUX主机,可以把这个文件复制一份进行修改。
  

  cp localhost.cfg linux.cfg
  vim linux.cfg
  

  define host {
  use 监控使用的模板
  host_name 被监控主机的主机名
  alias被监控主机别名
  address被监控主机IP地址
  }
  

  

  define host{
  use                     linux-server
  host_name               localhost
  alias                   localhost
  address               127.0.0.1
  }
  use linux-server:加载linux-server的配置(linux-server已在templates.cfg中定义)
  use local-service:加载local-service的配置(已在templates.cfg中定义)
  

  

  查看templates.cfg:
  

  define host{
  name                            linux-server    ; The name of this host template
  use                           generic-host    ; This template inherits other values from the generic-host template
  check_period                  24x7            ; By default, Linux hosts are checked round the clock
  check_interval                  5               ; Actively check the host every 5 minutes
  retry_interval                  1               ; Schedule host check retries at 1 minute intervals
  max_check_attempts            10            ; Check each Linux host 10 times (max)
  check_command                   check-host-alive ; Default command to check Linux hosts
  notification_period             workhours       ; Linux admins hate to be woken up, so we only notify during the day
  ; Note that the notification_period variable is being overridden from
  ; the value that is inherited from the generic-host template!
  notification_interval         120             ; Resend notifications every 2 hours
  notification_options            d,u,r         ; Only send notifications for specific host states
  contact_groups                  admins          ; Notifications get sent to the admins by default
  register                        0               ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!
  }
  

  

  check_periaod24X7: 检测的时间段为24X7,24X7在timeperiod.cfg
  contact_groupsadmins:发通知给admins组,admins组在contacts.cfg中定义
  

  

  加载监控对戏那个配置文件 nagios.cfg
  vim /usr/local/nagios/etc/nagios.cfg
  cfg_file=/usr/local/nagios/etc/objects/commands.cfg
  cfg_file=/usr/local/nagios/etc/objects/contacts.cfg
  cfg_file=/usr/local/nagios/etc/objects/timperiods.cfg
  cfg_file=/usr/local/nagios/etc/objects/templates.cfg
  cfg_file=/usr/local/nagios/etc/objects/localhost.cfg
  

  检查配置语法是否有误
  /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
  

  启动nagios和httpd服务
  service httpd restart
  service nagios restart
  chkconfig httpd on
  chkconfig nagios restart
  

  配置登录页面认证用户
  

  进入WEB页面查看
  http://ip/nagios
  

  

  自定义监控项目
  

  自定义监控对象
  

  监控/boot分区
  首先查看commands.cfg
  

  

  

  定义监控的分区
  vimlocalhost.cfg
  define service{
  use                     local-service
  host_name               localhost
  service_description   Boot Partition在nagios Services 中显示的名称
  check_command         check_local_disk!50%!40%!/boot
  notifications_enabled 1是否开启提醒功能。1为开启,0为禁用
  }
  

  重启nagios
  servicenagiosrestart
  

  notifications_enabled
  




页: [1]
查看完整版本: nagios 监控自身