kafka manager 是雅虎開源一個可視化的 kafka 管理工具,懶人必備。當然如果你更傾向使用命令,會顯得逼格更高,隨你。
源碼下載
編譯
解壓後,根目錄下執行以下命令編譯 (確保已安裝 Java 環境)
sbt clean dist
受網絡影響,編譯可能會花很長的時間,如果不能等可以嘗試修改 sbt 的maven 倉庫。編譯完成後,會在 target\universal 目錄下會生成一個編譯好的壓縮包
注意:sbt 如果沒有安裝,點擊下載 ,安裝成功後重新執行編譯命令
啓動 kafka manager
可以將壓縮包複製到你想存放的地方,解壓後根據你的 zookeeper 集羣地址,修改 conf\application.conf 的 kafka-manager.zkhosts 節點,比如我的測試環境 zookeeper 集羣:
kafka-manager.zkhosts="localhost:2181,localhost:2182,localhost:2183"
修改完成回到根目錄,執行以下命令,啓動成功後的默認訪問端口是 9000,也可以通過啓動參數重新配置。
請確保 kafka 集羣和 zookeeper 集羣都已啓動完成
bin\kafka-manager
默認一片空白,需要我們手動添加集羣,添加時只需要設置一下 Cluster Name 和 Cluster Zookeeper Hosts,其他配置後續根據需要再設置。根據實際環境需要,可以添加多個集羣。
添加成功後,我們可以通過可視化界面查看每個集羣的信息,如:Borker 、Topic 、Consumer、Partition 的分佈情況、Topic 副本等等,這個自己玩一下就基本知道有哪些東西了。
啓用 JMX
kafka 可以配置使用 JMX 進行運行狀態的監控。
-
修改 kafka-server-start 文件
Windows
kafka-server-start.bat 添加 set JMX_PORT=9992IF ["%KAFKA_HEAP_OPTS%"] EQU [""] ( ... set JMX_PORT=9999 )
Linux
kafka-server-start.sh 添加 export JMX_PORT="9999"if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G" export JMX_PORT="9999" fi
重啓 kafka
啓用 kafka manager 集羣的 Enable JMX Polling 設置
稍等片刻就可以看到一些指標值
總結
通過使用 kafka manager,對 kafka 的使用變得相對簡單了,比如:
- 集羣中各對象信息預覽;
- 創建 Topic,並指定分區數和副本數;
- Topic 的消費進展,延遲情況;
- 後期對 Topic 的分區數重新指定;
- 通過 Enable JMX Polling,對運行狀態的監控 ;
- ...