kafka的相關操作腳本


總結最近用到的kafka相關命令和腳本。

1、創建Topic
./kafka-topics.sh --zookeeper cc13-141:2182 --topic mytopic --replication-factor 1 --partitions 1 --create

2、Topic列表
./kafka-topics.sh --zookeeper cc13-138:2181 --list

3、創建生產者
./kafka-console-producer.sh --broker-list cc13-141:9092 --topic mytopic

4、創建消費者
./kafka-console-consumer.sh --zookeeper c13-138:2181 --topic mytopic
--from-beginning 每次都是從開始位置消費,在生產環境下不建議這樣使用。

5、查看指定topic
./kafka-topics.sh --describe --zookeeper c13-138:2181 --topic mytopic

6、刪除topic
./kafka-topics.sh --delete --zookeeper c13-138:2181--topic mytopic

7、顯示出Consumer的Group、Topic、分區ID、分區對應已經消費的Offset、logSize大小,Lag以及Owner等信息。
使用腳本:kafka-consumer-offset-checker.sh
./kafka-consumer-offset-checker.sh --zookeeper c13-138:2181,c13-139:2181,c13-141:2181 --topic mytopic --group xb_id --broker-info

8、有時候我們需要驗證日志索引是否正確,或者僅僅想從log文件中直接打印消息。
使用腳本:kafka-run-class.sh
./kafka-run-class.sh kafka.tools.DumpLogSegments
./kafka-run-class.sh kafka.tools.DumpLogSegments /nodedata/kafka/kafka-logs/xb_topic-0/00000000000000000033.log
./kafka-run-class.sh kafka.tools.DumpLogSegments --files /nodedata/kafka/kafka-logs/xb_topic-0/00000000000000000033.log --print-data-log

9、導出Zookeeper中Group相關的偏移量。有時候我們需要導出某個Consumer group各個分區的偏移量。
使用腳本:kafka-run-class.sh
./kafka-run-class.sh kafka.tools.ExportZkOffsets
./kafka-run-class.sh kafka.tools.ExportZkOffsets --group xb_id --zkconnect c13-138:2181,c13-139:2181,c13-141:2181 --output-file ~/offset
vim ~/offset

10、這個工具主要作用是從一個Kafka集群里面讀取指定Topic的消息,並將這些消息發送到其他集群的指定topic中。
使用腳本:./kafka-replay-log-producer.sh

11、kafka-simple-consumer-shell.sh工具主要是使用Simple Consumer API從指定Topic的分區讀取數據並打印在終端。
使用腳本:./kafka-simple-consumer-shell.sh --broker-list c13-141:9092 --topic mytopic --partition 0

12、kafka.tools.UpdateOffsetsInZK工具可以更新Zookeeper中指定Topic所有分區的偏移量,可以指定成 earliest或者latest
使用工具:./kafka-run-class.sh kafka.tools.UpdateOffsetsInZK

 

最后再注意kafka的啟動和停止。
啟動kafka: ./kafka-server-start.sh /kafka/config/server.properties >/dev/null 2>&1 &
停止kafka: 直接kill掉進程就行。

 

經常總結才能進步,每天進步一點點就可以了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM