kafka常用命令整理

1、启动kafka服务

bin/kafka-server-start.sh config/server.properties &

2、停止kafka服务

./kafka-server-stop.sh

3、创建一个叫demo-topic的主题(topic),有两个分区,每个分区3个副本,同时指定该主题的消息保留时长(72小时)

./kafka-topics.sh --zookeeper(host:port) --create --topic demo-topic --replication-factor 3 --partitions 2 --config retention.ms=259200000

4、列出指定主题(topic)的详细信息

./kafka-topics.sh  --zookeeper(host:port) --describe  --topic demo-topic 

5、查看所有的主题

./kafka-topics.sh --list --zookeeper(host:port) kafka-host(host:port)

6、查看所有主题的详细信息

./kafka-topics.sh --zookeeper(host:port) --describe

7、删除一个主题

./kafka-topics.sh --zookeeper(host:port) --topic demo-topic --delete 

8.向kafka指定topi写入数据

./kafka-console-producer.sh --broker-list kafka-host(host:port)--topic demo-topic

9、命令行消费某个topic消息

#加了--from-beginning 从头消费所有消息
./kafka-console-consumer.sh --bootstrap-server kafka-host(host:port) --topic demo-topic --from-beginning   
#不加--from-beginning 从最新的一条消息开始消费
./kafka-console-consumer.sh --bootstrap-server kafka-host(host:port) --topic demo-topic 

10、查看某个topic对应的消息数量

# time为-1时表示最大值,time为-2时表示最小值 --partitions num 指定分区
./kafka-run-class.sh  kafka.tools.GetOffsetShell --broker-list kafka-host(host:port) --topic demo-topic --time -1

11、kafka重置分组已经消费的偏移量offest

./kafka-consumer-groups.sh --bootstrap-server=kafka-host(host:port) --execute --reset-offsets --topic=demo-topic --group=testPlatform --to-earliest

12、topic增加分区

./kafka-topics.sh --alter --zookeeper(host:port) --topic demo-topic --partitions 12

13、指定topic创建消费者分组

./kafka-console-consumer.sh  --bootstrap-server=kafka-host(host:port) --topic demo-topic --consumer-property group.id=testPlatform

14、查看消费组组所属topic的消费情况

./kafka-consumer-groups.sh --bootstrap-server=kafka-host(host:port)  --group=demo-group --describ

15、显示所有消费者

./kafka-consumer-groups.sh --bootstrap-serverkafka-host(host:port) --list

16、获取正在消费的topic的group的offset

./kafka-consumer-groups.sh --describe --group demo-group --bootstrap-serverkafka-host(host:port)

17、重设 consumer group的offset

确定topic作用域:
 --all-topics   为consumer group下所有topic的所有分区调整位移
 --topic t1 --topic t2  为指定的若干个topic的所有分区调整位移
 --topic t1:0,1,2     为指定的topic分区调整位移

确定位移重设策略
--to-current                            把位移调整到分区当前位移.       
--to-datetime <String: datetime>       把位移调整到大于给定时间的最早位移处.datetime. Format: 'YYYY-MM-DDTHH:mm:SS.sss'  2020-07-01T12:00:00.000
--to-earliest                           把位移调整到分区当前最小位移
--to-latest                             把位移调整到分区当前最新位移        
--to-offset <Long: offset>              把位移调整到指定位移处
--shift-by N: 把位移调整到当前位移 + N处,注意N可以是负数,表示向前移动
--by-duration <duration>:把位移调整到距离当前时间指定间隔的位移处,duration格式是PnDTnHnMnS,比如PT0H5M0S
--from-file <file>:从CSV文件中读取调整策略
例:(--dry-run 不运行只查看结果,类似k8s里面;--execute执行)
按时间点重置(--to-datetime)
./kafka-consumer-groups.sh --bootstrap-server=localhost:9092 --topic=test --group=testPlatform  --execute --reset-offsets --to-datetime 2022-01-18T12:00:00.000 

按offset重置 (--to-offset )
重置消费组下指定topic
./kafka-consumer-groups.sh --bootstrap-server=localhost:9092 --topic=test --group=testPlatform --execute --reset-offsets --to-offset 359905139  

重置消费组下面所以topic
./kafka-consumer-groups.sh --bootstrap-server=localhost:9092 --all-topics --group testPlatform --reset-offsets  --to-latest  --execute

18、指定offset与partition导出消息

./kafka-console-consumer.sh --bootstrap-server=kafka-host(host:port) --topic --topic=demo-topic  --offset 825000 --partition 0 >> messages.log

19.修改topic的参数

kafka-configs.sh --zookeeper(host:port) --entity-type topics --entity-name demo-topic --alter --add-config max.message.bytes=1048576

20.测试生产者性能脚本

./kafka-producer-perf-test.sh --topic demo-topic --num-records 10000000 --throughput -1 --record-size 1024 --producer-props bootstrap.servers=kafka-host(host:port) acks=-1 linger.ms=2000 compression.type=lz4

21.测试消费者性能脚本

./kafka-consumer-perf-test.sh --broker-list kafka-host(host:port) --messages 10000000 --topic demo-topic
  • 6
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Kafka是一个分布式流式数据平台,用于高效地存储、处理和传输实时的流式数据。Kafka2.2是Kafka的一个特定版本,提供了一系列的命令,用于管理和操作Kafka集群。下面是对Kafka2.2命令文档的回答。 Kafka2.2命令文档包含了一些重要的命令,用于配置、启动和监控Kafka集群。其中包括以下几个主要的命令: 1. bin/kafka-topics.sh:该命令用于创建、修改和管理Kafka的topic。可以使用该命令来创建新的主题、查看已存在的主题以及删除主题。通过该命令可以设置主题的分区数和副本因子等属性。 2. bin/kafka-console-producer.sh:这个命令用于从终端输入数据并将其作为消息发送到指定的topic中。通过该命令可以模拟消息的生产者,并向Kafka集群发送消息。 3. bin/kafka-console-consumer.sh:该命令用于从指定的topic中消费消息,并将其打印到终端。可以使用该命令来模拟消息的消费者,并从Kafka集群中接收消息。 4. bin/kafka-consumer-groups.sh:该命令用于管理和监控消费者组。可以使用该命令查看消费者组的偏移量(offset)和消费的速度,以便进行调优和监控。 5. bin/kafka-configs.sh:该命令用于管理Kafka集群的配置文件。可以使用该命令来修改Kafka集群的配置,例如增加或删除broker、修改主题的配置等。 Kafka2.2命令文档还包含了其他一些命令,用于执行一些高级管理操作,例如复制和迁移分区、生成和消费压缩的消息等。 总之,Kafka2.2命令文档提供了一系列命令,用于管理和操作Kafka集群。通过这些命令,用户可以方便地创建、修改和管理Kafka的topic,发送和接收消息,以及进行集群的监控和调优。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张折耳

此处应有打赏,就看兄弟你的了!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值