登录
首页 >  数据库 >  Redis

Redis怎样利用Prometheus进行可视化持续监控

时间:2026-05-03 09:52:31 281浏览 收藏

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《Redis怎样利用Prometheus进行可视化持续监控》,聊聊,我们一起来看看吧!

Redis Exporter 连不上主因是认证或网络策略:启用密码需显式传参--redis.password;Docker 部署注意网络模式;ACL 需授予 INFO/CONFIG/CLIENT LIST 权限;Prometheus targets 应指向 exporter 的 9121 端口而非 Redis 的 6379。

Redis怎样利用Prometheus进行可视化持续监控

Redis Exporter 怎么装才不会连不上

Redis 本身不暴露 Prometheus 所需的指标格式,必须靠 redis_exporter 做协议转换。常见连不上不是因为端口没开,而是认证或网络策略卡在第一步。

  • 如果 Redis 启用了密码(requirepass),启动 redis_exporter 时必须显式传参:--redis.password=xxx,光配 redis://:xxx@host:6379 URL 不生效
  • Docker 部署时注意网络模式:容器默认无法访问宿主机的 127.0.0.1,要用 host.docker.internal(Mac/Win)或 --network host(Linux)
  • Redis 6+ 启用 ACL 后,redis_exporter 需要至少 INFOCONFIGCLIENT LIST 权限,仅 default 用户可能被拒绝

prometheus.yml 里 scrape_configs 怎么写才不丢指标

配置错误会导致采集完全静默,且 Prometheus 不报错——它只默默跳过无法连接的目标。

  • static_configs 中的 targets 必须指向 redis_exporter 的 HTTP 端口(默认 9121),不是 Redis 的 6379
  • 若用服务发现(如 Consul 或 Kubernetes),确保标签中包含 __meta_* 字段能正确解析出 exporter 地址,而不是误解析成 Redis 实例地址
  • params: {format: "prometheus"} 是多余操作,redis_exporter 只响应 /metrics,不支持参数控制格式

为什么 redis_connected_clients 指标总是 0

这个值为 0 通常意味着 redis_exporter 虽然连上了 Redis,但没拿到有效响应——多数是权限或命令禁用导致。

  • 检查 Redis 日志是否出现 Command not allowed,特别是 INFO 命令被 ACL 屏蔽
  • 某些云 Redis(如阿里云 ApsaraDB)默认禁用 CONFIGCLIENT LIST,而 redis_exporter 启动时会尝试执行它们来探测能力,失败后可能降级采集,部分指标丢失
  • curl http://localhost:9121/metrics | grep connected_clients 直接看 exporter 输出,确认该指标是否存在,排除 PromQL 查询问题

Grafana 里 Redis Dashboard 加载慢或数据断层

不是网络或 Redis 本身的问题,大概率是查询范围或函数用错了。

  • rate(redis_commands_total[5m]) 这类聚合在低频实例上容易返回空——改用 irate() 更稳妥,尤其当采集间隔 >15s 时
  • Dashboard 中硬编码了 job="redis",但你的 scrape_configs 里 job 名可能是 redis-exporter,指标直接查不到
  • 内存相关指标(如 redis_memory_used_bytes)单位是字节,Grafana 面板若设成 “MB” 却没勾选 “Unit > bytes”,数值会小 100 万倍,看起来像归零

真正麻烦的是多实例场景下 target 标签混乱——比如所有 Redis 实例都用同一个 instance 标签,或者用 IP 但没加端口,结果 metrics 混在一起没法区分。这问题不会报错,但排查起来得翻好几层 relabel_configs。

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《Redis怎样利用Prometheus进行可视化持续监控》文章吧,也可关注golang学习网公众号了解相关技术文章。

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>