kafka叢集安裝
阿新 • • 發佈:2020-08-23
kafka是分散式的,需要多臺機器,並且保證機器之間是免密登入,同時需要用zookeeper叢集負責管理
1、kafka版本選擇,從官網下載即可,我這裡用的是 kafka_2.11-0.11.0.3.tgz
2、brokers節點分配,注意一定是奇數臺節點
3、解壓並軟鏈
tar -zxvf /software/kafka_2.11-0.11.0.3.tgz
ln -sf kafka_2.11-0.11.0.3/ kafka
4、配置server.properties
vim /software/kafka/config/server.properties
修改如下內容
broker.id=0 注意:這裡要唯一的Integer型別
port =9092 kafka寫入資料的埠
log.dirs=/opt/data/kafka-logs 真實資料儲存的位置
zookeeper.connect=node1:2181,node2:2181,node3:2181 zookeeper叢集
5、節點保持一致
將kafka整個檔案分發到其他節點或者其他方式保證配置一致(除broker.id)
其他節點的server.properties的broker.id
順序分別為1,2等等
6、可以建立一個kafka叢集啟動指令碼
在每臺節點某個路徑下建立startKafka.sh指令碼
vim startKafka.sh
內容如下
nohup bin /kafka-server-start.sh config/server.properties > kafkalog.txt 2>&1 &
注意:以上路徑可以寫全路徑,可以在不同路徑中,寫全路徑中執行startKafak.sh
chmod +x ./startKafka.sh 修改許可權
在每臺節點中啟動Kafka,/software/kafka/startKafka.sh
jps檢視kafka是否啟動,jps有kafka程序就可以
7、啟動
先啟動zk叢集,然後執行編寫的kafka啟動指令碼
kafka檢視全部topic/建立
...路徑/kafka/bin/kafka-topics.sh --zookeeper node1:2181,node2:2181,node3:2181 --list/create
kafka詳細檢視某個topic
...路徑 /kafka/bin/kafka-topics.sh --describe --zookeeper node1:2181,node2:2181,node3:2181 --topic topic_name
kafka命令消費
...路徑/kafka/bin/kafka-console-consumer.sh --bootstrap-server node1:9092,node2:9092,node3:9092 --from-beginning --topic topic_name
...路徑/kafka/bin/kafka-console-consumer.sh --bootstrap-server node1:9092,node2:9092,node3:9092 --topic topic_name --offset latest --partition 0 | grep fl_appid
消費組,檢視
...路徑/kafka/bin/kafka-consumer-groups.sh --bootstrap-server node1:9092,node2:9092,node3:9092 --group topic_name --describe