kafka 指令碼傳送 kafka的相關操作指令碼

2021-10-13 06:19:30 字數 2265 閱讀 7080

總結最近用到的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-******-consumer-shell.sh工具主要是使用****** consumer api從指定topic的分割槽讀取資料並列印在終端。

使用指令碼:./kafka-******-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掉程序就行。

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

kafka 指令碼傳送 Kafka命令列常用命令說明

基於0.8.0版本。檢視topic分布情況 kafka list topic.sh bin kafka list topic.sh zookeeper 192.168.197.170 2181,192.168.197.171 2181 列出所有topic的分割槽情況 bin kafka list t...

Kafka 訊息傳送

建立乙個kafkaprodecer物件,傳入上面建立的properties物件 kafkaproducerproducer new kafkaproducer mykafkaprops 使用prodecerrecord string topic,string key,string value 建構函...

kafka訊息傳送模式

在kafka 0.8.2之後,producer不再區分同步 sync 和非同步方式 async 所有的請求以非同步方式傳送,這樣提公升了客戶端效率。producer請求會返回乙個應答物件,包括偏移量或者錯誤信。這種非同步方地批量的傳送訊息到kafka broker節點,因而可以減少server端資源...