1.概述
最近有同學留言,關於Kafka Eagle的一些使用問題。今天筆者就爲大家來詳細介紹Kafka Eagle 3.0.1的功能以及使用方法。
2.內容
在3.0.1版本中,EFAK優化了分佈式模式的服務性能,減少了磁盤IO和網絡IO的操作次數,提升了內存和CPU的使用率。下面,我們就來看看3.0.1的相關功能。
2.1 基礎環境
部署EFAK所需要的基礎環境如下:
2.2.1 硬件和操作系統
- 操作系統:Linux系統即可(Ubuntu、CentOS等)
- JDK:JDK8以上
- CPU:1核以上
- 內存:2GB以上
2.2.2 EFAK安裝包
EFAK安裝包,目前官網上以及發佈了最新的v3.0.1版本,支持分佈式模式部署。可以直接下載到Linux服務器進行安裝和部署使用。如果需要自行編譯部署,可以到Github下載源代碼進行編譯部署:
- 方式一:官網下載v2.0.9安裝包
- 方式二:Github下載源代碼,參考README說明進行編譯
2.2 安裝部署
2.2.3 配置EFAK系統文件
cd ${KE_HOME}/conf vi system-config.properties # Multi zookeeper&kafka cluster list -- The client connection address of the Zookeeper cluster is set here efak.zk.cluster.alias=cluster1,cluster2 cluster1.zk.list=tdn1:2181,tdn2:2181,tdn3:2181 cluster2.zk.list=xdn1:2181,xdn2:2181,xdn3:2181 # Add zookeeper acl cluster1.zk.acl.enable=false cluster1.zk.acl.schema=digest cluster1.zk.acl.username=test cluster1.zk.acl.password=test123 # Kafka broker nodes online list cluster1.efak.broker.size=10 cluster2.efak.broker.size=20 # Zkcli limit -- Zookeeper cluster allows the number of clients to connect to # If you enable distributed mode, you can set value to 4 or 8 kafka.zk.limit.size=16 # EFAK webui port -- WebConsole port access address efak.webui.port=8048 ###################################### # EFAK enable distributed ###################################### efak.distributed.enable=false # master worknode set status to master, other node set status to slave efak.cluster.mode.status=slave # deploy efak server address efak.worknode.master.host=localhost efak.worknode.port=8085 # Kafka offset storage -- Offset stored in a Kafka cluster, if stored in the zookeeper, you can not use this option cluster1.efak.offset.storage=kafka cluster2.efak.offset.storage=kafka # Whether the Kafka performance monitoring diagram is enabled efak.metrics.charts=false # EFAK keeps data for 30 days by default efak.metrics.retain=30 # If offset is out of range occurs, enable this property -- Only suitable for kafka sql efak.sql.fix.error=false efak.sql.topic.records.max=5000 # Delete kafka topic token -- Set to delete the topic token, so that administrators can have the right to delete efak.topic.token=keadmin # Kafka sasl authenticate cluster1.efak.sasl.enable=false cluster1.efak.sasl.protocol=SASL_PLAINTEXT cluster1.efak.sasl.mechanism=SCRAM-SHA-256 cluster1.efak.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="admin" password="admin-secret"; # If not set, the value can be empty cluster1.efak.sasl.client.id= # Add kafka cluster cgroups cluster1.efak.sasl.cgroup.enable=false cluster1.efak.sasl.cgroup.topics=kafka_ads01,kafka_ads02 cluster2.efak.sasl.enable=true cluster2.efak.sasl.protocol=SASL_PLAINTEXT cluster2.efak.sasl.mechanism=PLAIN cluster2.efak.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="admin-secret"; cluster2.efak.sasl.client.id= cluster2.efak.sasl.cgroup.enable=false cluster2.efak.sasl.cgroup.topics=kafka_ads03,kafka_ads04 # Default use sqlite to store data efak.driver=org.sqlite.JDBC # It is important to note that the '/hadoop/kafka-eagle/db' path must be exist. efak.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db efak.username=root efak.password=smartloli # (Optional) set mysql address #efak.driver=com.mysql.jdbc.Driver #efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull #efak.username=root #efak.password=smartloli
2.2.2 具體詳細內容
訪問官網的DOCS目錄,如下圖所示:
3.功能預覽
在3.0.1中,提供了新的分佈式模式功能、數據TV大屏、全新的WebConsole管理頁面等功能,比如Dashboard如下所示:
3.1 Dashboard
3.2 數據TV大屏
新的數據TV大屏功能,可以幫助使用者快速瞭解Kafka集羣信息及應用相關情況,具體如下圖所示:
3.3 新官網
新的官網建設,方便使用者快速查閱EFAK使用方法,如下圖所示:
3.4 EFAK預覽
提供EFAK視頻預覽,方便使用者快速瞭解EFAK的新功能,如下所示:
4.結束語
這篇博客就和大家分享到這裏,如果大家在研究學習的過程當中有什麼問題,可以加羣進行討論或發送郵件給我,我會盡我所能爲您解答,與君共勉!
另外,博主出書了《Kafka並不難學》和《Hadoop大數據挖掘從入門到進階實戰》,喜歡的朋友或同學, 可以在公告欄那裏點擊購買鏈接購買博主的書進行學習,在此感謝大家的支持。關注下面公衆號,根據提示,可免費獲取書籍的教學視頻。