一款Kafka可視化Web界面管理工具:CMAK
使用過KafKa集群的人都知道,要記住KafKa的命令對于新手確實比較難,所以一般都會尋找能在頁面操作的管理工具。
今天跟大家介紹其中一款可視化Web界面管理工具,它就是kafka-manager,不過現(xiàn)在更名為CMAK。
kafka-manager管理工具簡介
它最早由雅虎開源,功能非常齊全,展示的數(shù)據(jù)非常豐富。同時用戶能夠在界面上執(zhí)行一些簡單的集群管理操作。
不過雅虎已經(jīng)將其更名為CMAK(Cluster Manager for Apache Kafka)。
CMAK支持的功能
- 管理多個集群
- 輕松檢查集群狀態(tài)(主題,消費者,偏移,代理,副本分發(fā),分區(qū)分發(fā))
- 運行首選副本選舉
- 使用選項生成分區(qū)分配以選擇要使用的代理
- 運行分區(qū)重新分配(基于生成的分配)
- 使用可選主題配置創(chuàng)建主題(0.8.1.1具有與0.8.2+不同的配置)
- 刪除主題(僅支持0.8.2+并記住在代理配置中設置delete.topic.enable = true)
- 主題列表現(xiàn)在指示標記為刪除的主題(僅支持0.8.2+)
- 批量生成多個主題的分區(qū)分配,并可選擇要使用的代理
- 批量運行重新分配多個主題的分區(qū)
- 將分區(qū)添加到現(xiàn)有主題
- 更新現(xiàn)有主題的配置
- 選擇性為 broker level and topic level metrics 開放JMX polling
- 選擇性過濾掉在zookeeper中沒有ids|owners|offsets|directories的消費者
下面跟大家分享下如何部署安裝這款管理工具。
CMAK管理工具支持的范圍
- 支持 Kafka 0.8以上版本
- Java 11+
- zookeeper必須是3.5+版本。
可能有些會說要求這么多,還涉及zookeeper版本,那么你可以選擇Kafka-manager的舊版本,比如1.3.3.23版本。
普通用戶配置Java11環(huán)境
需要提前下載Java11壓縮包,解壓到指定位置。
這里我進行了如下配置:
- $ vim ~/.bash_profile
- export JAVA_HOME=$HOME/3rd/jdk-11.0.4
- export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- export PATH=$JAVA_HOME/bin:$PATH
生效環(huán)境變量
- $ source ~/.bash_profile
驗證是否生效,如果顯示是你部署的jdk目錄路徑,那么就生效成功了。
- $ which java
- ~/3rd/jdk-11.0.4/bin/java
普通用戶下載安裝包
官網(wǎng)地址:https://github.com/yahoo/CMAK
這里以3.0.0.5版本為例,進行下載。
- $ wget https://github.com/yahoo/CMAK/releases/download/3.0.0.5/cmak-3.0.0.5.zip
解壓安裝包,并進入解壓后的目錄。
- $ unzip cmak-3.0.0.5.zip$ cd cmak-3.0.0.5
修改配置文件application.conf
- $ vim cmak-3.0.0.5/conf/application.conf
用上面的命令編輯打開文件,將下面的兩個配置項配置成你實際的kafka集群對應的zookeeper地址。
- kafka-manager.zkhosts="kafka-manager-zookeeper:2181"
- cmak.zkhosts="kafka-manager-zookeeper:2181"
啟動服務
默認使用9000端口,如果端口占用,可以通過參數(shù)指定端口。
- $ bin/cmak -Dconfig.file=conf/application.conf -Dhttp.port=9001
效果圖
- 點擊上圖的“Add Cluster"進入添加集群向?qū)А?/li>
- 配置要管理的Kafka集群信息
注意:如果需要管理監(jiān)控的Kafka集群已經(jīng)開啟JMX_PORT,那么就可以勾選額外藍色的選項,否則不要勾選,按照默認的不勾選即可。
如果有報錯內(nèi)容是這個:
- Yikes! KeeperErrorCode = Unimplemented for /kafka-manager/mutex Try again.
那么你需要升級zookeeper到3.5+版本。
3.創(chuàng)建成功后,你就可以看到你的Kafka信息。
結(jié)束語
通過這個管理工具,我們可以進行Topic(主題)、分區(qū)等操作,不再需要通過命令行去調(diào)用Kafka集群獲取信息,提高我們的效率。
補充一句:我之前一直用的是kafka-manager/archive/1.3.3.23.tar.gz的壓縮包,新版本部署后效果是一樣的。如果你所部署的kafka集群不支持最新CMAK的要求,可以下載1.3.3.23.tar.gz版本試試。