在 CentOS 上监控 Redis,可以从系统层、Redis 自身、可视化工具、告警几个层面来做。下面按“由浅入深”的方式给你一套可落地的方案。
redis-cli pingredis-cli ping
返回 PONG 表示存活。
redis-cli info最重要、最常用:
redis-cli info
或分类查看:
redis-cli info memory
redis-cli info stats
redis-cli info replication
redis-cli info persistence
重点关注指标:
used_memory:内存使用connected_clients:客户端连接数evicted_keys:被淘汰的 keykeyspace_hits / misses:命中率rdb_last_bgsave_status:持久化状态ps -ef | grep redis
ss -lntp | grep 6379
top
free -h
df -h
Redis 日志位置在配置文件中:
grep logfile /etc/redis.conf
实时看日志:
tail -f /var/log/redis/redis.log
重点看:
Background saving started/failedOut Of MemoryConnection refusedCentOS 7/8 一般用 systemd:
systemctl status redis
设置开机自启:
systemctl enable redis
示例监控脚本:
#!/bin/bash
if ! redis-cli ping > /dev/null; then
echo "Redis is down!" | mail -s "Redis Alert" admin@example.com
fi
加进 crontab:
* * * * * /opt/monitor_redis.sh
wget https://github.com/oliver006/redis_exporter/releases/download/v1.54.0/redis_exporter-v1.54.0.linux-amd64.tar.gz
tar -xzf redis_exporter-*.tar.gz
./redis_exporter &
scrape_configs:
- job_name: redis
static_configs:
- targets: ['localhost:9121']
适合开发和排查:
docker run -d -p 8001:8001 redis/redisinsight
浏览器访问:http://IP:8001
✅ 必须监控:
maxmemory 没配 → 容易 OOM如果你愿意,我可以:
你现在是 测试环境还是生产环境?