需求是能监控单节点 redis 即可,我在部署上不会用 cluster 集群。监控项目需要的也不多,能方便地从网页里看到内存、流量等等即可,当然能看到具体 GET 命令执行占比多少这种的就更好了。
有什么满足需求的,部署简单的项目推荐吗,github 搜了一下蛮多 java 的项目,还需要装 java 环境,部署也看不太懂,像 go 的似乎好一些,不用装环境。。
1
matsuda 2022-04-22 08:18:18 +08:00
Prometheus+Grafana+node_exporter 这个组合应该可以,用 docker 稍微配置一下应该不算费事
|
2
yzding 2022-04-22 08:29:24 +08:00 via iPhone
netdata 有专门的 redis 插件
|
3
ZeroYe 2022-04-22 08:53:28 +08:00
可以用一楼说的,我记得 Prometheus 对于 Redis 有 exporter 的。Prometheus 都是二进制文件直接下载就可以部署
|
4
qwerthhusn 2022-04-22 09:02:28 +08:00
RedisInsight 应该能满足你的需求,网页上有各种各样的统计图表
|
5
likeunix 2022-04-22 09:57:24 +08:00
Redis Assistant 可以试试,不需要部署,基本符合你的监控需求,官网: http://www.redisant.cn/
|
6
zqhong 2022-04-22 18:57:56 +08:00
https://github.com/liuzhuoling2011/RedisGo
可以看看这个,用 Go 写的,安装方便。 一步到位的话,建议还是 Prometheus + Grafana + Redis Exporter |
7
Richard14 OP @zqhong 这个项目很好,满足我的需求,很简单,功能也堪用,虽然好像有些小 bug 。不过很好奇它的原理是什么,它不需要 redis 那边主动装一个 exporter 向它推送,他是怎么知道有人访问了 redis 的呢
|
8
zqhong 2022-04-23 09:17:15 +08:00 1
@Richard14
https://github.com/liuzhuoling2011/RedisGo/blob/master/web/ws_handlers.go#L35-L41 可以看这里的代码,是通过 Redis INFO 命令返回的结果了解 Redis 的运行情况。比如 instantaneous_ops_per_sec: Number of commands processed per second Redis INFO 命令的信息参考这里: https://redis.io/commands/info/ |