1、制作redis_low_discovery.sh脚本

mkdir -p /data/service/script/zabbix

cd /data/service/script/zabbix

cat redis_low_discovery.sh

#!/bin/bash
#Fucation:mysql low-level discovery
#Script_name redis_low_discovery.sh
redis() {
port=($(sudo netstat -tpln | awk -F "[ :]+" '/redis/ && /0.0.0.0/ {print $5}'))
printf '{\n'
printf '\t"data":[\n'
for key in ${!port[@]}
do
if [[ "${#port[@]}" -gt 1 && "${key}" -ne "$((${#port[@]}-1))" ]];then
socket=`ps aux|grep ${port[${key}]}|grep -v grep|awk -F '=' '{print $10}'|cut -d ' ' -f 1`
printf '\t {\n'
printf "\t\t\t\"{#REDISPORT}\":\"${port[${key}]}\"},\n"
else [[ "${key}" -eq "((${#port[@]}-1))" ]]
socket=`ps aux|grep ${port[${key}]}|grep -v grep|awk -F '=' '{print $10}'|cut -d ' ' -f 1`
printf '\t {\n'
printf "\t\t\t\"{#REDISPORT}\":\"${port[${key}]}\"}\n"
fi
done
printf '\t ]\n'
printf '}\n'
}
$1

验证脚本是否正常

[root@l-redis1 zabbix]# sh redis_low_discovery.sh redis
{
"data":[
{
"{#REDISPORT}":"7111"},
{
"{#REDISPORT}":"7112"},
{
"{#REDISPORT}":"7113"},
{
"{#REDISPORT}":"7114"},
{
"{#REDISPORT}":"7115"},
{
"{#REDISPORT}":"7116"}
]
}

2、添加UserParameter

cd /etc/zabbix/zabbix_agentd.d/

vim zabbix_redis.conf
UserParameter=zabbix_low_discovery[*],/bin/bash /data/service/script/zabbix/redis_low_discovery.sh $1
UserParameter=redis_stats[*],(echo info; sleep 1) | telnet 127.0.0.1 $1 2>&1 |grep $2|cut -d : -f2

zabbix_agentd.conf配置文件中把UnsafeUserParameters=1设置为1并打开注释即可,这里我的redis示例没有设置密码,如果有密码就加上-a password,telnet对空密码可以。有密码的话telnet换成$(which redis-cli)。然后重启agent即可

把redis_low_discovery.sh文件存放到data/service/script/zabbix/目录下,然后给与755权限,并修改用户与组为zabbix,同时允许zabbix用户无密码运行

echo "zabbix ALL=(root) NOPASSWD:/bin/netstat">>/etc/sudoers
关闭requiretty
sed -i 's/^Defaults.*.requiretty/#Defaults    requiretty/' /etc/sudoers
3、server 客户端操作
使用zabbix_get 获取redis 键值
重启zabbix-agent
zabbix-server 上面测试:

zabbix_get -s 10.5.58.241 -k redis_stats[7111,uptime_in_seconds]
2600258

4、导入模板
Template Redis Auto Discovery导入到zabbix里(模板在附件),具体操作不介绍
5、设置正则
adminstration--->general___右上角-->Regular expressions--->new Regular expressions
name:Redis Regex master
Result is True           ^(7111|7112|7113|7114|7115|7116)$
6、模板调用正则

Configuration ----> Host---->Discovery rules  ----->Redis Port Discovery------>

7、引用模板
配置-主机-Templates--添加模板
模板地址:
https://files-cdn.cnblogs.com/files/yaxuan/zabbix_redis_templates.xml


17:09:30

redis 多实例监控的更多相关文章

  1. redis php 实例

    redis php 实例一 redis的操作很多的,以前看到一个比较全的博客,但是现在找不到了.查个东西搜半天,下面整理一下php处理redis的例子,个人觉得常用一些例子.下面的例子都是基于php- ...

  2. redis 多实例配置

    (redis的安装, 配置, 登陆等基础不再多说, 网上很多资料的, 这里只说个人对redis多实例的理解与配置) 我自己使用的redis版本是 2.8.13, 环境是 ubuntu 个人对多实例的理 ...

  3. CentOS7 配置 Redis单实例

    Redis单实例安装 环境.准备 安装 作为服务启动 启动 1.环境.准备 系统 CentOS7 最小化安装. gcc安装,Make时需要. yum -y install gcc 下载安装包 下载当前 ...

  4. 基于zabbix 的memached 多实例监控

    基于zabbix 的memached 多实例监控 zabbix agentd 配置文件新增配置: UserParameter=memcached.server.discovery[*],ps uax ...

  5. 小贝_php+redis简单实例

    php+redis简单实例 一.说明 因为redis是c/s架构.从这个角度上.不论什么符合redis的client要求的.都能够与redis进行通讯.官方提供了非常多的client. php在web ...

  6. redis集群监控之Redis-monitor部

    为了对以后有可能面临的redis集群监控做准备,这两天在准备这方面的事情,现在将其中的过程记录一下. 首先是“Ronney-Hua”的这篇文章对三中开源监控软件做了对比 文章地址:https://bl ...

  7. Zabbix 3.2.6-Mysql多实例监控-Percona Monitoring Plugins自动发现

    mysql多实例监控实录   系统环境: cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 内核版本: uname -r 3.1 ...

  8. redis多实例与主从同步及高级特性(数据过期机制,持久化存储)

    redis多实例 创建redis的存储目录 vim /usr/local/redis/conf/redis.conf #修改redis的配置文件 dir /data/redis/ #将存储路径配置修改 ...

  9. Redis 多实例 & 主从复制

    Redis 多实例 多实例目录 [root@db01 ~]# mkdir /service/redis/{6380,6381} 多实例配置文件 # 第一台多实例配置 [root@db01 ~]# vi ...

随机推荐

  1. logstash配置如何理解?

    elasticsearch {   action => "index" #The operation on ES   hosts => "localhost: ...

  2. BZOJ 4864 [BJWC2017]神秘物质 (splay)

    题目大意: 让你维护一个序列,支持: 1.合并两个相邻的数为一个新的数 2.在某个位置插入一个数 3.查询一个区间的任意子区间极差的最大值 4.查询一个区间的任意子区间极差的最小值 前两个操作可以用$ ...

  3. pytorch 7 save_reload 保存和提取神经网络

    import torch import matplotlib.pyplot as plt # torch.manual_seed(1) # reproducible # fake data x = t ...

  4. mysql linux查看配置文件my.cnf位置

    原文:mysql linux查看配置文件my.cnf位置 命令: mysql --help | grep 'Default options' -A 1

  5. JS中常用开发知识点

     JS中常用开发知识点 1.获取指定范围内的随机数 2.随机获取数组中的元素 3.生成从0到指定值的数字数组 等同于: 4.打乱数字数组的顺序 5.对象转换为数组 //注意对象必须是以下格式的才可以通 ...

  6. freemark实现遍历 list,每行三个

    我的做法是先做一个模板,这三个只都是从list里取出来的 在后台将每三个值放到一个map里 List<Map<String, Object>> newsList=new Arr ...

  7. Xdoclet + Ant自己主动生成Hibernate配置文件

    在使用Hibernate的时候,过多的Hibernate配置文件是一个让人头疼的问题. 近期接触了Xdoclet这个工具. 它实际上就是一个自己主动代码生成的工具.Xdoclet不能单独执行,必须搭配 ...

  8. 自己定义控件-MultipleTextView(自己主动换行、自己主动补齐宽度的排列多个TextView)

    一.功能: 1.传入一个 List<String> 数组,控件会自己主动加入TextView,一行显示不下会自己主动换行.而且把上一行末尾的空白通过拉伸而铺满. 2.配置灵活 <co ...

  9. HDU 4334 Contest 4

    本来以为是一道水题,好吧,做了才知道,出题的人有多牛.二分搜索是不可能的了,因为会超内存... 看到别人的搜索两个集合的提示,我就自己一边去想了.终于想出来了: 可以这样做,先把每两个集合的和值枚举出 ...

  10. hadoop系列:zookeeper(2)——zookeeper核心原理(选举)

    1.前述 上篇文章<hadoop系列:zookeeper(1)--zookeeper单点和集群安装>(http://blog.csdn.net/yinwenjie/article/deta ...