实战 rabbitmq-exporter,prometheus 实现 rabbitmq 监控
介绍
RabbitMQ 指标的 Prometheus 导出器。数据由 prometheus 抓取。
请注意这是一个非官方插件。还有一个来自 RabbitMQ.com 的官方插件。
1、RabbitMQ 结合 Prometheus 的两种方式
第一种:RabbitMQ 内部集成 Prometheus 来获取指标
3.8.0 之前版本,RabbitMQ 可以使用单独的插件 prometheus_rabbitmq_exporter 来向 Prometheus 公开指标,要单独下载到 RabbitMQ 安装目录中进行安装;
prometheus_rabbitmq_exporter:https://github.com/deadtrickster/prometheus_rabbitmq_exporter
3.8.0 版开始,RabbitMQ 附带了内置的 Prometheus&Grafana 支持。虽然内置了该插件,但也要进行安装
rabbitmq-prometheus:https://github.com/rabbitmq/rabbitmq-prometheus
第二种:使用独立程序来获取指标(RabbitMQ_exporter)
不管什么版本都能使用,要单独启动 exporter 进程
rabbitmq_exporter:https://github.com/kbudde/rabbitmq_exporter
RabbitMQ 官方监控介绍:
https://www.rabbitmq.com/monitoring.htmlhttps://www.rabbitmq.com/prometheus.html#overview-prometheus
2、使用 exporter 方式进行安装
最新 github 上提供了 exporter 最新的 docker 安装方式,安装步骤如下:
(1)rabiitmq 相关配置检查
账号要有 monitoring 角色
有 virtual host 相应的权限
有 management 插件和 15672 端口对外开放,并且启用
(2)下载 rabbitmq-exporter 镜像
配置文件修改,如果使用默认配置或者环境变量的话可以跳过此步骤,个人感觉配置文件最方便,并且是持久化的。
rabbitmq-exporter 启动,/home/admin/exporter/rabbitmq/config.json 为上述配置文件路径
network 是与 rabbitmq 在同一个网络,要保持两个 docker 之间的网络是相通的
查看 docker 启动日志, 容器名称是 rabbitmq-exporter,如果没有报错,说明连通 rabbitmq 正常,并能进行数据抓取
(3)prometheus 安装
镜像下载
新建配置文件
如下配置
docker 启动,主要同一台服务器中要在同一个网络(network)
prometheus 验证
http://服务器 ip:19090/
在 status->targets 下面 state 是否是 up 状态
在首页搜索 rabbitmq_up 值为 1 的正常
下一篇写实现 grafana 监控告警
有问题可联系
共同学习,加微信:wytwhdwdd
评论