kafka安裝到linux服務器中的情況較多,但是我們現在在學習當中,所以可以拿windows先試試手。要想學kafk那麼必然要做一件事就是安裝好kafka,下面我講詳細得windows下安裝kafka得步驟告訴大家。
第一步:先安裝jdk,因為kafka依賴於Java環境,所以確保你的系統中裝有JDK(安裝jdk我就不說了,請自行百度,在此分享一個下載鏈接:http://pan.baidu.com/s/1i5jgMFF)
第二步:這裡我們要使用完全的zookeeper,而不是用Kafka打包的那個,因為這是一個單節點的Zookeeper實例。也可以運行打包了zookeeper的Kafka,位置在\kafka\bin\windows庫中。下載地址:http://pan.baidu.com/s/1c12D7C8.這裡面包含zookeeper和kafka得下載鏈接,請注意哦。
第三步:解壓你得zookerper到你指定得目錄,我解壓到了F盤
解壓完了還不算完,要修改一下配置文件和環境變量才能使用!
1)。打開F:\zookeeper-3.4.8\conf\zoo_sample.cfg這個文件,建議不要用記事本打開,用noteped++這類得文本編輯器打開,然後按ctrl+f找到dataDir這個屬性並講後面得屬性改為圖中所示,這個屬性得意思就是日志文件存放得位置,我們必須手動創建data文件夾,不會自動創建哦!
其他得不用動,端口號默認為2181就行。
2)。在系統變量中添加ZOOKEEPER_HOME,值為你得zookeeper安裝路徑:
修改path變量,值為:System Variable%ZOOKEEPER_HOME%\bin;注意不是讓你把path得值清空!!!,而是在最前面或者最後面新增!記住每個值要以;隔開.
好了 該配置得配置完畢了,讓我們啟動服務,進入bin目錄下啟動zkserver命令,按住shift鍵,鼠標右鍵單機,會發現多出一個選擇:在此處打開命令,選擇它.
如果你看到了這些文字那說明你已經安裝成功了,恭喜,Zookeeper已經完成並在端口2181運行。否則請回調到第三步重新來一遍!
第四步:解壓kafka到你指定得目錄.我得還是在F盤。
當然了還得修改一些東西才可以使用。
1)、進入Kafka配置目錄,例如F:\kafka_2.11-0.9.0.1\config,編輯文件“server.properties”
找到並修改log.dirs得值為:f:\kafka_2.11-0.9.0.0\kafka-logs,當然了這個文件夾也是手動創建得!如果Zookeeper在某些其他的機器或集群上運行,可以將“zookeeper.connect:2181”修改為自定義IP與端口。在這個演示中我們使用了同一個機器,因此沒必要做修改。文件中的Kafka端口和broker.id也是可以配置的。其他設置不變。OK,現在我們啟動kafka,重要:請確保在啟動Kafka服務器前,Zookeeper實例已經准備好並開始運行。
第五步:進入Kafka安裝目錄,按下Shift+右鍵,選擇“打開命令窗口”選項,打開命令行,現在輸入.\bin\windows\kafka-server-start.bat .\config\server.properties 並回車
如果一切正常,那麼你看到得界面應該是正常,否則請自行百度解決,注意JDK版本必須1.7以上
現在Kafka已經准備好並開始運行,可以創建topic來存儲消息了。我們也能從Java/Scala代碼中,或直接從命令行中生成或使用數據.
現在創建topic,命名為“test”,在f:\kafka_2.11-0.9.0.1\bin\windows打開新的命令行。輸入下面的命令,回車:
kafka-topics.bat --create --zookeeper localhost:
2181
--replication-factor
1
--partitions
1
--topic test
創建Producer及Consumer來測試服務器,在f:\kafka_2.11-0.9.0.1\bin\windows打開新的命令行。輸入下面的命令,回車:
kafka-console-producer.bat --broker-list localhost:
9092
--topic test,再打開一個f:\kafka_2.11-0.9.0.1\bin\windows新的命令行。輸入下面的命令,回車:
kafka-console-consumer.bat --zookeeper localhost:
2181
--topic test
再producer端輸入任意文字,你會發現consumer端都會接收到。
OK Kafka安裝就完成了!稍後我會奉上java如何使用,我找找代碼,因為代碼在公司電腦上,而我現在家!