不想經過kafka shell來管理kafka已建立的topic信息,想經過管理頁面來統一管理和查看kafka集羣。因此選擇了大部分人使用的kafka manager,我一共有一臺主機master和三臺節點slave1,slave2,slave3,一共有三個zookeeper server和三個kafka broker,分別在master,slave1,slave2。因此我把kafka manager安裝在了slave3的服務器上面。java
至於JMX是什麼,能夠本身百度一下。啓動JMX主要是爲了kafka manger能夠經過JMX端口來監聽kafka的狀態等。kafka啓動的時候是沒有啓動JMX的,因此須要去修改kafka的啓動腳本,來使kafka啓動的時候啓動JMX。git
[root@master ~]# cd /usr/hdp/current/kafka-broker/bin/ [root@master ~]# vi kafka-server-start.sh #添加下面標紅的代碼到指定位置 if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G" export JMX_PORT="9999" fi
上面的操做須要在三臺kafka集羣上都要操做,修改完之後經過頁面,重啓全部的kafka集羣。而後再到master,slave1,slave2上查看9999端口是否啓用github
[root@master bin]# lsof -i:9999 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 55123 kafka 90u IPv6 76911524 0t0 TCP *:distinct (LISTEN)
一、安裝sbt編譯環境shell
[root@master ~]# curl https://bintray.com/sbt/rpm/rpm |tee /etc/yum.repos.d/bintray-sbt-rpm.repo [root@master ~]# yum install sbt
二、下載kafka-manager服務器
訪問網址https://github.com/yahoo/kafka-manager/releases下載最新版的kafka-manager,而後解壓、編譯。app
[root@slave3 ~]# cd kafka-manager-1.3.3.17 [root@slave3 kafka-manager-1.3.3.17]# sbt clean dist
編譯完之後,生成的包會在kafka-manager/target/universal 下面。生成的包只須要java環境就能夠運行了,在部署的機器上不須要安裝sbt。curl
三、複製編譯好的壓縮包,在須要部署的kafka機器上解壓便可url
[root@slave3 kafka-manager-1.3.3.17]# cp target/universal/kafka-manager-1.3.3.17.zip /usr/hdp/2.6.3.0-235/ [root@slave3 kafka-manager-1.3.3.17]# cd /usr/hdp/2.6.3.0-235/ [root@slave3 2.6.3.0-235]# unzip kafka-manager-1.3.3.17.zip
四、修改application.conf,把kafka-manager.zkhosts改成本身的zookeeper服務器地址spa
[root@slave3 2.6.3.0-235]# cd kafka-manager-1.3.3.17 [root@slave3 kafka-manager-1.3.3.17]# vi conf/application.conf #修改的代碼 kafka-manager.zkhosts="master:2181,slave1:2181,slave2:2181"
五、啓動.net
[root@slave3 kafka-manager-1.3.3.17]# nohup bin/kafka-manager -Dconfig.file=conf/application.conf &
默認http端口是9000,能夠經過命令行參數傳遞:./kafka-manager -Dhttp.port=9001
六、訪問
訪問地址 http://slave3:9000
建立kafka集羣的名稱,點擊Add Cluster來進行建立,cluster name爲kafka集羣的別名自定義,zookeeper hosts填寫master:2181,slave1:2181,slave2:2181。kafka version選擇ambari版本里面相應的kafka版本。勾選具體配置是除開JMX with SSL不勾選,其他的所有勾選。
而後點擊save就能夠了。
七、在kafka manager裏面刪除topic的時候發現刪除不了,可是topic的名稱變成了紅色。而後我修改了ambari裏面kafka的delete.topic.enable的參數爲true。而後就能夠正常的刪除topic了。至於剛纔的仍是紅色test已經無法刪除了,參考 https://blog.csdn.net/fengzheku/article/details/50585972 來對zookeeper上面的數據進行刪除就能夠了。