在線文檔:https://ke.smartloli.org/
作者博客:https://www.cnblogs.com/wang3680
源碼地址:https://github.com/smartloli/kafka-eagle
-
環境要求:
需要的java版本 java1.8以上版本
下載包Kafka Eagle: kafka-eagle-bin-1.4.8.tar.gz
部署到TDH集群管理節點中,我放置的目錄為
修改目錄 conf下面的文件system-config.properties
######################################
# multi zookeeper & kafka cluster list
######################################
kafka.eagle.zk.cluster.alias=cluster1 #定義集群別名,不要亂改,下面用的這個
cluster1.zk.list=xxxxxx:2181,xxxxxx:2181,xxxxxx:2181 #zk的地址,一般有三個
#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對應5.2.4,下面說原因######################################
# 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 #對應kafka認證客戶端 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 #需要創建對應的目錄
kafka.eagle.username=root
kafka.eagle.password=www.kafka-eagle.org######################################
# kafka mysql jdbc driver address
######################################
說明:
cluster1.kafka.eagle.offset.storage=zk #這里用zk,原因是TDH對應5.2.4,下面說原因
給出來的官方文檔說明有兩種方式,第一是存在zk中,第二是存到kafka中
kafka 消費信息存儲位置,用來兼容kafka低版本
0.10以上的版本 一般存儲在kafka中
0.10以下的版本 一般存儲在zk中
下面是作者給出來的說明:
經過測試星環的TDH5.2.4對應kafka版本為0.10.2,經過測試存儲在了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 #對應kafka認證客戶端 jaas文件
在Kafka 0.9.0.0之后,Kafka社區增加了一系列的功能,其中包含對Kafka集群進行安全管控。支持的權限認證方式如下:
- Broker與Client之間的權限認證(例如Producer和Consumer)。可以使用SSL或SASL,而SASL支持如下方案:
-
- SASL/GSSAPI(Kerberos),開始於0.9.0.0版本
- SASL/PLAIN,開始於0.10.0.0版本
- SASL/SCRAM-SHA-256和SASL/SCRAM-SHA-512,開始於0.10.2.0版本
- SASL/OAUTHBEARER,開始於2.0版本
2. Broker和Zookeeper之間建立權限認證
3. 在Broker和Client之間、Broker和Broker之間使用SSL建立權限認證時,性能會有所下降,其程度取決於CPU類型和JVM的實現
4. 對Client進行讀寫認證
在實際生產環境中,對於權限認證使用的較多的是SCRAM認證,其原因在《Kafka SCRAM和PLAIN實戰》這篇博客中詳細解釋。
kafka_client_jaas.conf 文件內容
kafkaClient {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
keyTab="/etc/kafka1/conf/kafka.keytab"
storeKey=true
useTicketCache=false
principal="kafka/******@TDH";
};
啟動監控
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}
瀏覽器訪問監控 用戶名admin 密碼123456
BScreen界面,看着高大上
以上就是部署的內容,下次給大家帶來監控項目的具體使用方法