Promethues:rocketmq_exporter初始化安装
1.背景
接前文,之前分享了node_exporter的安装,对于rocketmq而言,不仅要监控最基本的机器信息,同时也要监控rocketmq的服务可用性。常见的一些服务指标包括:producer的消息生产tps,consumer的消费tps,整个集群的broker的tps等。这里我们使用rocketmq-exporter来采集相关的信息。
2.项目
地址:https://github.com/apache/rocketmq-exporter
3.采集维度
如下是常见的一些采集维度
1)broker
如果你不使用事务的话,如下的两个指标可以看成一样的。
指标 | 指标 |
---|---|
rocketmq_broker_tps | 单个broker的tps(每秒事物处理数) |
rocketmq_broker_qps | 单个broker的qps(每秒请求处理数) |
2)producer
主要是生产相关的指标
指标 | 指标 |
---|---|
rocketmq_producer_tps | 单个topic的消息生产的TPS |
rocketmq_producer_message_size | 单个topic每秒消息生产的总数据量大小 |
rocketmq_producer_offset | 单个topic消息生产的offset |
3)Consumer Groups
主要是消费相关的指标
Name | Exposed information |
---|---|
rocketmq_consumer_tps | 单consumer组每秒消息的TPS |
rocketmq_consumer_message_size | 单consumer组每秒消息消息的总数据大小 |
rocketmq_consumer_offset | 单consumer组消息的offset |
rocketmq_group_get_latency_by_storetime | 单consumer组消息延迟(与对应topic生产的offset差值) |
这里列举的是常见的指标, 其他指标参考Github上的帮助说明
4.安装
4.1 配置
如表所示,我们需要配置就rocketmq.config.namesrvAddr和rocketmq.config.rocketmqVersion这两项。
name | Default | Description |
rocketmq.config.namesrvAddr | 127.0.0.1:9876 | 这里需要指定为实际的nameserverip |
rocketmq.config.webTelemetryPath | /metrics | 暴漏出来的metrics的path,不用修改 |
server.port | 5557 | 监听端口号,一般也不用挨 |
rocketmq.config.rocketmqVersion | V4_7_1 | 这里修改为对应rocketmq的版本,比如我使用的就是rocketmq的v4.7.1版本 |
4.2 下载项目
git clone https://github.com/apache/rocketmq-exporter cd rocketmq-exporter
4.3 编译
编译可以编译二进制版本和docker镜像
4.3.1 编译二进制
这种方式需要安装maven,执行:
mvn clean install
生成的产物为:rocketmq-exporter-0.0.2-SNAPSHOT.jar
4.3.2 编译docker镜像
这种方式依赖docker环境,需要预装docker环境,参考docker环境搭建
1)DockerFile修改(否则编译会失败,见FAQ部分)
执行:vi src/main/docker/Dockerfile,编辑为如下内容(黑体)
FROM java:8
MAINTAINER breeze
ADD rocketmq-exporter-0.0.2-SNAPSHOT.jar quickstart.jar
EXPOSE 5557
ENTRYPOINT ["java","-jar","quickstart.jar"]
2)编译docker镜像
mvn package -Dmaven.test.skip=true docker:build
3)查看docker镜像
docker images | grep rocket
5. 运行
5.1 二进制方式
1)启动
#nameserver1为实际的nameserver的ip,在/etc/hosts中配置的 nohup java -jar target/rocketmq-exporter-0.0.2-SNAPSHOT.jar --rocketmq.config.namesrvAddr=nameserver1:9876 -rocketmq.config.rocketmqVersion=V4_7_1 &
2)停止
ps aux | grep rocketmq-exporter | awk '{print $2}' | xargs kill -9
5.2 docker方式
1) 启动
#nameserver1为实际的nameserver的ip,在/etc/hosts中配置的 docker run -d --name rmq-export --net="host" -p 5557:5557 rocketmq-exporter --rocketmq.config.namesrvAddr=nameserver1:9876 -rocketmq.config.rocketmqVersion=V4_7_1
2)停止
docker stop rmq-export
5.3 查看端口号
netstat -nltp | grep 5557
博主:测试生财
座右铭:用测试完成原始积累,用投资奔向财务自由
csdn:https://blog.csdn.net/ccgshigao
- rocketmq安装与基本操作
- 第一次安装RocketMQ
- RocketMQ 安装及快速入门
- windows下RocketMQ安装部署--李波RocketMQ学习
- linux安装rocketmq
- Linux安装RocketMQ
- RocketMQ安装
- centos7 安装rocketmq
- rocketmq之windows的安装使用
- windows下安装rocketmq采坑全记录
- RocketMq学习一:RocketMq的安装
- rocketMQ - v4.0.0 - incubating集群安装
- RocketMQ安装教程
- Linux下安装zookeeper和rocketmq
- windows下RocketMQ(消息中间件)安装部署
- 阿里云上安装rocketMQ
- RocketMQ 菜鸟笔记 (二) RocketMQ 4.1.0 安装与入门实例
- CentOS 6.8 minimal版本安装RocketMQ集群
- centos 安装alibaba-rocketmq
- linux下安装rocketmq web界面