- 创建topic
- 指定副本数量,分区数量
kafka-topics.sh --zookeeper lx01:2181 --create --partitions 2 --replication-factor 3 --topic tpc01 #partitions 分区数量 #replication-factor 副本数量 #topic 所要创建的topic名称
- 指定副本存储位置
kafka-topics.sh --zookeeper lx01:2181 --create --replica-assignment 0:1,1:2 --topic tpc02 #注意点:当使用'--replica-assignment'这个命令时,不再需要指定分区数量和副本数量,kafka会根据'--replica-assignment'后面的参数自动获取分区和副本的信息 #参数格式:<broker_id_for_part1_replica1 : broker_id_for_part1_replica2,broker_id_for_part2_replica1 : broker_id_for_part2_replica2,…> #以','区分分区数量,':'前后为该分区的副本所存储的broker
- 指定副本数量,分区数量
- 查看topic
- 查看当前存在的topic
kafka-topics.sh --zookeeper lx01:2181 --list
- 查看某个topic的详细信息
kafka-topics.sh --zookeeper lx01:2181 --describe --topic tpc02 #从topic的详细信息中可以看出,topic的分区数量,以及每个分区的副本数量,以及每个副本所在的broker节点,以及每个分区的leader副本所在broker节点,以及每个分区的ISR副本列表 #ISR:in sync replicas 同步副本(当然也包含leader自身) #OSR:out of sync replicas 失去同步的副本(数据与leader之间的差距超过配置的阈值)
- 查看当前存在的topic
- 删除topic
./kafka-topics.sh --zookeeper lx01:2181 --delete --topic tpc02 #在执行删除命令后,topic并不会被马上删除,会被标记上删除,这里的删除的异步的 #并且删除后悔提示'ote: This will have no impact if delete.topic.enable is not set to true',delete.topic.enable这个参数的值如果为false删除则是无效的,默认是true,在server.properties文件中可以配置
- 增加分区数量
kafka-topics.sh --zookeeper lx01:2181 --alter --topic tpc02 --partitions 5 # kafka只支持增加分区数量,不支持减少分区数量
- 开启生产者
kafka-console-producer.sh --broker-list lx01:9092 --topic tpc02
- 开启消费者
kafka-console-consumer.sh --bootstrap-server lx01:9092 --from-beginning --topic tpc02 #这里的from-beginning是指从头开始消费这个topic的数据,也可以通过'--offset' 和'--partition'来指定消费的起始偏移量和消费的分区
Kafka命令行简单使用
于 2022-05-12 01:03:33 首次发布