kafka在windows下的安裝和配置


博主最近在學習有關kafka的配置安裝以及在spring的集成使用。但網上關於kafka的配置參考資料基本都是於linux下的配置,於是博主在整理了相關windows下kafka的配置記錄在博客里。由於是簡單配置所以在這里只建了一個topic以及一個producer和兩個consumer。

關於kafka具體是什么以及他的設計原理使用場景等等請看上篇博客,轉自大佬。傳送門:http://www.cnblogs.com/wdfordream/p/7324975.html

在官網上下載 zookeeper和kafka(我下的版本kafka_2.11-0.11.0.0,這個版本中bin目錄下有windows目錄),注意不要下載源碼包(名字中帶有src),否則啟動的時候會報錯。

1、配置好jdk環境

2、解壓zookeeper到指定目錄,找到解壓后目錄中conf文件夾中zoo_sample - 副本.cfg文件,復制在conf中改名為zoo.cfg。在bin文件夾中打開zkServer.bat啟動zookeeper。

至此,zookeeper啟動完成。

3、解壓kafka到指定目錄。查看kafka根目錄中config文件夾下server.properties,確認其中關於zookeeper的連接端口和zookeep中zoo.cfg的端口一致。

  3.1、啟動kafka

  在cmd中進入kafka根目錄。輸入以下命令:

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

  

  kafka啟動成功

  3.2、創建topic

  在cmd中進入kafka\bin\windows目錄,輸入以下命令:

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

  

  創建成功

  3.3、創建kafka producer

  在cmd中進入kafka\bin\windows目錄,輸入以下命令:

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

  注意這里的端口和server.properties的端口號一致。

  

  3.4創建consumer

  在cmd中進入kafka\bin\windows目錄,輸入以下命令:

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

  

  以同樣的方式創建另一個consumer。

4、測試

 在producer中輸入一句話並回車,可以在兩個consumer中得到相關信息。

 

5、其他相關命令

查看已建立的topics:kafka-topics.bat --list --zookeeper localhost:2181

查看每個節點信息  :kafka-topics.bat --describe --zookeeper localhost:2181 --topic my-replicated-topic

6、問題整理

6.1、kafka啟動時報異常Caused by:java.lang.OutOfMemoryError:Map failed

在這里博主的辦法是將kafka-server-run.bat里的參數set KAFKA_HEAP_OPTS=-Xmx512M -Xms512M改為256M,如果有更好的解決辦法謝謝大家能告訴我。

6.2、kafka啟動時報異常Caused by: java.nio.file.FileSystemException: \tmp\kafka-logs\topic.alarmMatchFace-0\00000000000000009163.log -> \tmp\kafka-logs\topic.alarmMatchFace-0\00000000000000009163.log.deleted: 另一個程序正在使用此文件,進程無法訪問。

 主要是因為tmp/kafka-logs文件的日志達到了1G且未被清理。由於這樣的錯誤是在kafka服務關閉后重啟kafka服務引起的,博主暫無什么好的解決方法,每次把tmp下的kafka-logs文件夾刪除,再啟動kafka服務就不會報錯了,希望各位大大如果有好的方法能告知我一下,謝謝啦。


免責聲明!

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



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