Kafka 入门之集群部署遇到问题
最近,因?yàn)樯霞壷鞴懿块T需要通過使用Kafka向其傳輸文件,又因?yàn)榇饲皼]有接觸過kafka,所以在部署測試kafka程序期間遇到很多問題,在這里總結(jié)4個(gè)問題與1個(gè)建議,方便入門者參考也便于遇到類似問題進(jìn)行查閱完善。
?1.Kafka java代碼與Kafka 軟件的關(guān)系
Kafka java代碼與Kafka 軟件之間究竟有什么關(guān)系呢?Kafka java代碼中已經(jīng)使了kafka-clients-0.8.2.1.jar,kafka_2.11-0.8.2.1.jar,那么還需要安裝kafka_2.11-0.10.2.1么?并可Kafkaproducer.properties已經(jīng)包含了Kafka軟件中 server.propertiy zookeeper.connect,等等屬性,那么是不是可以取代Kafka 軟件了呢?
Kafka 軟件:目前使用版本為kafka_2.11-0.10.2.1,\kafka_2.11-0.10.2.1\bin\windows,可啟動(dòng)Kafka,可創(chuàng)建Topic,可啟動(dòng)一個(gè)生產(chǎn)者進(jìn)程來發(fā)送消息,也可以啟動(dòng)一個(gè)消費(fèi)者進(jìn)程來消費(fèi)消息,見下:
#創(chuàng)建topic
bin\windows\kafka-topics.bat --create --zookeeper 101.201.177.100:2181 --replication-factor 1 --partitions 1 --topic mytest-topic
#啟動(dòng)一個(gè)生產(chǎn)者進(jìn)程來發(fā)送消息
bin\windows\kafka-console-producer.bat --broker-list 101.201.177.100:9092 --topic mytest-topic
#啟動(dòng)一個(gè)消費(fèi)者進(jìn)程來消費(fèi)消息
bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic my-topic --from-beginning
?
Kafka java代碼:用于編寫Kafka的Producer端與Consumer端,完成消息的發(fā)送與接收;
區(qū)別:也就是Kafka java代碼運(yùn)行,離不開Kafka 軟件,因?yàn)槭钦{(diào)用Kafka 軟件中的kafka-console-consumer.bat、kafka-console-producer.bat;
?
?2.ZooKeeper與Kafka 軟件的關(guān)系
zooKeeper集群與Kafka集群之間有什么關(guān)系,之前一位對Kafka有所研究的朋友說,作為Kafka的客戶端,只需要在此機(jī)安裝Zookeeper就可以了?然而,在參考各種Kafka集群配置的時(shí)候有每臺(tái)機(jī)器都部署zookeeper與kafka的,也有只有1臺(tái)部署zookeeper的(同時(shí)部署Kafka),3臺(tái)部署kafka的;那究竟是怎樣的呢?
在讀此篇博文,頓覺一語中的 “”Kafka集群是把狀態(tài)保存在Zookeeper中的,首先要搭建Zookeeper集群。” 圖文參考?http://www.cnblogs.com/luotianshuai/p/5206662.html;
?3.Kafka 單機(jī)測試通過,集群部署發(fā)送文件失敗
單機(jī)通過kafka發(fā)送文件、接收文件均無問題,根據(jù)配置文件修改為遠(yuǎn)程服務(wù)端,卻發(fā)送失敗???期間原因很多,但總結(jié)如下:
1.在修改配置文件后,因?yàn)檫\(yùn)行后會(huì)產(chǎn)生新文件,修改配置文件,容易產(chǎn)生新的錯(cuò)誤;
2.學(xué)會(huì)看log,根據(jù)log提示的錯(cuò)誤,查找問題原因,或百度找到解決方法;也需要學(xué)會(huì)判斷判斷程序是否正確啟動(dòng)。
3.Kafka配置時(shí)host主機(jī)名字不能設(shè)置為127.0.0.1 !!!困擾了我18個(gè)小時(shí)的原因
?4.Kafka 測試
為了避免重復(fù)的額部署、測試,程序能夠使用,測試環(huán)境是必不可少的啦,建議測試方法如下:
配置本地環(huán)境測試與生產(chǎn)環(huán)境測試的程序、與配置文件、啟動(dòng)命令;
更建議本地使用編程工具(比如 Idea)進(jìn)行調(diào)試,因?yàn)榫幊坦ぞ哌\(yùn)行起來不需要部署,賊方便哦;
本地測試OK,進(jìn)行生產(chǎn)環(huán)境測試,只要您的測試與生產(chǎn)環(huán)境相似度很高,也就基本OK啦。
?
轉(zhuǎn)載于:https://www.cnblogs.com/bide/p/7081230.html
總結(jié)
以上是生活随笔為你收集整理的Kafka 入门之集群部署遇到问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux多线程实践(六)使用Posix
- 下一篇: windows系统切换目录方法