天天看點

Kafka三款監控工具比較(轉載)

轉自:http://top.jobbole.com/31084/

在之前的部落格中,介紹了

Kafka Web Console

這個監控工具,在生産環境中使用,運作一段時間後,發現該工具會和Kafka生産者、消費者、ZooKeeper建立大量連接配接,進而導緻網絡阻塞。并且這個Bug也在其他使用者中出現過,看來使用開源工具要慎重!該Bug暫未得到修複,不得已,隻能研究下其他同類的Kafka監控軟體。

通過研究,發現主流的三種kafka監控程式分别為:

Kafka Web Conslole

Kafka Manager

KafkaOffsetMonitor

現在依次介紹以上三種工具:

使用Kafka Web Console,可以監控:

Brokers清單

Kafka 叢集中 Topic清單,及對應的Partition、LogSiz e等資訊

點選Topic,可以浏覽對應的Consumer Groups、Offset、Lag等資訊

生産和消費流量圖、消息預覽…

Kafka三款監控工具比較(轉載)

程式運作後,會定時去讀取kafka叢集分區的日志長度,讀取完畢後,連接配接沒有正常釋放,一段時間後産生大量的socket連接配接,導緻網絡堵塞。

雅虎開源的Kafka叢集管理工具:

管理幾個不同的叢集

監控叢集的狀态(topics, brokers, 副本分布, 分區分布)

産生分區配置設定(Generate partition assignments)基于叢集的目前狀态

重新配置設定分區

Kafka三款監控工具比較(轉載)

KafkaOffsetMonitor可以實時監控:

Kafka叢集狀态

Topic、Consumer Group清單

圖形化展示topic和consumer之間的關系

圖形化展示consumer的Offset、Lag等資訊

Kafka三款監控工具比較(轉載)

總結

通過使用,個人總結以上三種監控程式的優缺點:

Kafka Web Console:監控功能較為全面,可以預覽消息,監控Offset、Lag等資訊,但存在bug,不建議在生産環境中使用。

Kafka Manager:偏向Kafka叢集管理,若操作不當,容易導緻叢集出現故障。對Kafka實時生産和消費消息是通過JMX實作的。沒有記錄Offset、Lag等資訊。

KafkaOffsetMonitor:程式一個jar包的形式運作,部署較為友善。隻有監控功能,使用起來也較為安全。

若隻需要監控功能,推薦使用KafkaOffsetMonito,若偏重Kafka叢集管理,推薦使用Kafka Manager。

因為都是開源程式,穩定性欠缺。故需先了解清楚目前已存在哪些Bug,多測試一下,避免出現類似于Kafka Web Console的問題。