天天看點

kafka在windows上的安裝、運作1.簡介 2.環境搭建

1.簡介 

  Kafka是一種高吞吐量的分布式釋出訂閱消息系統。詳細介紹可查閱官網:kafka官網

2.環境搭建

2.1 安裝JDK

    下載下傳位址:jre下載下傳

   有關jdk的安裝不再贅述。

2.2 安裝Zookeeper

     下載下傳位址:https://zookeeper.apache.org/releases.html

    下載下傳後,解壓放在目錄D:\bigdata(本文所用的目錄)下,關于zookeeper以及kafka的目錄,路徑中最好不要出現空格,比如D:\Program Files,盡量别用,運作腳本時會有問題。

①進入zookeeper的相關設定所在的檔案目錄,例如本文的:D:\bigdata\zookeeper-3.4.10\conf

②将"zoo_sample.cfg"重命名為"zoo.cfg"

③打開zoo.cfg(至于使用什麼編輯器,根據自己喜好選即可),找到并編輯:

dataDir=/tmp/zookeeper  to  D:/bigdata/zookeeper-3.4.10/data或 D:\\bigdata\\zookeeper-3.4.10\\data(路徑僅為示例,具體可根據需要配置)

這裡注意,路徑要麼是"/"分割,要麼是轉義字元"\\",這樣會生成正确的路徑(層級,子目錄)。

④與配置jre類似,在系統環境變量中添加:

    a.系統變量中添加ZOOKEEPER_HOME=D:\bigdata\zookeeper-3.4.10

    b.編輯系統變量中的path變量,增加%ZOOKEEPER_HOME%\bin

⑤在zoo.cfg檔案中修改預設的Zookeeper端口(預設端口2181)

這是本文最終的zoo.cfg檔案的内容:

[plain]  view plain  copy

  1. # The number of milliseconds of each tick  
  2. tickTime=2000  
  3. # The number of ticks that the initial   
  4. # synchronization phase can take  
  5. initLimit=10  
  6. # The number of ticks that can pass between   
  7. # sending a request and getting an acknowledgement  
  8. syncLimit=5  
  9. # the directory where the snapshot is stored.  
  10. # do not use /tmp for storage, /tmp here is just   
  11. # example sakes.  
  12. dataDir=D:/bigdata/zookeeper-3.4.10/data  
  13. #dataDir=D:\\bigdata\\zookeeper-3.4.10\\data  
  14. # the port at which the clients will connect  
  15. clientPort=2181  
  16. # the maximum number of client connections.  
  17. # increase this if you need to handle more clients  
  18. #maxClientCnxns=60  
  19. #  
  20. # Be sure to read the maintenance section of the   
  21. # administrator guide before turning on autopurge.  
  22. #  
  23. # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance  
  24. #  
  25. # The number of snapshots to retain in dataDir  
  26. #autopurge.snapRetainCount=3  
  27. # Purge task interval in hours  
  28. # Set to "0" to disable auto purge feature  
  29. #autopurge.purgeInterval=1  

⑥打開cmd視窗,輸入zkserver,運作Zookeeper,運作結果如下:

kafka在windows上的安裝、運作1.簡介 2.環境搭建

恭喜,Zookeeper已經安裝完成,已在2181端口運作。

2.3 安裝kafka

    下載下傳位址:http://kafka.apache.org/downloads

    要下載下傳Binary downloads這個類型,不要下載下傳源檔案,這種友善使用。下載下傳後,解壓放在D:\bigdata目錄下。

①進入kafka配置檔案所在目錄,D:\bigdata\kafka_2.11-0.9.0.1\config

②編輯檔案"server.properties",找到并編輯:

 log.dirs=/tmp/kafka-logs  to  log.dirs=D:/bigdata/kafka_2.11-0.9.0.1/kafka-logs 或者 D:\\bigdata\\kafka_2.11-0.9.0.1\\kafka-logs

同樣注意:路徑要麼是"/"分割,要麼是轉義字元"\\",這樣會生成正确的路徑(層級,子目錄)。錯誤路徑情況可自行嘗試,檔案夾名為這種形式:bigdatakafka_2.11-0.9.0.1kafka-logs

③在server.properties檔案中,zookeeper.connect=localhost:2181代表kafka所連接配接的zookeeper所在的伺服器IP以及端口,可根據需要更改。本文在同一台機器上使用,故不用修改。

④kafka會按照預設配置,在9092端口上運作,并連接配接zookeeper的預設端口2181。

2.4 運作kafka

提示:請確定啟動kafka伺服器前,Zookeeper執行個體已經在運作,因為kafka的運作是需要zookeeper這種分布式應用程式協調服務。

①進入kafka安裝目錄D:\bigdata\kafka_2.11-0.9.0.1

②按下shift+滑鼠右鍵,選擇"在此處打開指令視窗",打開指令行。

③在指令行中輸入:.\bin\windows\kafka-server-start.bat .\config\server.properties   回車。

④正确運作的情況為:

kafka在windows上的安裝、運作1.簡介 2.環境搭建

到目前為止,zookeeper以及kafka都已正确運作。保持運作狀态,不要關閉。

重要(記錄檔的處理):

kafka啟動後,如果你去檢視kafka所在的根目錄,或者是kafka本身的目錄,會發現已經預設生成一堆記錄檔(這樣看起來真心很亂):

kafka在windows上的安裝、運作1.簡介 2.環境搭建

而且會不斷生成不同時間戳的記錄檔。剛開始不知所措,一番研究後,看了啟動的腳本内容,發現啟動的時候是會預設使用到這個log4j.properties檔案中的配置,而在zoo.cfg是不會看到本身的啟動會調用到這個,還以為隻有那一個日志路徑:

kafka在windows上的安裝、運作1.簡介 2.環境搭建

在這裡配置一下就可以了,找到config下的log4j.properties:

kafka在windows上的安裝、運作1.簡介 2.環境搭建

将路徑更改下即可,這樣就可以歸檔在一個檔案夾下邊了,路徑根據自己喜好定義:

kafka在windows上的安裝、運作1.簡介 2.環境搭建

另外如何消除不斷生成日志的問題,就是同一天的不同時間會不停生成。

修改這裡,還是在log4j.properties中:

kafka在windows上的安裝、運作1.簡介 2.環境搭建

本身都為trace,字面了解為會生成一堆跟蹤日志,将其改為INFO即可。

2.5 建立主題

①建立主題,命名為"test0811",replicationfactor=1(因為隻有一個kafka伺服器在運作)。可根據叢集中kafka伺服器個數來修改replicationfactor的數量,以便提高系統容錯性等。

②在D:\bigdata\kafka_2.11-0.9.0.1\bin\windows目錄下打開新的指令行

③輸入指令:

kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test0811

回車。 

kafka在windows上的安裝、運作1.簡介 2.環境搭建

該視窗可以關閉。

2.6 建立生産者(producer)和消費者(consumer)

①在D:\bigdata\kafka_2.11-0.9.0.1\bin\windows目錄下打開新的指令行。

②輸入指令,啟動producer:

kafka-console-producer.bat --broker-list localhost:9092 --topic test0811 

該視窗不要關閉。

③同樣在該目錄下打開新的指令行。

④輸入指令,啟動consumer:

kafka-console-consumer.bat --zookeeper localhost:2181 --topic test0811

kafka在windows上的安裝、運作1.簡介 2.環境搭建

現在生産者、消費者均已建立完成。

⑤在producer指令行視窗中任意輸入内容,回車  在consumer指令行視窗中即可看到相應的内容。

kafka在windows上的安裝、運作1.簡介 2.環境搭建

至此,已完成kafka在windows下的安裝和基本的使用。

轉載自: https://blog.csdn.net/u010283894/article/details/77106159

按照原作者的一套做下來很順利,中間隻遇到一個問題(類無法加載的問題),在我的另一篇博文中講到了,作者棒棒哒