Redis存活监控
redis 持续性监控
watch -n 1 -d "./redis-cli -c -h redis-cluster -p 6371 info|grep -e 'connected_clients' -e 'blocked_clients' -e 'memory' -e 'expired_keys' -e 'evicted_keys' -e 'keyspace_hits' -e 'keyspace_misses' -e 'cpu'"
redis 度量延迟Baseline
./redis-cli -c -h redis-cluster -p 6371 --intrinsic-latency 100
redis存活监控 (redis_alive):redis本地监控agent使用ping,如果指定时间返回PONG表示存活,否则redis不能响应请求,可能阻塞或死亡。当返回值不为1时,redis挂了,告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 ping | grep -c PONG
1
连接个数 (connected_clients):客户端连接个数,如果连接数过高,影响redis吞吐量。>5000 时告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w "connected_clients" | awk -F":" '{print $2}'
1
连接数使用率(connected_clients_pct): 连接数使用百分比,通过(connected_clients/maxclients)计算;如果达到1,redis开始拒绝新连接创建,告警
拒绝的连接个数(rejected_connections): redis连接个数达到maxclients限制,拒绝新连接的个数。告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w rejected_connections
rejected_connections:0
新创建连接个数 (total_connections_received): 如果新创建连接过多,过度地创建和销毁连接对性能有影响,说明短连接严重或连接池使用有问题,告警。
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w total_connections_received
total_connections_received:217
list阻塞调用被阻塞的连接个数 (blocked_clients): 如果监控数据大于0,告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w blocked_clients
blocked_clients:0
redis分配的内存大小 (used_memory): redis真实使用内存,不包含内存碎片
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w used_memory
used_memory:2513656
redis进程使用内存大小(used_memory_rss): 进程实际使用的物理内存大小,包含内存碎片;如果rss过大导致内部碎片大,内存资源浪费,和fork的耗时和cow内存都会增大。
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w used_memory_rss
used_memory_rss:9728000
redis内存碎片率 (mem_fragmentation_ratio): 表示(used_memory_rss/used_memory),碎片率过大,导致内存资源浪费,不设置告警。小于1,表示redis已使用swap分区,则告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w mem_fragmentation_ratio
mem_fragmentation_ratio:3.89
键个数 (keys): redis实例包含的键个数。单实例键个数过大,可能导致过期键的回收不及时。
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w keys | awk -F':' '{print $2}' | awk -F',' '{print $1}' | awk -F'=' '{print $2}'
43
redis处理的命令数 (total_commands_processed): 监控采集周期内的平均qps
./redis-cli -c -p 7000 info | grep -w total_commands_processed| awk -F':' '{print $2}'
redis当前的qps (instantaneous_ops_per_sec): redis内部较实时的每秒执行的命令数
./redis-cli -c -p 7000 info | grep -w instantaneous_ops_per_sec | awk -F':' '{print $2}'
请求键被命中次数 (keyspace_hits): redis请求键被命中的次数
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w keyspace_hits | awk -F':' '{print $2}'
354
请求键未被命中次数 (keyspace_misses): redis请求键未被命中的次数
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w keyspace_misses
keyspace_misses:122
请求键的命中率 (keyspace_hit_ratio):使用keyspace_hits/(keyspace_hits+keyspace_misses)计算所得,命中率低于50%告警
最近一次fork阻塞的微秒数 (latest_fork_usec): 最近一次Fork操作阻塞redis进程的耗时数,单位微秒。
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w latest_fork_usec
latest_fork_usec:315
Redis集群监控
实例是否启用集群模式 (cluster_enabled): 通过info的cluster_enabled监控是否启用集群模式。不等于1则告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 info | grep -w cluster_enabled
cluster_enabled:1
集群健康状态 (clusster_state):cluster_state不为OK则告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 cluster info
cluster_state:ok
集群数据槽slots分配情况 (cluster_slots_assigned):集群正常运行时,默认16384个slots
不等于16384则告警
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 cluster info | grep -w cluster_slots_ok
cluster_slots_ok:16384
检测下线的数据槽slots个数 (cluster_slots_fail):集群正常运行时,应该为0. 如果大于0说明集群有slot存在故障。
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 cluster info | grep -w cluster_slots_fail
cluster_slots_fail:0
集群的节点数 (cluster_known_nodes):集群中redis节点的个数
[root@tzgdevapp10 bin]# ./redis-cli -c -p 7000 cluster info | grep -w cluster_known_nodes
cluster_known_nodes:6
作者:疲马羁禽
链接:https://www.jianshu.com/p/68485d5c7fb9
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
redis监控指标.html
在“redis监控模板-配置-脚本.zip”压缩包中,包含了一些关键组件,用于帮助Zabbix监控Redis实例: 1. **redis.conf**:这是Redis服务器的主要配置文件,包含了Redis服务器的所有设置。例如,你可以通过修改`bind`...
在运维领域,Prometheus 提供了强大的数据收集和查询功能,能够与各种服务(如Redis)集成,以实时监控服务的状态和性能指标。 监控Redis是确保数据存储稳定性和高效运行的关键步骤。在本文档中,我们将详细介绍...
2. **Redis监控指标**: 对于Redis,常见的监控指标包括但不限于: - 连接数(`INFO clients`) - 内存使用情况(`INFO memory`) - 操作命令统计(`INFO commandstats`) - 数据库键值数量(`INFO keyspace`)...
Redis监控系统Redis-stat的离线安装是一个针对Redis数据库性能监控的重要步骤,对于系统管理员和开发者来说,能够实时了解Redis服务器的运行状态至关重要。本文将详细介绍如何在没有网络连接的情况下,通过离线方式...
本文将详细介绍几种常用的Redis监控工具,帮助你更好地管理和优化你的Redis实例。 1. Redis Monitor Redis内置了一个简单的命令行监控工具——`MONITOR`命令。通过在Redis客户端执行`MONITOR`,你可以实时查看...
在监控Redis时,可能关注的指标包括:内存使用情况、命令执行频率、网络I/O等。 然后,学习Prometheus的查询语言PromQL。通过PromQL,你可以构建复杂的查询来获取Redis的实时状态,例如查找Redis的内存使用率超过80...
4. **监控指标**:通过Prometheus和Grafana,你可以监控MySQL和Redis的CPU使用率、内存使用量、QPS(每秒查询数)、延迟、连接数等关键指标,并设置阈值警告。 监控MySQL和Redis的运行状况是系统运维的重要环节,它...
Redis Exporter 是一款专为 Redis 数据库设计的监控插件,它允许用户通过 Prometheus 这样的度量收集系统来监控 Redis 实例的性能指标。在 IT 环境中,实时监控系统的健康状态和性能至关重要,尤其是对于像 Redis ...
#### 如何访问Redis监控指标 Redis提供了一组丰富的内置监控工具,通过这些工具可以获取系统的运行状态信息。通常,可以通过以下几种方式访问Redis的监控指标: - **`info` 命令**:该命令可以返回关于服务器状态的...
1.只是文档 监控指标:主机资源监控、tomcat监控、redis监控、MQ监控、nginx监控、URL监控、Oracle监控、MySQL监控、sqlserver监控、PG监控、 数据库巡检指标:基本信息、数据库配置、检查项
在本压缩包中,包含了Redis的Linux版本、Windows版本以及一个Redis监控工具。 首先,让我们来详细了解一下Redis的Linux版本。Redis在Linux操作系统上运行非常稳定,因为Linux的内核特性与Redis的内存管理、多线程...
首先,让我们关注Redis监控。Redis是一个内存中的数据结构存储系统,常用于缓存、消息队列和数据库等场景。为了确保Redis服务的稳定运行,Nagios提供了名为`check_redis.pl`的插件。这个Perl脚本可以检查Redis服务器...
在IT运维中,确保Redis这样的关键缓存数据库正常运行是至关重要的,为此,Nagios提供了专门的Redis监控控件。 Redis是一款高性能的键值存储系统,常用于数据库、缓存和消息中间件。通过Nagios监控Redis,我们可以...
Zabbix提供了现成的Redis监控模板,包含了各种关键性能指标,如内存使用、命令执行速率、连接数等。步骤如下: 1. 在Zabbix服务器上安装Redis监控所需的Python模块(如`redis-py`)。 2. 配置Zabbix代理或服务器以...
"Redis集群监控软件"就是针对这一需求设计的工具,它能帮助我们便捷地部署并全方位监控Redis集群。 该工具的主要功能包括: 1. **实时监控**: 提供实时监控功能,可以直观地查看各个Redis节点的内存使用情况。这...
首先,我们需要在Zabbix服务器上安装相应的Redis监控插件。在本例中提到的是"redis4bix",它模仿了"db4bix"插件的模式,用于收集Redis的数据。安装过程通常包括以下几个步骤: 1. **下载和解压插件**:获取"redis4...
Redis监控是管理Redis部署和集群健康状况的重要环节,监控可以使用专门的工具如Redis-stat。部署监控工具可以对Redis实例的性能指标、内存使用、连接状态等进行实时监控。 ### 注意事项 在部署过程中,还需注意...
最后,需要在Zabbix的Web界面中创建监控模板,关联到Redis集群的各个节点,定义触发器以在特定指标超过阈值时发出警告。这些指标可能包括内存使用率、连接数、错误计数等。通过这样的配置,运维人员可以在Zabbix的...
在本文中,我们将探讨如何构建一个自定义的Redis监控系统。 首先,我们可以利用开源工具redis-stat来获取基础的监控信息。然而,为了满足更复杂的需求,我们需要解析Redis的INFO命令输出,从中提取关键数据,以实现...