nosilence 发表于 2019-1-12 14:03:52

nagios 监控配置介绍(三)

  1.主动监控模式
  监控客户端LNMP 网站服务

  服务器端:
  #cd /usr/local/nagios/etc/objects
  # vi commands.cfg
  #在最下面增加:
  

  # 'check_weburl' command definition
  define command{
  command_name    check_weburl
  command_line    $USER1$/check_http $ARG1$ -w 10 -c 30
  }
  保存退出
  

  #cd /usr/local/nagios/etc/services
  创建主动模式监控配置文件webzd.cfg
  #vi webzd.cfg
  define service {
  use               generic-service
  host_name         1.34-web
  service_description    blog_ip
  check_command      check_weburl! -I 10.89.1.34
  max_check_attempts   3
  normal_check_interval   2
  retry_check_interval    1
  check_period         24x7
  notification_interval   30
  notification_period    24x7
  notification_options    w,u,c,r
  contact_groups      admins
  process_perf_data      1
  }
  

  define service {
  use               generic-service
  host_name         1.34-web
  service_description   blog_url
  check_command      check_http! -H bolg.etiantian.org
  max_check_attempts   3
  normal_check_interval   2
  retry_check_interval    1
  check_period         24x7
  notification_interval   30
  notification_period    24x7
  notification_options    w,u,c,r
  contact_groups      admins
  

  }
  

  

  define service {
  use               generic-service
  host_name         1.34-web
  service_description    blog_port_80
  check_command      check_tcp!80
  max_check_attempts   3
  normal_check_interval   2
  retry_check_interval    1
  check_period         24x7
  notification_interval   30
  notification_period    24x7
  notification_options   w,u,c,r
  contact_groups       admins
  

  }
  

  

  define service {
  use               generic-service
  host_name         1.34-web
  service_description    ssh_port
  check_command      check_tcp! 22
  max_check_attempts   3
  normal_check_interval   2
  retry_check_interval    1
  check_period         24x7
  notification_interval   30
  notification_period    24x7
  notification_options    w,u,c,r
  contact_groups      admins
  

  }
  define service {
  use               generic-service
  host_name         1.34-web
  service_description    mysql_port
  check_command      check_tcp!3306
  max_check_attempts   3
  normal_check_interval   2
  retry_check_interval    1
  check_period         24x7
  notification_interval   30
  notification_period   24x7
  notification_options    w,u,c,r
  contact_groups      admins
  

  }
  

  define service {
  use               generic-service
  host_name         1.34-web
  service_description    rsync
  check_command      check_tcp!873
  max_check_attempts   3
  normal_check_interval   2
  retry_check_interval   1
  check_period         24x7
  notification_interval   30
  notification_period    24x7
  notification_options    w,u,c,r
  contact_groups      admins
  

  }
  保存并退出
  

  检查语法
  # /etc/init.d/nagios checkconfig
  

  没有错误的情况下:
  

  # /etc/init.d/nagios reload
  ------------------------------------------------------------------
  

  自定义插件:监控密码文件是否改变
  

  

  客户端测试:
  将/etc/passwd生成md5值
  # md5sum /etc/passwd
  5e2ebd59c3ebb7bd3c4b09b0674ca746/etc/passwd
  保存到/etc/alvin.md5 (文件名随便取,存放的位置任意)
  # md5sum /etc/passwd >/etc/alvin.md5
  分析md5值是否变化,没有变化显示"OK"
  # md5sum -c /etc/alvin.md5
  /etc/passwd: OK
  

  实战:
  1.在客户端添加自定义脚本
  cd /usr/local/nagios/libexec
  cat check_passwd
  #!/bin/bash
  char=`md5sum -c /etc/alvin.md5 2>/dev/null|grep "OK"|wc -l`
  if [ $char -eq 1 ];
  then
  echo "passwd is ok"
  exit 0
  else
  echo "passwd is changed"
  exit 2
  fi
  

  #添加执行的权限
  # chmod +x check_passwd
  # ll check_passwd
  -rwxr-xr-x 1 root root 166 Jul 22 21:33 check_passwd
  2.在客户端增加命令,并重启nrpe服务使之生效
  #vim /usr/local/nagios/etc/nrpe.cfg
  添加check_passwd定义命令
  command=/usr/local/nagios/libexec/check_passwd
  

  #pkill nrpe
  #重新启动nrpe
  #/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
  #查看是否启动了
  ps -ef|grep nrpe
  nagios    64672      10 Dec22 ?      00:00:21 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
  root      72255720990 11:48 pts/0    00:00:00 grep nrpe
  3.在服务端测试
  # /usr/local/nagios/libexec/check_nrpe -H 10.89.1.34 -c check_passwd
  passwd is ok
  

  添加服务脚本
  #cd /usr/local/nagios/etc/objects/
  # vi services.cfg
  #在后面添加
  define service{
  use               generic-service
  host_name         1.34-web-lnmp
  service_description    check_passwd
  check_command      check_nrpe!check_passwd
  }
  

  检测语法并重新加载/etc/init.d/nagios checkconfig
  没有错误的情况下:
  # /etc/init.d/nagios reload
  

  4.改变性测试在客户端执行添加用户命令
  #useradd jack
  服务端执行
  # /usr/local/nagios/libexec/check_nrpe -H 10.89.1.34 -c check_passwd
  passwd is changed
  

  




页: [1]
查看完整版本: nagios 监控配置介绍(三)