KafkaOffsetMonitor監控


介紹

  KafkaOffsetMonitor是有由Kafka開源社區提供的一款Web管理界面,這個應用程序用來實時監控Kafka服務的Consumer以及它們所在的Partition中的Offset,你可以通過瀏覽當前的消費者組,並且每個Topic的所有Partition的消費情況都可以觀看的一清二楚。它讓我們很直觀的知道,每個Partition的Message是否消費掉,有木有阻塞等等。

  這個Web管理平台保留的Partition、Offset和它的Consumer的相關歷史數據,我們可以通過瀏覽Web管理的相關模塊,清楚的知道最近一段時間的消費情況。

  該Web管理平台有以下功能:

  1.Consumer的消費監控,並列出每個ConsumerOffset數據

  2.保護消費者組列表信息

  3.每個Topic的所有Partition列表包含:TopicPidOffsetLogSizeLag以及Owner等等

  4.瀏覽查閱Topic的歷史消費信息

下載

  GitHub上面有源碼的jar包,放到對應的目錄就可以了,由於我們使用新版本的kafka,所以也要使用最新的代碼,在kafka中國社區可以下載最新的0.3的版本。地址:http://pan.baidu.com/s/1kUZJrCV

安裝部署

  KafkaOffsetMonitor的安裝部署較為簡單,所有的資源都打包到一個JAR文件中了,因此,直接運行即可,省去了我們去配置。這里我們可以新建一個目錄單獨用於Kafka的監控目錄,我這里新建一個kafka_monitor文件目錄,然后我們在准備啟動腳本

腳本內容如下所示:

java -cp KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar                 
  com.quantifind.kafka.offsetapp.OffsetGetterWeb   --offsetStorage kafka   --zk localhost:2181   --port 7070   --refresh 10.seconds   --retain 2.days
 
啟動方式2,創建腳本,因為您可能不是一個kafka集群。用腳本可以啟動多個。
nohup java -Xms512M -Xmx512M -Xss1024K -XX:PermSize=256m -XX:MaxPermSize=512m 
    -cp KafkaOffsetMonitor-assembly-0.3.0-SNAPSHOT.jar     
    com.quantifind.kafka.offsetapp.OffsetGetterWeb --offsetStorage kafka --zk 127.0.0.1:2181 --port 8080 --refresh 10.seconds --retain 2.days 1>mobile-logs/stdout.log 2>mobile-logs/stderr.log &

 

各個參數的含義:
  • offsetStorage:有效的選項是"zookeeper","kafka","storm"。0.9版本以后,offset存儲的位置在kafka。
  • zk: zookeeper的地址
  • prot 端口號
  • refresh 刷新頻率,更新到DB。
  • retain 保留DB的時間
  • dbName 在哪里存儲記錄(默認'offsetapp')

啟動

  • 步驟1:啟動ZK(集群配置依次啟動)
  • 步驟2:啟動Kafka服務(詳情見kakfa環境搭建文檔)
  • 步驟3:啟動Web監控服務(按照安裝部署腳本執行)

運行

消費組列表

 

 

 

 

 

 

消費組Topic列表

 

 

 

 

 

 

 

 

 

 

 

topic的歷史位置


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Offset存儲位置

  kafka能靈活地管理offset,可以選擇任意存儲和格式來保存offset。KafkaOffsetMonitor目前支持以下流行的存儲格式。

  • kafka0.8版本以前,offset默認存儲在zookeeper中(基於Zookeeper)
  • kafka0.9版本以后,offset默認存儲在內部的topic中(基於Kafka內部的topic)
  • Storm Kafka Spout(默認情況下基於Zookeeper)

  KafkaOffsetMonitor每個運行的實例只能支持單一類型的存儲格式。

 


免責聲明!

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



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