Kafka單機環境部署

  前面說過Kafka集羣環境的部署,如今主要說一下在本地測試中Kafka單機環境的部署,和前面同樣首先保證zookeeper服務的正常運行,而後解壓並釋放kafka安裝包,並放到指定位置:shell

tar -xvzf kafka_2.9.2-0.8.2.2.tar.gz
mkdir /usr/kafka
mv kafka_2.9.2-0.8.2.2 /usr/kafka/
cd /usr/kafka/kafka_2.9.2-0.8.2.2

  如今開始編輯配置文件server.properties,執行命令: vim config/server.properties 打開配置文件vim

  首先去掉#host.name=localhost前面的註釋,這個開發過程當中能夠填寫集羣主機名或者IP地址,有不少錯誤就是由於這裏被註釋致使的,建議單機環境必定去掉註釋根據狀況配置;集羣中通常根據zookeeper.connect識別,因此此項能夠配置也能夠忽略服務器

  

  而後以前集羣部署中曾經修改過borker.id,port這裏不用動,都是默認便可,修改一下log.dirs放到/usr/kafka/logs目錄中,這個能夠本身指定測試

  

  logs目錄咱們後來須要手動建立,而後log.cleaner.enable要改成true,表示自動清理日誌spa

  

  而後修改zookeeper.connect爲localhost:2181/kafka,默認是localhost:2181,這樣會在zookeeper上直接建立kafka對應文件,這裏加上/kafka和以前同樣,表示在zookeeper上建立kafka節點,把kafka相關文件都放在localhost:2181/kafka節點下命令行

  

  到如今,基本的配置就完成了,如今保存並退出配置文件日誌

  而後建立logs日誌目錄: mkdir /usr/kafka/logs ,建立目錄以後,開始啓動kafka服務:code

nohup bin/kafka-server-start.sh config/server.properties >> /dev/null &

  上面代碼hohup表明把任務放到後臺做爲服務運行,有些腳本不像以前的二進制程序同樣能夠一直跑在服務器上,雖而後面加上&表示在後臺運行,可是一段時間後可能會退出,nohup可讓程序一直跑在後臺,輸入以上命令後命令行會卡住,而後須要再次輸入一次回車回到命令行,另外咱們退出shell時必須使用logout退出,切不可直接關閉窗口,不然程序也可能異常退出server

  而後建立一個消息隊列:blog

bin/kafka-topics.sh --create --replication-factor 1 --partitions 1 --topic test --zookeeper localhost:2181/kafka

  建立隊列的時候,replication-factor只能是1個,由於是單節點,而partitions分區能夠是1個或者2個均可以,測試環境建議是1個便可

  而後,建立一個消費者:

bin/kafka-console-consumer.sh --zookeeper localhost:2181/kafka --topic test

  此時,命令行會進入運行狀態,界面就卡住不動了,而後再新建一個窗口,進入kafka目錄,繼續建立一個生產者:

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

  一樣這個時候命令行進入運行狀態,咱們輸入一個字符串:Hello Kafka!

  

  此時打開剛纔建立消費者的窗口,會看到剛纔的輸入消息被消費了

  

  到如今,Kafka單機消息隊列基本的配置和運行都是正常的,單機環境配置基本上就是這些

相關文章
相關標籤/搜索