脚本列表
1 | connect-distributed kafka-consumer-perf-test kafka-reassign-partitions kafka-verifiable-producer |
kafka-broker-api-versions
1 | kafka-broker-api-versions --bootstrap-server localhost:9092 |
- kafka-broker-api-versions脚本用于验证不同Kafka版本之间服务器和客户端的适配性
Produce(0): 0 to 7 [usable: 7]
- Produce请求,序号为0,表示Kafka所有请求类型中的第一号请求
0 to 7
表示Produce请求在Kafka 2.3中总共有8个版本usable: 7
表示当前连入这个Broker的客户端API能够使用的版本号是7,即最新版本
- 在0.10.2.0之前,Kafka是单向兼容的,即高版本的Broker能够处理低版本Client发送的请求,反正则不行
- 从0.10.2.0开始,Kafka正式支持双向兼容,即低版本的Broker也能处理高版本Client的请求
kafka-console-producer
1 | $ kafka-console-producer --broker-list localhost:9092 --topic zhongmingmao --request-required-acks -1 --producer-property compression.type=lz4 |
kafka-console-consumer
如果没有指定group
,每次运行Console Consumer,都会自动生成一个新的消费者组(console-consumer开头)来消费--from-beginning
等同于将Consumer端参数auto.offset.reset
设置为Earliest
(默认值为Latest
)
1 | $ kafka-console-consumer --bootstrap-server localhost:9092 --topic zhongmingmao --group zhongmingmao --from-beginning --consumer-property enable.auto.commit=false |
kafka-producer-perf-test
向指定专题发送1千万条消息,每条消息大小为1KB,一般关注99th分位即可,可以作为该生产者对外承诺的SLA
1 | $ kafka-producer-perf-test --topic zhongmingmao --num-records 10000000 --throughput -1 --record-size 1024 --producer-props bootstrap.servers=localhost:9092 acks=-1 linger.ms=2000 compression.type=lz4 |
kafka-consumer-perf-test
1 | $ kafka-consumer-perf-test --broker-list localhost:9092 --messages 10000000 --topic zhongmingmao |
查看主题消息总数
1 | $ |
查看消息文件数据
--files
显式的是消息批次或消息集合的元数据信息
1 | $ kafka-dump-log --files /usr/local/var/lib/kafka-logs/zhongmingmao-0/00000000000000000000.log | head -n 10 |
--deep-iteration
用于查看每条具体的消息
1 |
|
--print-data-log
用于查看消息里面的实际数据
1 | $ kafka-dump-log --files /usr/local/var/lib/kafka-logs/zhongmingmao-0/00000000000000000000.log --deep-iteration --print-data-log | head -n 8 |
查询消费者组位移
CURRENT-OFFSET
表示该消费者当前消费的最新位移,LOG-END-OFFSET
表示对应分区最新生产消息的位移
1 | $ kafka-consumer-groups --bootstrap-server localhost:9092 --describe --group zhongmingmao |