Promethues:rocketmq_exporter初始化安裝


1.背景

接前文,之前分享了node_exporter的安裝,對於rocketmq而言,不僅要監控最基本的機器信息,同時也要監控rocketmq的服務可用性。常見的一些服務指標包括:producer的消息生產tps,consumer的消費tps,整個集群的broker的tps等。這里我們使用rocketmq-exporter來采集相關的信息。

2.項目

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

博主:測試生財(一個不為996而996的測開碼農)

座右銘:專注測試開發與自動化運維,努力讀書思考寫作,為內卷的人生奠定財務自由。

內容范疇:技術提升,職場雜談,事業發展,閱讀寫作,投資理財,健康人生。

csdn:https://blog.csdn.net/ccgshigao

博客園:https://www.cnblogs.com/qa-freeroad/

51cto:https://blog.51cto.com/14900374

微信公眾號:測試生財(定期分享獨家內容和資源)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM