Kafka專(zhuān)業(yè)監(jiān)控系統(tǒng)Kafka Eagle:支持kerberos認(rèn)證,并且對(duì)接星環(huán)TDH集群
在線(xiàn)文檔:https://ke.smartloli.org/
作者博客:http://www.rzrgm.cn/wang3680
源碼地址:https://github.com/smartloli/kafka-eagle
-
環(huán)境要求:
需要的java版本 java1.8以上版本
下載包Kafka Eagle: kafka-eagle-bin-1.4.8.tar.gz
部署到TDH集群管理節(jié)點(diǎn)中,我放置的目錄為
修改目錄 conf下面的文件system-config.properties
######################################
# multi zookeeper & kafka cluster list
######################################
kafka.eagle.zk.cluster.alias=cluster1 #定義集群別名,不要亂改,下面用的這個(gè)
cluster1.zk.list=xxxxxx:2181,xxxxxx:2181,xxxxxx:2181 #zk的地址,一般有三個(gè)
#cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181######################################
# 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.webui.port=8048######################################
# kafka offset storage
######################################
cluster1.kafka.eagle.offset.storage=zk #這里用zk,原因是TDH對(duì)應(yīng)5.2.4,下面說(shuō)原因######################################
# kafka metrics, 15 days by default
######################################
kafka.eagle.metrics.charts=true
kafka.eagle.metrics.retain=15
######################################
# kafka sql topic records max
######################################
kafka.eagle.sql.topic.records.max=5000
kafka.eagle.sql.fix.error=true######################################
# delete kafka topic token
######################################
kafka.eagle.topic.token=keadmin######################################
# kafka sasl authenticate
######################################
cluster1.kafka.eagle.sasl.enable=true
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=GSSAPI
cluster1.kafka.eagle.sasl.client=/home/kafka-eagle/kafka-eagle-web-1.4.8/conf/kafka_client_jaas.conf #對(duì)應(yīng)kafka認(rèn)證客戶(hù)端 jaas文件######################################
# kafka ssl authenticate
######################################
# kafka sqlite jdbc driver address
######################################
kafka.eagle.driver=org.sqlite.JDBC
kafka.eagle.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db #需要?jiǎng)?chuàng)建對(duì)應(yīng)的目錄
kafka.eagle.username=root
kafka.eagle.password=www.kafka-eagle.org######################################
# kafka mysql jdbc driver address
######################################
說(shuō)明:
cluster1.kafka.eagle.offset.storage=zk #這里用zk,原因是TDH對(duì)應(yīng)5.2.4,下面說(shuō)原因
給出來(lái)的官方文檔說(shuō)明有兩種方式,第一是存在zk中,第二是存到kafka中
kafka 消費(fèi)信息存儲(chǔ)位置,用來(lái)兼容kafka低版本
0.10以上的版本 一般存儲(chǔ)在kafka中
0.10以下的版本 一般存儲(chǔ)在zk中
下面是作者給出來(lái)的說(shuō)明:

經(jīng)過(guò)測(cè)試星環(huán)的TDH5.2.4對(duì)應(yīng)kafka版本為0.10.2,經(jīng)過(guò)測(cè)試存儲(chǔ)在了zk里面
# kafka sasl authenticate
######################################
cluster1.kafka.eagle.sasl.enable=true
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=GSSAPI
cluster1.kafka.eagle.sasl.client=/home/kafka-eagle/kafka-eagle-web-1.4.8/conf/kafka_client_jaas.conf #對(duì)應(yīng)kafka認(rèn)證客戶(hù)端 jaas文件
在Kafka 0.9.0.0之后,Kafka社區(qū)增加了一系列的功能,其中包含對(duì)Kafka集群進(jìn)行安全管控。支持的權(quán)限認(rèn)證方式如下:
- Broker與Client之間的權(quán)限認(rèn)證(例如Producer和Consumer)。可以使用SSL或SASL,而SASL支持如下方案:
-
- SASL/GSSAPI(Kerberos),開(kāi)始于0.9.0.0版本
- SASL/PLAIN,開(kāi)始于0.10.0.0版本
- SASL/SCRAM-SHA-256和SASL/SCRAM-SHA-512,開(kāi)始于0.10.2.0版本
- SASL/OAUTHBEARER,開(kāi)始于2.0版本
2. Broker和Zookeeper之間建立權(quán)限認(rèn)證
3. 在Broker和Client之間、Broker和Broker之間使用SSL建立權(quán)限認(rèn)證時(shí),性能會(huì)有所下降,其程度取決于CPU類(lèi)型和JVM的實(shí)現(xiàn)
4. 對(duì)Client進(jìn)行讀寫(xiě)認(rèn)證
在實(shí)際生產(chǎn)環(huán)境中,對(duì)于權(quán)限認(rèn)證使用的較多的是SCRAM認(rèn)證,其原因在《Kafka SCRAM和PLAIN實(shí)戰(zhàn)》這篇博客中詳細(xì)解釋。
kafka_client_jaas.conf 文件內(nèi)容
kafkaClient {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
keyTab="/etc/kafka1/conf/kafka.keytab"
storeKey=true
useTicketCache=false
principal="kafka/******@TDH";
};
啟動(dòng)監(jiān)控
ke.sh命令使用:
Usage: /home/kafka-eagle/kafka-eagle-web-1.4.8/bin/ke.sh {start|stop|restart|status|stats|find|gc|jdk|version|sdate}
瀏覽器訪(fǎng)問(wèn)監(jiān)控 用戶(hù)名admin 密碼123456
BScreen界面,看著高大上
以上就是部署的內(nèi)容,下次給大家?guī)?lái)監(jiān)控項(xiàng)目的具體使用方法
作者:少帥
出處:少帥的博客--http://www.rzrgm.cn/wang3680
您的支持是對(duì)博主最大的鼓勵(lì),感謝您的認(rèn)真閱讀。
本文版權(quán)歸作者所有,歡迎轉(zhuǎn)載,但請(qǐng)保留該聲明。
支付寶
微信





浙公網(wǎng)安備 33010602011771號(hào)