Chinaunix首页 | 论坛 | 博客
  • 博客访问: 243342
  • 博文数量: 29
  • 博客积分: 634
  • 博客等级: 上士
  • 技术积分: 432
  • 用 户 组: 普通用户
  • 注册时间: 2010-10-09 22:24
文章分类

全部博文(29)

文章存档

2012年(8)

2011年(21)

分类: 系统运维

2012-02-27 11:59:14

监控机安装
  1. yum install nsca
修改nsca.cfg中的  
  1. server_address= #填写主机ip
  1. debug=1 #写入日志
  1. aggregate_writes=1 #支持更大的负载
  1. max_packet_age=30 #包过期时间
  1. passwd= #加密
被监控机安装
  1. yum install nsca-client
配置文件无需更改


修改nagios端模板文件
define service{
        name                            generic-service    
        active_checks_enabled           0               #关闭主动检测
        passive_checks_enabled          1               #开启被动检测
        parallelize_check               1              
        obsess_over_service             1              
        check_freshness                 0              
        notifications_enabled           1             
        event_handler_enabled           1              
        flap_detection_enabled          1              
        failure_prediction_enabled      1
        process_perf_data               1              
        retain_status_information       1              
        retain_nonstatus_information    1             
        is_volatile                     0              
        check_period                    24x7           
        max_check_attempts              3          
        normal_check_interval           3          
        retry_check_interval            2          
        contact_groups                  admins         
        notification_options        w,u,c,r
        notification_interval           60         
        notification_period             24x7          
         register                        0             
        }



nagios需要修改nagios.cfg   accept_passive_service_checks=0

这个选项指定了Nagios在初始的启动或重启时是否要执行服务检测。如果这个没有使能,Nagios将不会主动地执行任何服务的检测并且保持一系列的"静默"状态(它仍旧可以接收除非你已经将选项关闭)。这个选项经常用于备份被监控服务配置,被监控服务的配置备份在文档或设置成一个监控环境中有描述。注意:如果你已经使能了,Nagios在其启动或重启时将会忽略这个选项设置并使用和旧的设置值(旧值保存于),除非你关闭了选项。如果你想在状态保持使能(和选项使能)的情况下修改这个选项,你只得用适当的或是通过Web接口来修改它。选项可用的值有:

  1. 0 = 不执行服务检测
  2. 1 = 执行服务检测(默认)
service.cfg需要添加
  1. 服务对象定义里的check_freshness选项设为1,这将打开针对该服务的"刷新检测"特性;
  2. 服务对象定义里的freshness_threshold选项须设定为一个以秒为单位的数值,该值反应出由分布式服务器所提供的检测数据将应该以什么样频度来提供出来;

define service{
        host_name               apptest1
        service_description     Check_procs
        check_command           Check_procs!80!100
        max_check_attempts      3
        normal_check_interval   1
        retry_check_interval    2
        check_period            24x7
        notification_interval   3600
        notification_period     24x7
        notification_options    w,c,r
        contact_groups          sagroup
        check_freshness         1           #开启刷新检测
        freshness_threshold     60          #刷新检测间隔时间
        }
在commands.cfg中添加对应服务
  1. define command{
  2. command_name Check_procs
  3. command_line $USER1$/check_procs -w $ARG1$ -c $ARG2$
  4. }
客户端编写脚本commen.sh(执行检测的脚本)
  1. #!/bin/bash
  2. #Naigos and nsca
  3. #By yangyong
  4. hostname=$(hostname)
  5. Plugin_path="/etc/nagios/libexec"
  6. HOSTADDRESS=$(/sbin/ifconfig |grep -v '127.0.0.1'|awk -F: '{print $2}'|grep Bcast|awk '{printf "%s:",$1}')
  result=$($Plugin_path/check_procs -w 50 -c 200)
  status=$?
  output=$result
  echo -e "$hostname\tCheck__procs\t$status\t$output"


客户端编写脚本nagios_check_.sh
  1. #!/bin/bash
  2. NSER=192.168.10.66
  3. CHECK_PATH="/etc/nagios/"
  4. RESULT_FILE="/etc/nagios/nagios_result"
  5. /bin/bash "$CHECK_PATH"/commen.sh > /etc/nagios/nagios_result
  6. /usr/sbin/send_nsca -to 60 -H "$NSER" -c /etc/nagios/send_nsca.cfg <"$RESULT_FILE"
通过send_nsca命令对nsca服务器进行数据传送,nsca在把数据交给nagios
添加两个服务分别不使用刷新检测服务 然后开启nagios,查看结果

参考文档:















阅读(3808) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~