u1timate
Published on 2022-03-26 / 234 Visits
0

Kafka常用命令

记录开发过程中用kafka进行测试常用的命令

1 启动kafka 以Mac为例

源码安装的情况下(brew安装可以以服务的方式管理)

  • 先进入kafka安装目录下的bin目录

  • 先启动zookeeper
    zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties

  • 在启动kafka-server
    kafka-server-start /usr/local/etc/kafka/server.properties

2 与测试的相关命令

2.1 kafka自带的消费者命令

kafka-console-consumer.sh --bootstrap-server node1:9092 --topic my-kafka-topic

2.2 生产者性能测试

./kafka-producer-perf-test --topic test --num-records 500000 --record-size 200 --throughput -1 --producer-props bootstrap.servers=localhost:9092 acks=1 //随机产生多少条记录,每条记录打大小是多少

2.3 手工生产数据 自定义测试

./kafka-console-producer --broker-list localhost:9092 --topic test

3 kafka topic删除

如果要完全删除数据,首先需要将server.properties配置修改
delete.topic.enable=true //如果不改为true,删除的时候只是标记,并不会真正的删除

调用命令删除
./bin/kafka-topics --delete --zookeeper 【zookeeper server:port】 --topic 【topic name】
最后删除kafka存储目录(server.properties文件log.dirs配置,默认为"/data/kafka-logs")相关topic的数据目录。(如果没有找到的话,说明已经删除成功了)
注意:如果kafka 有多个 broker,且每个broker 配置了多个数据盘(比如 /data/kafka-logs,/data1/kafka-logs ...),且topic也有多个分区和replica,则需要对所有broker的所有数据盘进行扫描,删除该topic的所有分区数据。