Apache Kafka學習(三)之Kafka常用命令
windows:bin\zkServer.cmd
2、啟動kafka(安裝目錄下使用命令)
Linux:bin/kafka-server-start.sh start config/server.properties
windows:bin\windows\kafka-server-start.bat config\server.properties
3、檢視topic名稱列表
Linux:bin/kafka-topics.sh -list --zookeeper 172.16.0.99:2181,172.16.0.218:2181
windows:bin\windows\kafka-topics.bat -list --zookeeper 172.16.0.99:2181,172.16.0.218:2181
4、檢視topic詳情
Linux:bin/kafka-topics.sh -zookeeper localhost:2181 --topic test --describe
windows:bin\windows\kafka-topics.bat --zookeeper localhost:2181 --topic test --describe
5、刪除topic
Linux:bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic "test"
windows:bin\windows\kafka-topics.bat --zookeeper localhost:2181 --delete --topic "test"
注意:叢集中一臺機器刪除了topic,其他機器同步刪除相同topic
6、建立topic
Linux:bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
windows:bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
注意:
replication-factor:副本個數,一般為小於等於Broker個數。
partitions:分割槽個數。如果副本個數為1,分割槽為4,則4個分割槽會均勻的分佈在各個Broker上。如果Broker為2,副本為2,分割槽為4,則每個Broker上面都有4個分割槽。
7、建立Consumer
Linux:bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
windows:bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic test --form-beginning
注意:form beginning表示從頭拉取。
8、建立Producer
Linux:bin/kafka-console-producer.sh --broker-list 172.16.0.99:9020,172.16.0.218:9020 --topic test
windows:bin\windows\kafka-console-producer.bat --broker-list 172.16.0.99:9092,172.16.0.218:9080 --topic test
注意:此處是kafka的埠,而且在叢集裡如果此處填localhost,會報一個連線錯誤,猜想應該是訊息沒有到達叢集,因此此處將叢集的ip都填上。
9、查詢topic所有分割槽的offset值
Linux:bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list 10.162.160.115:9092 --topic s1mmetest --time -1
10、查詢kafka叢集當前topic所有分割槽中的訊息數目
Linux:bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list 132.232.78.175:9092 --topic s1mmetest --time -2