kafka常用命令:
【删除topic】
$KAFKA_HOME/bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic Test001
【创建kafka topic】
$KAFKA_HOME/bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic Test001 --partitions 64 --replication-factor 1
【查询主题描述】
$KAFKA_HOME/bin/kafka-topics.sh --describe --zookeeper localhost:2181
【查看所有topic列表】
$KAFKA_HOME/bin/kafka-topics.sh --zookeeper localhost:2181 --list
【查看指定topic信息】
$KAFKA_HOME/bin/kafka-topics.sh --zookeeper 10.47.85.146:2181,10.47.85.147:2181 --describe --topic Test001
【生产者】
$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Test001 (然后输入数据即可)
【消费者】
$KAFKA_HOME/bin/kafka-console-consumer.sh --zookeeper kazk1:3181 --topic Test001 --from-beginning
【kerberos kafka 用法】
【Producer】
$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Test001 --producer.config $KAFKA_HOME/config/client.properties
【Consumer】
$KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server kafkanode1:9092,kafkanode2:9092 --topic YITA3 --new-consumer --from-beginning --consumer.config $KAFKA_HOME/config/client.properties
【查询积压情况】
$KAFKA_HOME/bin/kafka-consumer-groups.sh --bootstrap-server kafkanode1:9092,kafkanode2:9092 --new-consumer --command-config $KAFKA_HOME/config/client.properties --group test01 --describe
【查询所有消费组】
$KAFKA_HOME/bin/kafka-consumer-groups.sh --bootstrap-server kafkanode1:9092,kafkanode2:9092 --command-config $KAFKA_HOME/config/client.properties --new-consumer --list
【查询指定分区,指定偏移量,指定条数】
$KAFKA_HOME/bin/kafka-simple-consumer-shell.sh --broker-list localhost:9092 --topic Test001 --partition 0 --offset 2 --max-messages 2
【导入/出数据】
$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Test001 < input.txt #导入
$KAFKA_HOME/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Test001 > output.txt #导出
【查看topic某分区偏移量最大(小)值】
$KAFKA_HOME/bin/kafka-run-class.sh kafka.tools.GetOffsetShell --topic 12345 --time -1 --broker-list localhost:9092 --partitions 0
【新消费者列表查询】【无效】
$KAFKA_HOME/bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server localhost:9092 --list #支持0.9版本+
$KAFKA_HOME/bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list #支持0.10版本+
【消费者组】
GROUP TOPIC PID OFFSET LOGSIZE LAG
消费者组 话题id 分区id 当前已消费的条数 总条数 未消费的条数
$KAFKA_HOME/bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --broker-info --group TestGroup001 --topic Test001 --zookeeper localhost:2181
【查分区数据量】
$KAFKA_HOME/bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic Test001 --time -1
$KAFKA_HOME/bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic Test001 --time -1|awk -F ':' '{s+=$3} END {print s}' #查topic数据总量
【启动kafka】
$KAFKA_HOME/bin/kafka-server-start.sh $KAFKA_HOME/config/server.properties >/dev/null 2>&1 &
【leader重新均衡】
$KAFKA_HOME/bin/kafka-preferred-replica-election.sh --zookeeper localhost:2181/kafka
【测试kafka性能】
$KAFKA_HOME/bin/kafka-producer-perf-test.sh --messages 100000 --message-size 1000 --batch-size 10000 --topics test4 --threads 1 --broker-list localhost:9092
$KAFKA_HOME/bin/kafka-producer-perf-test.sh --topic test4 --num-records 100000 --throughput 10000 --producer-props bootstrap.servers=localhost:9092 --record-size 1000
【kafka扩展分区】
【分区扩容】
$KAFKA_HOME/bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic lte_socket --partition 796
【迁移分区】
$KAFKA_HOME/bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --topics-to-move-json-file /home/alpha/kafka/json/topic-to-move.json --broker-list "0,1,2,3,4,5,6" --generate
【当前分布】【将命令输出的 “Current partition replica assignment” 保存到 backup.json】
$ vim backup.json
【变更分布】【将命令输出的 “Proposed partition reassignment configuration” 保存到 reassignment-lte_socket-0609.json】
$ vim reassignment-lte_socket-0609.json
【执行迁移】
$KAFKA_HOME/bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file /home/alpha/kafka/json/reassignment-lte_socket-0609.json --execute
【迁移验证】
# 必须全部是 successfully #
$KAFKA_HOME/bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file /home/alpha/kafka/json/reassignment-lte_socket-0609.json --verify
【查询分布】
# 分区均匀分布到全部 brokers #
$KAFKA_HOME/bin/kafka-topics.sh --zookeeper localhost:2181 --describe --topic lte_socket