Kafka常用shell命令集合
2020-06-09 本文已影响0人
小胡子哥灬
topic相关
- 查看topic列表
./kafka-topics.sh --zookeeper zk-ip:2181 --list
- 创建topic
# 创建了一个topicName为 ShizcTest , 分区数为3,副本数为3的topic
./kafka-topics.sh --zookeeper zk-ip:2181 --create --topic ShizcTest --partitions 3 --replication-factor 3
# 只有当ShizcTest不存在时 才创建
./kafka-topics.sh --zookeeper zk-ip:2181 --create --if-not-exists --topic ShizcTest --partitions 3 --replication-factor 3
- 查看topic信息
./kafka-topics.sh --zookeeper zk-ip:2181 --topic ShizcTest --describe
# 输出
Topic:ShizcTest PartitionCount:3 ReplicationFactor:3 Configs:
Topic: ShizcTest Partition: 0 Leader: 149 Replicas: 149,148,147 Isr: 148,149,147
Topic: ShizcTest Partition: 1 Leader: 147 Replicas: 147,149,148 Isr: 148,149,147
Topic: ShizcTest Partition: 2 Leader: 148 Replicas: 148,147,149 Isr: 148,149,147
- 删除topic
# server.properties需要配置delete.topic.enable=true
./kafka-topics.sh --zookeeper zk-ip:2181 --delete --topic ShizcTest
#彻底删除topic
1. 登录 zookeeper客户端: rmr /brokers/topics/【topic name】
2. 删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录
Consumer相关
- 消费kafka
# 重头消费数据
./kafka-console-consumer.sh --bootstrap-server 【broker-list】 --topic ShizcTest --from-beginning
Producer相关
- 发送数据
./kafka-console-producer.sh --broker-list 【broker-list】 --topic ShizcTest
# 利用linux的管道,读取文件json发送到kafka(可以解决命令行对字符长度的限制)
cat data.json | ./kafka-console-producer.sh --broker-list 【broker-list】 --topic ShizcTest
Group相关
# 查看group-id的每个topic的消费情况。
./kafka-consumer-groups.sh --bootstrap-server 【broker-list】 --group 【group-id】--describe
#输出
TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
ShizcTest 2 1481043 1481043 0 - - -
ShizcTest 1 1481040 1481040 0 - - -
ShizcTest 0 1481040 1481040 0 - - -
持续更新中...