天天看點

Kafka入門級(一) Windows環境下安裝

簡單說明什麼是Kafka

        Apache kafka是消息中間件的一種,是用于建構實時資料管道和流應用程式。具有橫向擴充,容錯,wicked fast(變态快)等優點,下面咱們就舉個例子來說明下,它究竟是幹啥用的!

       例如:生産者消費者,生産者生産雞蛋,消費者消費雞蛋,生産者生産一個雞蛋,消費者就消費一個雞蛋,假設消費者消費雞蛋的時候噎住了(系統當機了),生産者還在生産雞蛋,那新生産的雞蛋就丢失了。再比如生産者很強勁(大交易量的情況),生産者1秒鐘生産100個雞蛋,消費者1秒鐘隻能吃50個雞蛋,那要不了一會,消費者就吃不消了(消息堵塞,最終導緻系統逾時),消費者拒絕再吃了,”雞蛋“又丢失了,這個時候我們放個籃子在它們中間,生産出來的雞蛋都放到籃子裡,消費者去籃子裡拿雞蛋,這樣雞蛋就不會丢失了,都在籃子裡,而這個籃子就是”kafka“。雞蛋其實就是“資料流”,系統之間的互動都是通過“資料流”來傳輸的(就是tcp、https什麼的),也稱為封包,也叫“消息”。消息隊列滿了,其實就是籃子滿了,”雞蛋“ 放不下了,那趕緊多放幾個籃子,其實就是kafka的擴容。

後面大家會看到一些關于kafka的名詞,比如topic、producer、consumer、broker,我這邊來簡單說明一下 :
  • producer

    :生産者,就是它來生産“雞蛋”的。
  • consumer

    :消費者,生出的“雞蛋”它來消費。
  • topic

    :你把它了解為标簽,生産者每生産出來一個雞蛋就貼上一個标簽(topic),消費者可不是誰生産的“雞蛋”都吃的,這樣不同的生産者生産出來的“雞蛋”,消費者就可以選擇性的“吃”了。
  • broker

    :就是籃子了

 各位現在大概知道kafka是幹什麼的了吧,它就是那個"籃子"。接下來我們就在Windows環境下安裝kafka,筆者的環境是Windows8.1,jdk1.8.0_191版本,廢話不多說,下面我就開始介紹啦..........

JDK的安裝

  • 下載下傳位址:https://www.oracle.com/technetwork/java/javase/downloads/index.html
  • 環境變量的配置:“我的電腦”-右鍵-“屬性”-(左側)進階系統設定-(彈窗右下角)環境變量配置
    1. 建立JAVA_HOME,輸入jdk的安裝目錄,比如: C:\Program Files (x86)\Java\jdk1.8.0_101
    2. 建立CLASSPATH,輸入 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一點)
    3. 編輯Path把值放到最前邊  %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;      
  • 運作cmd,輸入
    java -version
               
    如出現一下界面資訊,即JDK環境配置成功!
    Kafka入門級(一) Windows環境下安裝

 Zookeeper的安裝

  • 下載下傳位址:http://mirror.bit.edu.cn/apache/zookeeper/,注意下載下傳版本為 apache-zookeeper-3.5.5-bin.tar.gz
  • 下載下傳後,解壓放在目錄E:\kafka(本文所用的目錄)下,關于zookeeper的目錄,路徑中最好不要出現空格、中文,比如E:\Program Files,盡量别用,運作腳本時會出現問題
  • 進入解壓後zookeeper所在的檔案目錄,例如本文的:E:\kafka\apache-zookeeper-3.5.5\conf
  • 将"zoo_sample.cfg"重命名為"zoo.cfg"
  • 打開zoo.cfg檔案編輯,将dataDir=/tmp/zookeeper修改為dataDir=E:\\kafka\\apache-zookeeper-3.5.5\\data(本機安裝zookeeper的檔案目錄),需要注意:路徑要麼是"/"分割,要麼是轉義字元"\\",這樣會生成正确的路徑(層級,子目錄),否則會出錯
  • Kafka入門級(一) Windows環境下安裝
  • 環境變量配置,參考上述JDK環境變量配置

        1.  系統變量中添加ZOOKEEPER_HOME=E:\kafka\apache-zookeeper-3.5.5

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

  • 運作cmd,輸入
    zkserver
               
    Kafka入門級(一) Windows環境下安裝

如出現上圖所示的界面,則恭喜你已經成功安裝zookeeper了!!保持運作狀态,不要關閉!!!!

筆者在嘗試安裝zookeeper的時候,由于版本下載下傳的是 apache-zookeeper-3.5.5.tar.gz,所有配置完成之後,運作zkserver出現了”找不到或無法加載主類 org.apache.zookeeper.server.quorum.QuorumPeerMain“的錯誤,後面替換apache-zookeeper-3.5.5-bin.tar.gz版本後,運作指令成功啟動!是以各位網友一定要下載下傳對應的版本,不然就會和我一樣哦!!!!!

Kafka的安裝

  • 下載下傳位址:http://kafka.apache.org/downloads ,注意下載下傳Binary downloads類型,不要下載下傳源檔案,這種友善使用。下載下傳後,解壓放在相應的目錄下, 路徑中最好不要出現空格、中文
    Kafka入門級(一) Windows環境下安裝
  • 進入kafka配置檔案所在目錄 E:\kafka\kafka_2.12-2.3.0\config
  • 找到配置檔案 server.properties 并進行編輯:log.dirs=/tmp/kafka-logs  修改成自己安裝的目錄,如:log.dirs=E:\\kafka\\kafka_2.12-2.3.0\\kafka-logs,需要注意:路徑要麼是"/"分割,要麼是轉義字元"\\",這樣會生成正确的路徑(層級,子目錄),否則會出錯
  • 在server.properties檔案中,zookeeper.connect=localhost:2181代表kafka所連接配接的zookeeper所在的伺服器IP以及端口,可根據需要更改。本文在同一台機器上使用,故不用修改
  • kafka會按照預設配置,在9092端口上運作,并連接配接zookeeper的預設端口2181
  • 運作cmd,進入到kafka的安裝目錄
    Kafka入門級(一) Windows環境下安裝

      接着運作

.\bin\windows\kafka-server-start.bat .\config\server.properties 
           
Kafka入門級(一) Windows環境下安裝

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

   Kafka建立主題 

  • 建立主題,命名為"theme",replicationfactor=1(因為隻有一個kafka伺服器在運作)。可根據叢集中kafka伺服器個數來修改replicationfactor的數量,以便提高系統容錯性
  • 運作cmd,進入到kafka的安裝目錄下的bin/windows目錄下
    Kafka入門級(一) Windows環境下安裝

       接着運作

kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic theme
           
Kafka入門級(一) Windows環境下安裝

       出現上述圖檔的界面,即建立主題成功,此時該視窗可以暫時關閉!

建立生産者 Producer

  • 運作cmd,進入到kafka的安裝目錄下的bin/windows目錄下
  • 運作指令,啟動producter
    kafka-console-producer.bat --broker-list localhost:9092 --topic theme
               
    Kafka入門級(一) Windows環境下安裝

       出現上述圖檔的界面,即建立生産者成功,此時該視窗可以不能關閉!!! 

 建立消費者 Consumer

  • 運作cmd,進入到kafka的安裝目錄下的bin/windows目錄下
  • 運作指令,啟動consumer
    kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic theme--from-beginning
               
    Kafka入門級(一) Windows環境下安裝

      出現上述圖檔的界面,即建立消費者成功,此時該視窗可以不能關閉!!! 

      現在生産者、消費者均已成功建立,在producer指令行視窗中任意輸入内容,回車在consumer指令行視窗中即可看到相應的内容,其中包括曆史消費的消息也能夠看到,如aa,vv等就是之前生産者生産的消息:

Kafka入門級(一) Windows環境下安裝

       到這裡,筆者就将自己親自在Window下安裝kafka的全部步驟分享給大家了,如有不對之處,懇請各位大佬積極指正,本人學疏才淺,您的點點滴滴指導就是我進步的階梯,謝謝你們啦!!!!