1、查看kafka的topic
kafka-topics.sh --zookeeper localhost:2181 --list
2、创建topic
kafka-topics.sh --zookeeper localhost:2181 -create --topic topic1--partitions 1 --replication-factor 1
3、生产数据
kafka-console-producer.sh --broker-list localhost:9092 --topic topic1
向topic1发送一条包含key的消息:
echo '00000,{"name":"Steve", "title":"Captain America"}' | kafka-console-producer.sh --broker-list localhost:9092 --topic topic1 --property parse.key=true --property key.separator=,
4、消费数据
kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic1 --from-beginning 或者 kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topic1 --from-beginning
其中 --from-beginning 表示从头开始消费。
将消息的key也输出:
kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic1 --from-beginning --property print.key=true --property key.separator=,
5、消费记录offest的topic
消费__consumer_offsets
中的内容,首先需要在consumer.properties
中配置exclude.internal.topics=false
,并执行下面命令:
kafka-console-consumer.sh --zookeeper localhost:2181 --topic __consumer_offsets --from-beginning --formatter "kafka.coordinator.GroupMetadataManager$OffsetsMessageFormatter" --consumer.config ~/consumer.properties
6、topic的offest统计
kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic topic1 --time -1
其中-1表示显示获取当前offset最大值,-2表示offset的最小值
7、查看指定partition的数据
kafka-simple-consumer-shell.sh --broker-list localhost:9092 --topic topic1 --partition 1 --print-offsets --offset 18 --clientId test --property print.key=true
主要是用于遇到数据倾斜的情况,可以通过kafka-simple-consumer-shell.sh
查看具体某个partition数据内容
8、查看topic的详细信息
kafka-topics.sh -zookeeper localhost:2181 -describe -topic topic1