一、kafka-manager簡介
項目地址為:https://github.com/yahoo/kafka-manager
為了簡化開發者和服務工程師維護Kafka集群的工作,yahoo構建了一個叫做Kafka管理器的基於Web工具,叫做 Kafka Manager。這個管理工具可以很容易地發現分布在集群中的哪些topic分布不均勻,或者是分區在整個集群分布不均勻的的情況。它支持管理多個集群、選擇副本、副本重新分配以及創建Topic。同時,這個管理工具也是一個非常好的可以快速瀏覽這個集群的工具,有如下功能:
- 管理kafka集群
- 方便集群狀態監控 (包括topics, consumers, offsets, brokers, replica distribution, partition distribution)
- 方便選擇分區副本
- 配置分區任務,包括選擇使用哪些brokers
- 可以對分區任務重分配
- 提供不同的選項來創建及刪除topic
- Topic list會指明哪些topic被刪除
- 批量產生分區任務並且和多個topic和brokers關聯
- 批量運行多個主題對應的多個分區
- 向已經存在的主題中添加分區
- 對已經存在的topic修改配置
- 可以在broker level和topic level的度量中啟用JMX polling功能
- 可以過濾在ZK上沒有ids/ owners/offsets/ directories的consumer
二、下載kafka-manager源碼包
源碼包下載地址:https://github.com/yahoo/kafka-manager/archive/2.0.0.2.tar.gz
github上沒有提供安裝包,需要我們自行編譯之后在進行安裝,需要現在sbt編譯工具。
再此我已經編譯好安裝包了kafka-manager-2.0.0.2.zip,可以直接下載使用:https://pan.baidu.com/s/10hiEuECfZ6UuI4yIY1dluw
關注微信公眾號回復【卡夫卡】或者【kafka manager】獲取提取碼
看到我這篇文章,就不要去編譯,沒意思還浪費時間,直接從百度網盤鏈接下載編譯好的安裝包就行了,編譯步驟參考一下就行了。
三、安裝sbt-1.3.5
因為Kafka-manager使用的Play框架,為了編譯的速度更快,先配置sbt的maven倉庫,由於默認倉庫速度較慢,因此使用aliyun提供的maven倉庫。
修改倉庫地址:(sbt 默認下載庫文件很慢, 還時不時被打斷,不行的話就重試),我們可以在用戶目錄下創建 touch ~/.sbt/repositories, 填上阿里雲的鏡像 # vi ~/.sbt/repositories
內容:
以上配置文件解釋順序是:本地→阿里雲鏡像→jcenter→typesafe-ivy-releases→Maven主鏡像。如果需要添加公司的maven鏡像,可以按照 key: value 的形式添加,key 的命名沒有要求(暫時沒注意到,但是最好也不要用什么特殊符號吧)
驗證:檢查sbt是否安裝成功,查看命令輸出,發現已經成功可以從maven.aliyun.com/nexus
下載到依賴即表示成功
需要很長時間~耐心等待,我這里已經執行過了,再次執行顯示如下:
四、解壓編譯kafka-manager源碼包
在【二、下載kafka-manager源碼包】步驟中我們已經已下載了源碼包,
解壓kafka-manager源碼包:
解壓后顯示目錄如下
然后執行:
編譯時間會很長,需要耐心等待,可以到~/.sbt/boot/update.log 查看sbt更新日志。sbt更新好,就開始下載各種jar包,最后看到:[info] Your package is ready in /home/soft/kafka-manager-2.0.0.2/target/universal/kafka-manager-2.0.0.2.zip 證明編譯好了。
我這個已經編譯過了,由於記錄筆記,我再次進行了編譯就很快了,日志如下:
五、安裝kafka-manager
由於使用kafka-manager是在JDK8基礎上的,所以先安裝JDK8,JDK安裝不再敘述。
由於【四、解壓編譯kafka-manager源碼包】步驟已經編譯完成,我們可以把 /home/soft/kafka-manager-2.0.0.2/target/universal/kafka-manager-2.0.0.2.zip 的安裝包移動到你要安裝的地方解壓。
在此我解壓到/usr/local/目錄下
解壓后查看目錄如下:
接下來就是配置kafka-manager了
想要看到讀取,寫入速度需要開啟JMX,修改kafka-server-start.sh 添加一行即可:添加JMX端口8999
注意:每個kafka broker都需要修改,修改后進行重啟kafka。
最后,啟動kafka-manager
六、測試kafka-manager
訪問:http://192.168.184.133:9090/
1、新建Cluster
點擊【Cluster】>【Add Cluster】打開如下添加集群配置界面:輸入集群的名字(如KafkaCluster
)和 Zookeeper 服務器地址(如192.168.184.133:2181/kafka
),選擇最接近的Kafka版本
其他broker的配置可以根據自己需要進行配置,默認情況下,點擊【保存】時,會提示幾個默認值為1
的配置錯誤,需要配置為>=2
的值。提示如下。
添加完集群之后查看
topics相關:
更多頁面功能自己點點就行了。。。
更多信息查看github上kafka-manager的README.md:https://github.com/yahoo/kafka-manager/blob/master/README.md