Redis六-监控
下载安装redis
# 下载 Redis 7.0 稳定版
curl -O https://download.redis.io/releases/redis-7.0.12.tar.gz
# 解压文件
tar xzf redis-7.0.12.tar.gz
ln -s redis-3..0.12 redis # 建立一个软链接,便于操作
cd redis-7.0.12
make
make install
redis-server redis.conf # 启动 Redis 服务
appendonly yes
maxmemory 1gb
下载安装redis exporter
git clone https://github.com/oliver006/redis_exporter.git
cd redis_exporter
go build .
./redis_exporter --version
nohup ./redis_exporter & # 后台运行
配置Prometheus
vi /usr/local/prometheus/prometheus.yml
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
scrape_configs:
- job_name: 'prometheus-agent'
file_sd_configs:
- files:
- /usr/local/prometheus/discovery_node_exporter.yml
refresh_interval: 5s
vi /usr/local/prometheus/discovery_node_exporter.yml
[
{
"targets": ["1.1.1.10:9121"],
"labels": {"info": "wiseHYH"}
}
]

配置Grafana
-
集群状态
redis_cluster_enabled # 是否开启集群模式

-
AOF状态
redis_aof_enabled # 是否开启AOF -
RDB快照时间
redis_rdb_last_save_timestamp_seconds * 1000 # 最后一次RDB快照时间戳(秒)*1000 转毫秒,因为Grafana默认是毫秒,不乘以1000会转换到1970年
Standard options > Unit > Datetime default
-
慢日志查询长度
redis_slowlog_length # 慢日志长度 -
内存
redis_memory_used_bytes /1024 /1024 /1024 # 已使用内存
redis_memory_max_bytes /1024 /1024 /1024 # 最大内存-->maxmemory 1gb
Standard options > Unit > GB
redis_mem_fragmentation_ratio # 内存碎片比率
什么是内存碎片?
- Redis 分配的内存空间大于实际存储数据的长度。
- 当 Redis 中的某个数据删除时,Redis 通常不会轻易释放内存给操作系统,而是保留给后续的写入操作使用。
比如,一个字符串对象实际内容只有3个字节,但是使用了64字节的空间来保存它
mem_fragmentation_ratio (内存碎片率)= used_memory_rss (操作系统实际分配给 Redis 的物理内存空间大小)/ used_memory(Redis 内存分配器为了存储数据实际申请使用的内存空间大小)
mem_fragmentation_ratio (内存碎片率)的值越大代表内存碎片率越严重
config set activedefrag yes # 开启内存碎片整理
config set active-defrag-ignore-bytes 500mb # 内存碎片占用空间达到 500mb 的时候开始清理
config set active-defrag-threshold-lower 50 # 内存碎片率大于 1.5 的时候开始清理
redis-cli MEMORY PURGE # 清理内存碎片
重启节点也可以做到内存碎片重新整理。可以将碎片率过高的主节点转换为从节点,以便进行安全重启。
-
key
redis_db_keys # key数量
redis_expired_keys_total # 过期key数量 -
fork
redis_latest_fork_seconds # 最后一次fork耗时
整体效果


浙公网安备 33010602011771号