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

2021-10-16 19:39:17 字數 3784 閱讀 7473

基於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-topic.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --topic test (檢視test的分割槽情況)

其實kafka-list-topic.sh裡面就一句

exec $(dirname $0)/kafka-run-class.sh kafka.admin.listtopiccommand $@

實際是通過

kafka-run-class.sh指令碼執行的包kafka.admin下面的類

##建立topic  kafka

-create-topic.sh

bin/ kafka

-create-topic.sh

--replica 2 --partition 8 --topic test

--zookeeper

192.168.197.170:2181,192.168.197.171:2181

建立名為test的topic, 8個分割槽分別存放資料,資料備份總共2份

bin/ kafka

-create-topic.sh

--replica 1 --partition 1 --topic test2

--zookeeper

192.168.197.170:2181,192.168.197.171:2181

結果 topic: test2 partition: 0 leader: 170 replicas: 170 isr: 170

##重新分配分割槽

kafka-reassign-partitions.sh

這個命令可以分割槽指定到想要的--broker-list上

bin/kafka-reassign-partitions.sh --topics-to-move-json-file topics-to-move.json --broker-list "171" --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --execute

cat topic-to-move.json

],"version":1

##為topic增加 partition數目

bin/kafka-add-partitions.sh --topic test --partition 2   --zookeeper

192.168.197.170:2181,192.168.197.171:2181 (為topic test增加2個分割槽)

##控制台接收訊息

bin/ kafka

-console-consumer.sh --zookeeper

192.168.197.170:2181,192.168.197.171:2181  --from-beginning --topic test

##控制台傳送訊息

bin/kafka-console-producer.sh --broker-list  192.168.197.170:9092,192.168.197.171: 9092

--topic test

##刪除topic,慎用,只會刪除zookeeper中的元資料,訊息檔案須手動刪除

bin/kafka-run-class.sh kafka.admin.deletetopiccommand --topic test666 --zookeeper 192.168.197.170:2181 ,192.168.197.171:2181

##檢視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-topic.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --topic test (檢視test的分割槽情況)

其實kafka-list-topic.sh裡面就一句

exec $(dirname $0)/kafka-run-class.sh kafka.admin.listtopiccommand $@

實際是通過

kafka-run-class.sh指令碼執行的包kafka.admin下面的類

##建立topic  kafka

-create-topic.sh

bin/ kafka

-create-topic.sh

--replica 3 --partition 8 --topic test

--zookeeper

192.168.197.170:2181,192.168.197.171:2181

建立名為test的topic, 8個分割槽分別存放資料,資料備份總共3份

bin/ kafka

-create-topic.sh

--replica 1 --partition 1 --topic test2

--zookeeper

192.168.197.170:2181,192.168.197.171:2181

結果 topic: test2 partition: 0 leader: 170 replicas: 170 isr: 170

##重新分配分割槽

kafka-reassign-partitions.sh

這個命令可以分割槽指定到想要的--broker-list上

bin/kafka-reassign-partitions.sh --topics-to-move-json-file topics-to-move.json --broker-list "171" --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --execute

cat topic-to-move.json

],"version":1

##為topic增加 partition數

目kafka-add-partitions.sh

bin/kafka-add-partitions.sh --topic test --partition 2   --zookeeper

192.168.197.170:2181,192.168.197.171:2181 (為topic test增加2個分割槽)

##控制台接收訊息

bin/ kafka

-console-consumer.sh --zookeeper

192.168.197.170:2181,192.168.197.171:2181  --from-beginning --topic test

##控制台傳送訊息

bin/kafka-console-producer.sh --broker-list  192.168.197.170:9092,192.168.197.171: 9092

--topic test

##刪除topic,慎用,只會刪除zookeeper中的元資料,訊息檔案須手動刪除

bin/kafka-run-class.sh kafka.admin.deletetopiccommand --topic test666 --zookeeper 192.168.197.170:2181 ,192.168.197.171:2181

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

總結最近用到的kafka相關命令和指令碼。1 建立topic kafka topics.sh zookeeper cc13 141 2182 topic mytopic replication factor 1 partitions 1 create 2 topic列表 kafka topics.s...

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端資源...