kafka執行依賴 zookeeper,如未安裝zookeeper請參考(zookeeper安裝使用)
kafka版本問題(這又是一大坑)
如果你的storm安裝的是1.0.x系列或更低的版本,建議你安裝0.8.x.x版本的kafka。
如果你的storm安裝的是1.1.x系列或更高的版本,建議你安裝0.10.x.x版本的kafka。
官方原文:
when selecting a kafka client version, you should ensure - 1. kafka api is compatible. storm-kafka-client module only supports 0.10 or newer kafka client api. for older versions, you can use storm-kafka module (
也就是說,1.1.x版的storm引入了新的storm-kafka-client與kafka互動,而1.0.x或更低版本的storm使用舊的storm-kafka與kafka互動。
當然,如果你夠牛掰,你也可以自己封裝乙個spout,直接呼叫kafka的api與kafka互動(其實也不複雜,只是官方考慮比較全面,也可以簡單實現乙個)。
wget
解壓
tar -xzvf kafka_2.11-0.10.2.1.tgz -c /usr/local/
配置環境變數 vi /etc/profile
export kafka_home=/usr/local/kafka_2.11-0.10.2.1
export path=$kafka_home/bin:$path
立即生效環境變數
source /etc/profile
主機名稱到ip位址對映配置 (這裡我們使用zookeeper一樣的配置)
修改/etc/hosts
192.168.1.101 zoo1
#注:呼叫客戶端也需要配置ip對映,否則呼叫失敗,或者可以都直接使用ip呼叫(要麼配置,要麼都不配置)
#巨坑:開發過程,外部電腦呼叫虛擬機器,也需要配置ip對映
修改kafka配置
broker.id=1
host.name=zoo1
listeners=plaintext://zoo1:9092
advertised.listeners=plaintext://zoo1:9092
log.dirs=/data/kafka-logs
num.partitions=4
zookeeper.connect=zoo1:2181
啟動kafka(記得先啟動zookeeper哦)
#注意環境變數是否配置成功
kafka-server-start.sh config/server.properties &
#後台啟動
kafka-server-start.sh config/server.properties 1>/dev/null 2>&1 &
#如沒有配置環境變數也可以直接使用絕對路徑(或相對路徑)啟動
/usr/local/kafka_2.11-0.10.2.1/bin/kafka-server-start.sh /usr/local/kafka_2.11-0.10.2.1/config/server.properties &
建立主題
kafka-topics.sh --create --zookeeper zoo1:2181 --replication-factor 1 --partitions 4 --topic topic1
檢視已建立的主題
kafka-topics.sh --list --zookeeper zoo1:2181
刪除主題
kafka-topics.sh --delete --zookeeper zoo1:2181 --topic topic1
徹底刪除topic:
1、配置delete.topic.enable=true直接通過命令刪除,如果命令刪除不掉,直接通過zookeeper-client 刪除掉broker下的topic即可。
2、刪除kafka儲存目錄(server.properties檔案log.dirs配置)相關topic目錄
啟動producer傳送訊息
kafka-console-producer.sh --broker-list zoo1:9092 --topic topic1
啟動consumer消費訊息
kafka-console-consumer.sh --bootstrap-server zoo1:9092 --topic topic1 --from-beginning
producer和consumer都啟動成功後,在producer命令列輸入一行回車,這是consumer馬上能看到相同的訊息。
producer是提供資料,我們可以使用其他方式,如:
1、使用其他程式呼叫kafka api
2、使用logstash或flume整合,直接讀取日誌資料來源
kafka安裝配置
一.zookeeper部署 tar xvf zookeeper 3.4.6.tar.gz mv zookeeper 3.4.6 zookeeper chown r root root zookeeper 2.修改配置 cd zookeeper conf cp zoo sample.cfg zoo.c...
kafka安裝配置
1 部署規劃 作業系統 centos 7.2 kafka版本 kafka 2.10 0.8.2.1 安裝路徑 opt kafka 2.10 0.8.2.1 節點 192.168.20.100 105 2 部署過程 2.2 解壓 tar zxvf kafka 2.10 0.8.2.1.tgz 2.3 ...
kafka安裝配置
2 安裝成功後,啟動命令 先啟動zookeeper bin zookeeper server start.sh config zookeeper.properties 再啟動kafka bin kafka server start.sh config server.properties 3 測試ka...