apache kafka監控系列-KafkaOffsetMonitor

五柳-先生發表於2017-02-04

概覽

最近kafka server訊息服務上線了,基於jmx指標引數也寫到zabbix中了,但總覺得缺少點什麼東西,視覺化可操作的介面。zabbix中資料比較分散,不能集中看整個叢集情況。或者一個cluster中broker列表,自己寫web-console比較耗時耗力,用原型工具畫了一些管理介面東西,關鍵自己也不前端方面技術,這方面比較薄弱。這不開源社群提供了kafka的web管理平臺KafkaOffsetMonitor.就迅速拿過來執行。大家不要著急,馬上娓娓道來。

說明:

這個應用程式來實時監控你kafka服務的consumer以及他們在partition中的offset(偏移)。 

你可以瀏覽當前的消費者組,每個topic的所有partition的消費情況都可以一覽無餘。這其實是很有用得,從這裡你很快知道每個partition的message是否很快被消費(沒有阻塞)。他能指導你(kafka producer和consumer)優化程式碼。

這個web管理平臺保留的partition offset和consumer滯後的歷史資料,所以你可以很輕易瞭解這幾天consumer消費情況。 

KafkaOffsetMonitor功能:

1.從標題都可以看出來,Kafka Offset Monitor,是對consumer消費情況進行監控,並能列出每個consumer offset,滯後資料。

2.消費者組列表

3.每個topic的所有parition列表(topic,pid,offset,logSize,lag,owner)

4.檢視topic的歷史消費資訊.

雖然功能覆蓋面不全,但是很實用。

1.下載

github官網下載

KafkaOffsetMonitor

百度雲下載(網速快)

百度雲KafkaOffsetMonitor下載

說明:百度雲下載為修改版本,因為KafkaOffsetMonitor中有些資原始檔(css,js)是訪問外網的,特別是有訪問google資源,大家都懂的,經常不能訪問。建議下載修改版

2.安裝

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的根目錄,需要手工建立,也可以不設定

3.執行

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

6 演示截圖:

消費者組列表


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

相關文章