kafka-eagle監(jiān)控界面搭建

一、背景

上一節(jié)中,我們搭建了一個kafka集群,但是kafka集群在運行的過程中會產(chǎn)生各種數(shù)據(jù),比如broker信息、集群信息、主題信息、消費者信息等等,而kafka自身沒有提供一個圖形化的監(jiān)控界面,此處我們使用kafka-eagle來搭建一個kafka的管理監(jiān)控界面。

二 、mac上安裝kafka-eagle

1、安裝JDK

2、安裝eagle

1、下載eagle

下載eagle

下載鏈接:http://download.kafka-eagle.org/

2、解壓并配置環(huán)境變量

1、解壓

tar -zxvf kafka-eagle-bin-2.0.3.tar.gz && cd kafka-eagle-bin-2.0.3 && tar -zxvf kafka-eagle-web-2.0.3-bin.tar.gz

2、重命名

mv kafka-eagle-web-2.0.3 kafka-eagle  

3、配置環(huán)境變量

vim /etc/profile
export KE_HOME=/Users/huan/soft/kafka/kafka-eagle
export PATH=$PATH:$KE_HOME/bin

source /etc/profile
cd ${KE_HOME}/bin
chomd +x ke.sh

KE_HOMEeagle環(huán)境變量的名字。

3、啟用kafka的JMX

此配置是可選的,放開可以看到更多的監(jiān)控信息。
1、cd ${KAFKA_HOME}/bin
2、vim kafka-server-start.sh

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    # export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
    export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
    export JMX_PORT="9099"
fi

JMX_PORT 的端口可以給個沒有占用的端口既可。

4、配置eagle

1、cd ${KE_HOME}/conf
2、vim system-config.properties

######################################
# multi zookeeper & kafka cluster list
# 設(shè)置kafka的多集群,此處只需要給zk的地址既可
######################################
kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=localhost:2181,localhost:3181,localhost:4181

######################################
# zookeeper enable acl
######################################
cluster1.zk.acl.enable=false
cluster1.zk.acl.schema=digest
cluster1.zk.acl.username=test
cluster1.zk.acl.password=test123

######################################
# broker size online list
######################################
cluster1.kafka.eagle.broker.size=20

######################################
# zk client thread limit
######################################
kafka.zk.limit.size=25

######################################
# kafka eagle webui port
# kafka eagle 的前端訪問端口
######################################
kafka.eagle.webui.port=9090

######################################
# kafka jmx acl and ssl authenticate
######################################
cluster1.kafka.eagle.jmx.acl=false
cluster1.kafka.eagle.jmx.user=keadmin
cluster1.kafka.eagle.jmx.password=keadmin123
cluster1.kafka.eagle.jmx.ssl=false
cluster1.kafka.eagle.jmx.truststore.location=/Users/dengjie/workspace/ssl/certificates/kafka.truststore
cluster1.kafka.eagle.jmx.truststore.password=ke123456

######################################
# kafka offset storage
# kafka集群的offset保存的位置,0.10及以后的kafka集群是保存在kafka中,之前的是保存在zookeeper中
######################################
cluster1.kafka.eagle.offset.storage=kafka

######################################
# kafka metrics, 15 days by default
# 開啟性能監(jiān)控,數(shù)據(jù)默認(rèn)保存的天數(shù)
######################################
kafka.eagle.metrics.charts=true
kafka.eagle.metrics.retain=15

######################################
# kafka sql topic records max
######################################
kafka.eagle.sql.topic.records.max=5000

######################################
# delete kafka topic token
# 刪除kafka topic 時,需要輸入的token值
######################################
kafka.eagle.topic.token=keadmin

######################################
# kafka sasl authenticate
######################################
cluster1.kafka.eagle.sasl.enable=false
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=SCRAM-SHA-256
cluster1.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle";
cluster1.kafka.eagle.sasl.client.id=
cluster1.kafka.eagle.blacklist.topics=
cluster1.kafka.eagle.sasl.cgroup.enable=false
cluster1.kafka.eagle.sasl.cgroup.topics=
cluster2.kafka.eagle.sasl.enable=false
cluster2.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster2.kafka.eagle.sasl.mechanism=PLAIN
cluster2.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle";
cluster2.kafka.eagle.sasl.client.id=
cluster2.kafka.eagle.blacklist.topics=
cluster2.kafka.eagle.sasl.cgroup.enable=false
cluster2.kafka.eagle.sasl.cgroup.topics=

######################################
# kafka ssl authenticate
######################################
cluster3.kafka.eagle.ssl.enable=false
cluster3.kafka.eagle.ssl.protocol=SSL
cluster3.kafka.eagle.ssl.truststore.location=
cluster3.kafka.eagle.ssl.truststore.password=
cluster3.kafka.eagle.ssl.keystore.location=
cluster3.kafka.eagle.ssl.keystore.password=
cluster3.kafka.eagle.ssl.key.password=
cluster3.kafka.eagle.blacklist.topics=
cluster3.kafka.eagle.ssl.cgroup.enable=false
cluster3.kafka.eagle.ssl.cgroup.topics=

######################################
# kafka sqlite jdbc driver address
######################################
#kafka.eagle.driver=org.sqlite.JDBC
#kafka.eagle.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db
#kafka.eagle.username=root
#kafka.eagle.password=www.kafka-eagle.org

######################################
# kafka mysql jdbc driver address
# eagle數(shù)據(jù)保存的數(shù)據(jù)庫,此處使用mysql
######################################
kafka.eagle.driver=com.mysql.jdbc.Driver
kafka.eagle.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
kafka.eagle.username=root
kafka.eagle.password=root

5、啟動 eagle

ke.sh start
eagle啟動界面

eagle訪問首頁

三、ke.sh的用法

命令 解釋
ke.sh start 啟動eagle
ke.sh stop 停止eagle
ke.sh restart 重新啟動eagle
ke.sh status 查看eagle的狀態(tài)

四、參考文檔

1、eagle下載鏈接
2、mac或linux上安裝kafka-eagle
3、window上安裝kafka-eagle
4、kafka-eagle的配置屬性
5、KSQL的使用

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容