Nagios监控Redis

下载地址为:http://download.csdn.net/detail/hellopengyl/9617697,有2个版本,一个是perl脚本写成的,一个是php脚本写成的,可以任意选择一个,里面另外两个是监控mysql的这里选择的是perl脚本。

[[email protected] libexec]# chmod +x check_redis.p*
[[email protected] libexec]# ll check_redis.p*
-rwxr-xr-x. 1 root root  15812 Oct 10  2014 check_redis.php
-rwxr-xr-x. 1 root root 141829 Oct 10  2014 check_redis.pl
[[email protected] libexec]# ./check_redis.pl --help
Can‘t locate Redis.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./check_redis.pl line 421.
BEGIN failed--compilation aborted at ./check_redis.pl line 421.
[[email protected] libexec]# perl -MCPAN -e shell
cpan[1]> install Redis  
Running Build test
 Make had some problems, won‘t test
Running Build install
 Make had some problems, won‘t install
Could not read ‘/root/.cpan/build/Redis-1.976-Zhz6xI/META.yml‘.Falling back to other methods to determine prerequisites……
cpan[2]> install YAML  #可能会安装失败,失败原因是网络连接,多执行几次就会成功。
Appending installation info to /usr/lib64/perl5/perllocal.pod
  TINITA/YAML-1.18.tar.gz
  /usr/bin/make install  -- OK
  CPAN: YAML loaded ok (v1.18)
cpan[3]> install Redis
Running Build test
  Make had some problems, won‘t test
Running Build install
  Make had some problems, won‘t install
cpan[4]> install Build  #Build.PL故障,重新安装install Build,成功后,再执行install Redis
Running Build install   
     make test had returned bad status, won‘t install without force
 .....
 cpan[5]>q                                          
Terminal does not support GetHistory.
Lockfile removed.
[[email protected] libexec]# yum -y install mod_perl2
[[email protected] libexec]# perl -MCPAN -e shell
cpan[1]> install Redis  #这个过程中会有很多的交互操作,直接回车即可
Installing /usr/local/share/perl5/Redis/List.pm
Installing /usr/local/share/man/man3/Redis.3pm
Installing /usr/local/share/man/man3/Redis::Hash.3pm
Installing /usr/local/share/man/man3/Redis::List.3pm
Installing /usr/local/share/man/man3/Redis::Sentinel.3pm
  DAMS/Redis-1.991.tar.gz
  ./Build install  -- OK

cpan[2]> q                                            
Terminal does not support GetHistory.
Lockfile removed.
[[email protected] libexec]# ./check_redis.pl --help
General and Server Connection Options:
-H, --hostname=ADDRESS
   Hostname or IP Address to check
 -p, --port=INTEGER
   port number (default: 6379)
 -D, --database=NAME
   optional database name (usually a number), needed for --query but otherwise not needed
 -x, --password=STRING  #redis有密码需要指定密码,redis.conf中requirepass后面的就是密码
    Password for Redis authentication. Safer alternative is to put them in a file and use -C
 -C, --credentials=FILENAME  #可以将密码写在文件里,通过-C来读取从
    Credentials file to read for Redis authentication
 -t, --timeout=NUMBER
   Allows to set timeout for execution of this plugin. This overrides nagios default.
 -w, --warn=STR[,STR[,STR[..]]]  
 -c, --crit=STR[,STR[,STR[..]]]
 ....
 Variables and Thresholds Set as List:
  -a, --variables=STRING[,STRING[,STRING...]] #指定需要检测的项目,例如used_memory_human,connected_clients等,用单引号括起来,用分号隔开。
  -w, --warn=STR[,STR[,STR[..]]]
       > - warn if data is above this value (default for numeric values)
      < - warn if data is below this value (must be followed by number)
      = - warn if data is equal to this value (default for non-numeric values)
      ! - warn if data is not equal to this value
      ~ - do not check this data (must not be followed by number or ‘:‘)
      ^ - for numeric values this disables check that warning < critical
     Threshold values can also be specified as range in two forms:
      num1:num2  - warn if data is outside range i.e. if data<num1 or data>num2
      @num1:num2 - warn if data is in range i.e. data>=num1 && data<=num2
  -c, --crit=STR[,STR[,STR[..]]]
Performance Data Processing Options:   
    -f, --perfparse  
 [[email protected] libexec]#

在nagios通过命令检测

 check_redis_CPU

[[email protected] libexec]# /usr/local/nagios/libexec/check_redis.pl -H 10.10.55.31 -p 6379 -a used_cpu_sys,used_cpu_user,used_cpu_sys_children,used_cpu_user_children -w ~,~,~,~ -c ~,~,~,~ -f
OK: REDIS 2.8.17 on 10.10.55.31:6379 has 2 databases (db2,db0) with 125792 keys, up 616 days 20 hours - used_cpu_sys is 62256.73, used_cpu_user is 40052.36, used_cpu_sys_children is 81572.91, used_cpu_user_children is 405302.25 | used_cpu_sys_children=81572.91 used_cpu_sys=62256.73 used_cpu_user_children=405302.25 used_cpu_user=40052.36
[[email protected] libexec]#

~未定义监控报警阀值

check_redis_Memory

[[email protected] libexec]# /usr/local/nagios/libexec/check_redis.pl -H 10.10.55.31 -p 6379 -a used_memory_human,used_memory_peak_human -w ~,~ -c ~,~ -f
OK: REDIS 2.8.17 on 10.10.55.31:6379 has 2 databases (db2,db0) with 125907 keys, up 616 days 20 hours - used_memory_human is 763.85M, used_memory_peak_human is 907.74M | used_memory_human=763.85M used_memory_peak_human=907.74M
[[email protected] libexec]#

 check_redis_Clients

[[email protected] libexec]# /usr/local/nagios/libexec/check_redis.pl -H 10.10.55.31 -p 6379 -a connected_clients,blocked_clients,client_longest_output_list,client_biggest_input_buf -w 200,50,~,~ -c 600,150,~,~ -f
OK: REDIS 2.8.17 on 10.10.55.31:6379 has 2 databases (db2,db0) with 125839 keys, up 616 days 20 hours - connected_clients is 47, blocked_clients is 0, client_longest_output_list is 0, client_biggest_input_buf is 1769472 | blocked_clients=0;50;150 connected_clients=47;200;600 client_biggest_input_buf=1769472 client_longest_output_list=0
[[email protected] libexec]#

通过nagiosql对check_redis命令定义,添加服务,注意定义check_redis命令时候命令类型为检测命令,不是各种命令

时间: 08-30

Nagios监控Redis的相关文章

Nagios 监控redis

线上是用Nagios监控的,版本是最新版4.0.8 在nagios服务器上面下载redis插件 下载地址页面 https://exchange.nagios.org/directory/Plugins/Databases/check_redis-2Epl/details 下载check_redis.pl文件 安装perl redis环境 [[email protected] ~]# yum install -y perl-CPAN perl-Time-HiRes perl-YAML [[emai

nagios监控redis端口、监控url接口告警脚本

监控redis端口如下: #!/bin/sh #Created by hys 20140823 declare -a master_ismaster_is=($(redis-cli -h 192.168.0.76 -p 7711 INFO |grep role |awk -F: '{print $2}'))echo $master_isif [ ${master_is} == "master" ];then        echo "OK -slave is running&

Nagios 监控实例部署

Nagios是一款企业级开源软件,专注于监控服务器上服务是否正常,不生成图形,提供报警机制,邮件或者短信发送监控状态,它通过各种插件实现不同的功能. Nagios        监控平台主程序 Nagios-plugins     必选插件 NRPE         监控远程服务器的主机资源 NSClient++      用于监控Windows主机 NDOUtils       将数据写入数据库 实例应用: 1 监控快速部署 监控需要安装http php nagios nagios-plugi

Nagios监控Windows的网卡流量

Nagios监控Windows的网卡流量 使用/usr/local/nagios/libexec/中的check_traffic.sh,不但可以监控Linux的网卡流量,也可以监控Windows服务器的流量. 1 Check_traffic.sh用法用法 [[email protected] libexec]#/usr/local/nagios/libexec/check_traffic.sh -h Usage: ./check_traffic.sh [ -v ] [ -6 ] [ -r ] -

通过collectd工具获取虚拟机的nagios监控脚本简单例子

在宿主机上安装collectd工具后,可以通过collectd工具来获取宿主机上的虚拟机的cpu,memery,if-traffic等数据.可以通过nagios监控脚本来实现对这些数据监控. 以下是一个简单的监控虚拟机内存脚本: #!/bin/bash #Desc:to check memory about vm instance STATE_OK=0 STATE_WARNING=1 STATE_CRITICAL=2 STATE_UNKNOWN=3 COLLECTD_HOME=/usr/loca

Nagios监控系统

一.Nagios监控系统简介 1.Nagios工作原理 Nagios本身不包括监控主机和服务的功能.所有的监控.监测功能都是通过各种插件来完成的.安装完nagios之后,在nagios主目录下的/libexex里面放有nagios自带的插件,如:check_disk是检查磁盘空间的插件,check_load是检查cpu负载的插件,每一个插件可以通过运行./check_xxx -h命令来检查其使用方法和功能. 1.Nagios的四种监控状态 Nagios可以识别四种状态返回信息.0(OK)表示状态

Nagios监控远程主机

p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; line-height: 150%; font-size: 13.5pt; font-family: "Calibri", "sans-serif" } h1 { margin-top: 17.0pt; margin-right: 0cm; margin-bottom: 16.5pt; margin-left:

Nagios监控系统主机与服务配置

配置环境: 监控服务器 :192.168.189.132 被监控客户端:192.168.189.131(linux) 192.168.1.152(windows) Nagios相关配置文件概述: # cd /usr/local/nagios/etc/   相关文件用途如下表: 文件名或目录名 用途 cgi.cfg 控制CGI访问的配置文件 nagios.cfg Nagios 主配置文件 resource.cfg 变量定义文件,又称为资源文件,在些文件中定义变量,以便由其他配置文件引用,如$USE

nagios监控详解(中小企业必备的监控设备) &lt;上&gt;

cacti和nagios 都是中小企业必备的监控软件,首先来一个回顾 cacti监控优缺点:主要是监控图形流量,通过web界面监控流量,(主要监控cpu内存硬盘,流量) 基于snmp(抓取数据)和rrdtool(rrdtool主要是将抓取的数据 绘制图像) nagios监控系统服务的,也能监控window,linux,unix的主机状态,不过主要还是监控系统服务. nagios监控客户端需要借助插件以及NRPE软件 [把之前写的一个关于cacti的博客地址也不要碧莲的贴出来]http://www