网站首页 > 技术文章 正文
概述
Prometheus 服务本地已经启动了,接下来,需要安装并运行 Exporter,它的主要作用是持续输出监控的组件信息并格式化,同时提供 Http 接口供 Prometheus 服务来抓取。Exporter 也是通过 GO 语言编写的,Prometheus GitHub 已经为我们提供了很多实用的 Exporter,直接拿来使用即可。
下面介绍下怎么用prometheus去监控rabbitMQ服务。
一、安装go语言环境
由于Prometheus 是用golang开发的,所以首先安装一个go环境,Go语言是跨平台,支持Windows、Linux、Mac OS X等系统,还提供有源码,可编译安装。
下载地址:https://studygolang.com/dl
1、解压
# tar -xvf go1.13.linux-amd64.tar.gz -C /usr/local/
2、配置环境变量
echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile source /etc/profile
3、测试
验证一下是否成功,用go version 来验证
# go version
二、docker部署rabbitmq服务
1、获取rabbitmq镜像
docker pull rabbitmq:3.6.15-management
2、创建容器
docker run -d --hostname my-rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin \ -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 rabbitmq:3.6.15-management #15672:控制台端口号 #5672:应用访问端口号 #rabbitmq:3.6.15-management 安装rbbitmq指定版本,带-management是带管理界面
3、访问MQ
http://服务器IP:15672
三、安装rabbitmq_exporter
1、下载rabbitmq_exporter
wget https://github.com/kbudde/rabbitmq_exporter/releases/download/v1.0.0-RC6.1/rabbitmq_exporter-1.0.0-RC6.1.linux-amd64.tar.gz
2、上传解压
上传到被监控的主机并解压
# tar -xvf rabbitmq_exporter-1.0.0-RC6.1.linux-amd64.tar.gz -C /usr/local/
3、启动Exporter
需要配置一下认证信息并启动 Exporter:
export RABBIT_USER=admin export RABBIT_PASSWORD=admin export OUTPUT_FORMAT=JSON export PUBLISH_PORT=9099 export RABBIT_URL=http://localhost:15672 nohup ./rabbitmq_exporter &
4、测试访问
此时,本地浏览器访问 http://服务器ip:9099/metrics 可以看到 MQ 相关的所有监控指标列表。
四、关联Prometheus
Prometheus 和rabbitmq_exporter 服务都已经启动起来了,那么接下来就需要将二者关联起来,让 Prometheus 来定时抓取 Exporter 提供的数据。我们需要修改 Prometheus 的配置文件 prometheus.yml 增加 rabbitmq 相关 exporter job。
- job_name: RabbitMQ static_configs: - targets: ['172.16.10.123:9099'] labels: instance: docker_rabbitmq
重启容器,隔一会查看targets:
四、grafana配置
1、下载dashboard
在 https://grafana.com/dashboards?search=rabbitmq 下载mq相关的dashboard,但是上边提供的dashboard效果不一定好,可以根据需要自己配.
下载地址:https://grafana.com/dashboards/2121
2、导入json
3、展示
后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下!
猜你喜欢
- 2024-09-24 RabbitMQ宕机后,消息100%不会丢失吗
- 2024-09-24 非常强悍的 RabbitMQ 总结,写得真好
- 2024-09-24 「服务器」RabbitMQ入门教程——简介及工作原理
- 2024-09-24 在 WebApi 项目中快速开始使用 RabbitMQ
- 2024-09-24 RabbitMQ使用延迟插件,代码量直接降一半?
- 2024-09-24 RabbitMQ 高可用之镜像队列
- 2024-09-24 k8s上创建高可用RabbitMQ集群
- 2024-09-24 Centos7部署RabbitMQ的镜像队列集群
- 2024-09-24 docker分布式部署rabbitmq高可用集群
- 2024-09-24 详解如何用zabbix来监控rabbitmq消息队列服务
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)