kafka下載並安裝


一、准備工作

  操作系統環境:Windows10

  JDK:1.8

  zookeeper:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/stable/apache-zookeeper-3.5.9-bin.tar.gz

  kafka:https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.6.1/kafka_2.12-2.6.1.tgz

 

二、介紹

  1、Kafka是什么?

    Apache Kafka® 是 一個分布式流處理平台

 

  2、流處理平台的三種特性

    (1)、可以讓你發布和訂閱流式的記錄。這一方面與消息隊列或者企業消息系統類似。

  (2)、可以存儲流式 的記錄,並且有較好的容錯性。

   (3)、可以在流式記錄產生時就進行處理。

 

  3、Kafka的兩大應用場景

   (1)、構造實時流數據管道,它可以在系統或應用之間可靠的獲取數據。(相當於MQ)

  (2)、構建實時流式應用程序,對這些流數據進行轉換或者影響。(就是流處理,通過Kafka stream topic和topic之間內部進行變化)

 

  4、Kafka相關概念

  • Kafka作為一個集群,運行在一台或者多台服務器上.
  • Kafka 通過 topic 對存儲的流數據進行分類。
  • 每條記錄中包含一個key,一個value和一個timestamp(時間戳)。

 

  5、Kafka有四個核心的API:

  • The Producer API 允許一個應用程序發布一串流式的數據到一個或者多個Kafka topic。
  • The Consumer API 允許一個應用程序訂閱一個或多個 topic ,並且對發布給他們的流式數據進行處理。
  • The Streams API 允許一個應用程序作為一個流處理器,消費一個或者多個topic產生的輸入流,然后生產一個輸出流到一個或多個topic中去,在輸入輸出流中進行有效的轉換。
  • The Connector API 允許構建並運行可重用的生產者或者消費者,將Kafka topics連接到已存在的應用程序或者數據系統。比如,連接到一個關系型數據庫,捕捉表(table)的所有變更內容。

 

三、zookeeper

  1、安裝注意,Java1.8下zookeeper的版本問題。 

 

  2、解壓后包含的目錄大致如下:

  

   bin:zookeeper相關可執行文件,conf:zookeeper相關配置文件,docs:zookeeper相關文檔,lib:運行zookeeper需要的jar包,license.txt:許可證,notice.txt:相關注意聲明,readme.md:工具的相關工說明,README_packaging.txt:包裝的相關說明。

 

   3、zookeeper的相關配置運行

  (1)、在zookeeper的安裝目錄下找到conf文件夾,將zoo_sample.cfg復制一份更改為zoo.cfg。打開zoo.cfg文件,將dataDir=/tmp/zookeeper修改為Windows上的相關存放路徑,其它選項視情況修改。

  (2)、然后在bin文件夾下找到zkServer.cmd文件雙擊運行,正常情況下cmd控制台會打印一長串的東西,這里就不放圖了。然后可以使用如下命令測試zookeeper是否啟動成功:

telnet localhost 2181 # 2181為默認端口

  (3)、如果運行zkServer.cmd時,窗口一閃而過的話。可打開該文件,並在文件最后加入【pause】就可查看錯誤信息,然后根據錯誤信息排查。

 

四、Kafka

  1、在Kafka的安裝目錄下找到config文件夾找到server.properties文件,打開並將其中的log.dirs=/tmp/kafka-logs修改為Windows上的相關存放路徑。將同目錄下的zookeeper.properties文件中的dataDir=/tmp/zookeeper修改和上面zookeeper的配置文件相同的路徑即可。

  2、打開cmd程序,並切換 到Kafka的安裝路徑,輸入如下參數:

.\bin\windows\kafka-server-start.bat .\config\server.properties

  (1)、等控制台輸出一大段后,出現如下所示,則表明Kafka的服務啟動成功:

 (2)、如果出現如下錯誤,則可能是因為你的環境變量中存在了空格。

 

 

 解決方法:在Kafka安裝目錄下找到bin\windows\kafka-run-class.bat,打開該文件,進行如下修改:

IF not defined CLASSPATH (
  set CLASSPATH="%~1"
) ELSE (
  set CLASSPATH=%CLASSPATH%;"%~1"
)

修改為:

IF not defined CLASSPATH (
  set CLASSPATH="%~1"
) ELSE (
  set CLASSPATH="%CLASSPATH%";"%~1"
)

注意:Kafka有關的路徑等盡量都不要包含空格。

 

 五、使用示例

  1、zookeeper和Kafka的cmd窗口都不要關閉,打開一個新的cmd窗口,並切換到Kafka的安裝目錄下。進行如下操作:

 (1)、創建topic

.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
Created topic test.

 

 (2)、查看topic列表

.\bin\windows\kafka-topics.bat --list --zookeeper localhost:2181

 

 (3)、生產者,生產消息並發送到服務器,選擇存儲消息的topic。

.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test

 

 (4)、消費者,消費消息,選擇要消費的topic。打開新的cmd窗口操作。

.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning

 

六、結束總結

  1、相關工具的下載采用了清華大學鏡像站點進行下載,apache鏡像站點傳送:點擊傳送

  2、Kafka中文文檔:點擊傳送

  3、 apache-zookeeper-[version].tar.gz和apache-zookeeper-[version]-bin.tar.gz的區別:前者包含全部的源文件可以通過運行:mvn clean install進行構建,后者包含運行zookeeper所需的所有jar文件和完整的文檔(在docs文件夾中)。

  4、友鏈:telnet介紹

  5、注意:Windows中配置文件中的路徑分割符應該使用"/"。

  6、推薦Linux下使用Kafka,Linux下的安裝使用的此處不做說明。推薦JDK1.8及以上使用Kafka。

  7、可能遇到的問題:另一個程序正在使用此文件,進程無法訪問


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM