最近kafka server消息服務上線了,基於jmx指標參數也寫到zabbix中了,但總以爲缺乏點什麼東西,可視化可操做的界面。zabbix中數據比較分散,不能集中看整個集羣狀況。或者一個cluster中broker列表,本身寫web-console比較耗時耗力,用原型工具畫了一些管理界面東西,關鍵本身也不前端方面技術,這方面比較薄弱。這不開源社區提供了kafka的web管理平臺KafkaOffsetMonitor.就迅速拿過來運行。你們不要着急,立刻娓娓道來。css
這個應用程序來實時監控你kafka服務的consumer以及他們在partition中的offset(偏移)。 前端
你能夠瀏覽當前的消費者組,每一個topic的全部partition的消費狀況均可以盡收眼底。這實際上是頗有用得,從這裏你很快知道每一個partition的message是否很快被消費(沒有阻塞)。他能指導你(kafka producer和consumer)優化代碼。java
這個web管理平臺保留的partition offset和consumer滯後的歷史數據,因此你能夠很輕易瞭解這幾天consumer消費狀況。 git
1.從標題均可以看出來,Kafka Offset Monitor,是對consumer消費狀況進行監控,並能列出每一個consumer offset,滯後數據。github
2.消費者組列表web
3.每一個topic的全部parition列表(topic,pid,offset,logSize,lag,owner)vim
4.查看topic的歷史消費信息.bash
雖然功能覆蓋面不全,可是很實用。app
github官網下載工具
百度雲下載(網速快)
說明:百度雲下載爲修改版本,由於KafkaOffsetMonitor中有些資源文件(css,js)是訪問外網的,特別是有訪問google資源,你們都懂的,常常不能訪問。建議下載修改版
KafkaOffsetMonitor運行比較簡單,由於全部運行文件,資源文件,jar文件都打包到KafkaOffsetMonitor-assembly-0.2.0.jar了,直接運行就能夠,這種方式太棒了。既不用編譯也不用配置,呵呵,也不是絕對不配置。
a.新建一個目錄kafka-offset-console,而後把jar拷貝到該目錄下.
b.新建腳本,由於您可能不是一個kafka集羣。用腳本能夠啓動多個
lizhitao@users-MacBook-Pro: vim mobile_start_en.sh
#!/bin/bash
java -Xms512M -Xmx512M -Xss1024K -XX:PermSize=256m -XX:MaxPermSize=512m -cp KafkaOffsetMonitor-assembly-0.2.0.jar \
com.quantifind.kafka.offsetapp.OffsetGetterWeb \
--zk 192.168.2.101:2181,192.168.2.102:2182,192.168.2.103:2181/config/mobile/xxx \
--port 8086 \
--refresh 10.seconds \
--retain 7.days 1>mobile-logs/stdout.log 2>mobile-logs/stderr.log &
注意:/config/mobile/xxx 表示zk的根目錄,須要手工建立,也能夠不設置
lizhitao@users-MacBook-Pro: chmod +x mobile_start_en.sh
lizhitao@users-MacBook-Pro: ./mobile_start_en.sh
serving resources from: jar:file:/opt/xxx/kafka-offset-console/KafkaOffsetMonitor-assembly-0.2.0.jar!/offsetapp
消費者組列表
topic的全部partiton消費狀況列表
以上圖中參數含義解釋以下:
topic:建立時topic名稱
partition:分區編號
offset:表示該parition已經消費了多少條message
logSize:表示該partition已經寫了多少條message
Lag:表示有多少條message沒有被消費。
Owner:表示消費者
Created:該partition建立時間
Last Seen:消費狀態刷新最新時間。
kafka正在運行的topic
kafka集羣中topic列表
kafka集羣中broker列表
請註明轉載自:http://blog.csdn.net/lizhitao/article/details/27199863