Zabbix实现对Redis的监控

Zabbix实现对Redis的监控

环境准备

五台机器:

zabbix_agent 5.0 被动模式(已安装) Zabbix_java_gateway 5.0 (已安装) 10.0.0.7

MariaDB-10.4.22(已安装) zabbix_server 5.0(已安装) 10.0.0.17

Tomcat-8.5(已安装) 10.0.0.27

zabbix_agent 5.0 主动模式(已安装)Redis-6.2.4(已安装)10.0.0.37

MariaDB-10.4.22(已安装) zabbix_proxy 5.0 主动模式(已安装) 10.0.0.47

1.redis监控脚本

[root@centos7 ~]#cd /etc/zabbix/zabbix_agentd.d/

[root@centos7 zabbix_agentd.d]#cat redis_monitor.sh
#!/bin/bash

redis_status(){
        R_PORT=$1
        R_COMMAND=$2
        redis-cli -a 123456 INFO 2>/dev/null | ncat 127.0.0.1 "$R_PORT" > /tmp/redis_"$R_PORT".tmp
        REDIS_STAT_VALUE=$(grep ""$R_COMMAND":" /tmp/redis_"$R_PORT".tmp | awk -F: '{print int($2)}')
        echo $REDIS_STAT_VALUE
}

help(){
        echo "${0} + redis_status + PORT + COMMAND"
}

main(){
    case $1 in
        redis_status)
            redis_status $2 $3
                ;;
        *)
            help
                ;;
        esac
}
main $1 $2 $3

[root@centos7 zabbix_agentd.d]#yum -y install nmap-ncat
[root@centos7 zabbix_agentd.d]#chmod a+x redis_monitor.sh
[root@centos7 zabbix_agentd.d]#bash redis_monitor.sh redis_status 6379 used_memory
598224
[root@centos7 zabbix_agentd.d]#bash redis_monitor.sh redis_status 6379 connected_clients
1

2.zabbix agent添加自定义监控项

[root@centos7 ~]#vim /etc/zabbix/zabbix_agentd.conf
UserParameter=redis_monitor[*],/bin/bash /etc/zabbix/zabbix_agentd.d/redis_monitor.sh $1 $2 $3

[root@centos7 ~]#systemctl restart zabbix-agent.service

3.zabbix server测试监控项数据

[root@centos7 ~]#chown zabbix.zabbix /tmp/redis_6379.tmp

[root@zabbix_server ~]#/bin/zabbix_get -s 10.0.0.37 -p 10050 -k "redis_monitor["redis_status","6379","used_memory"]"
598224
[root@zabbix_server ~]#/bin/zabbix_get -s 10.0.0.37 -p 10050 -k "redis_monitor["redis_status","6379","connected_clients"]"
1

4.zabbix web模板制作

点击【配置-模板-创建模板】

Zabbix实现对Redis的监控_第1张图片

5.创建监控项

5.1 redis当前连接数监控项

点击【配置-模板-redis-monitor-template-监控项-创建监控项】

Zabbix实现对Redis的监控_第2张图片
Zabbix实现对Redis的监控_第3张图片

5.2 redis已用内存监控项

点击【配置-模板-redis-monitor-template-监控项-redis当前连接数-克隆】

Zabbix实现对Redis的监控_第4张图片
Zabbix实现对Redis的监控_第5张图片

6.创建图形

点击【配置-模板-redis-monitor-template-图形-创建图形】

6.1 redis当前连接数图形Zabbix实现对Redis的监控_第6张图片

6.2 redis已用内存图形Zabbix实现对Redis的监控_第7张图片

7.创建触发器

点击【配置-模板-redis-monitor-template-触发器-创建触发器】

7.1 redis当前连接数触发器Zabbix实现对Redis的监控_第8张图片

7.2 redis已用内存触发器

需要将已用内存单位转换,从G转换为字节,例如,当内存使用达2G时就进行触发,则换算方式如下:

2*1024*1024*1024=2147483648

Zabbix实现对Redis的监控_第9张图片

8. 模板关联主机

点击【配置-主机-10.0.0.37-web2-active-模板】Zabbix实现对Redis的监控_第10张图片

9. 验证监控项数据

9.1 redis当前连接数

Zabbix实现对Redis的监控_第11张图片

9.2 redis已用内存

Zabbix实现对Redis的监控_第12张图片

你可能感兴趣的:(Linux运维,linux,运维)