Kafka Shell基本命令


創建kafka topic

bin/kafka-topics.sh --zookeeper node01:2181 --create --topic t_cdr --partitions 30 --replication-factor 2
注: partitions指定topic分區數,replication-factor指定topic每個分區的副本數
  • partitions分區數:
    • partitions :分區數,控制topic將分片成多少個log。可以顯示指定,如果不指定則會使用broker(server.properties)中的num.partitions配置的數量
    • 雖然增加分區數可以提供kafka集群的吞吐量、但是過多的分區數或者或是單台服務器上的分區數過多,會增加不可用及延遲的風險。因為多的分區數,意味着需要打開更多的文件句柄、增加點到點的延時、增加客戶端的內存消耗。
    • 分區數也限制了consumer的並行度,即限制了並行consumer消息的線程數不能大於分區數
    • 分區數也限制了producer發送消息是指定的分區。如創建topic時分區設置為1,producer發送消息時通過自定義的分區方法指定分區為2或以上的數都會出錯的;這種情況可以通過alter –partitions 來增加分區數。
  • replication-factor副本
    • replication factor 控制消息保存在幾個broker(服務器)上,一般情況下等於broker的個數。
    • 如果沒有在創建時顯示指定或通過API向一個不存在的topic生產消息時會使用broker(server.properties)中的default.replication.factor配置的數量
 

查看所有topic列表

bin/kafka-topics.sh --zookeeper node01:2181 --list
 

查看指定topic信息

bin/kafka-topics.sh --zookeeper node01:2181 --describe --topic t_cdr
 

控制台向topic生產數據

bin/kafka-console-producer.sh --broker-list node86:9092 --topic t_cdr
 

控制台消費topic的數據

bin/kafka-console-consumer.sh --zookeeper node01:2181 --topic t_cdr --from-beginning
 

查看topic某分區偏移量最大(小)值

bin/kafka-run-class.sh kafka.tools.GetOffsetShell --topic hive-mdatabase-hostsltable --time -1 --broker-list node86:9092 --partitions 0
注: time為-1時表示最大值,time為-2時表示最小值
 

增加topic分區數

為topic t_cdr 增加10個分區
bin/kafka-topics.sh --zookeeper node01:2181 --alter --topic t_cdr --partitions 10
 

刪除topic,慎用,只會刪除zookeeper中的元數據,消息文件須手動刪除

bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --zookeeper node01:2181 --topic t_cdr
 

查看topic消費進度

這個會顯示出consumer group的offset情況, 必須參數為--group, 不指定--topic,默認為所有topic
Displays the: Consumer Group, Topic, Partitions, Offset, logSize, Lag, Owner for the specified set of Topics and Consumer Group
bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker
 
required argument: [group] 
Option Description 
------ ----------- 
--broker-info Print broker info 
--group Consumer group. 
--help Print this message. 
--topic Comma-separated list of consumer 
   topics (all topics if absent). 
--zkconnect ZooKeeper connect string. (default: localhost:2181)
 
Example,
 
bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --group pv
 
Group           Topic              Pid Offset   logSize    Lag    Owner 
pv              page_visits        0   21       21         0      none 
pv              page_visits        1   19       19         0      none 
pv              page_visits        2   20       20         0      none


免責聲明!

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



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