kafka常见使用命令

1. 启动 Kafka 服务

启动 Kafka 服务器

bin/kafka-server-start.sh config/server.properties

作用:启动 Kafka 服务器实例,server.properties 是 Kafka 配置文件,包含了 Kafka 服务器的配置。

停止 Kafka 服务器

bin/kafka-server-stop.sh

作用:停止正在运行的 Kafka 服务器实例。

2. 管理 Kafka 主题

创建一个主题

bin/kafka-topics.sh --create --topic <topic_name> --bootstrap-server <broker_list> --partitions <num_partitions> --replication-factor <num_replica>

作用:创建一个新的 Kafka 主题。

  • --topic: 主题名称。

  • --bootstrap-server: Kafka broker 地址,格式为 host:port

  • --partitions: 主题的分区数。

  • --replication-factor: 主题的副本因子。

    bin/kafka-topics.sh --create --topic emsp-gateway --bootstrap-server 25.8.30.18:9092,25.8.30.17:9092,25.8.30.16:9092 --partitions 20 --replication-factor 3
    
    bin/kafka-topics.sh --create --topic emsp-sidecar --bootstrap-server 25.8.30.18:9092,25.8.30.17:9092,25.8.30.16:9092 --partitions 20 --replication-factor 3
    

列出所有主题

bin/kafka-topics.sh --list --bootstrap-server <broker_list>

作用:列出所有 Kafka 集群中的主题。

bin/kafka-topics.sh --list --bootstrap-server 25.8.30.18:9092,25.8.30.17:9092,25.8.30.16:9092

查看主题详情

bin/kafka-topics.sh --describe --topic <topic_name> --bootstrap-server <broker_list>

作用:查看指定主题的详细信息,包括分区、副本信息等。

删除主题

bin/kafka-topics.sh --delete --topic <topic_name> --bootstrap-server <broker_list>

作用:删除指定的 Kafka 主题。

bin/kafka-topics.sh --delete --topic emsp-sidecar --bootstrap-server 25.8.30.18:9092,25.8.30.17:9092,25.8.30.16:9092

bin/kafka-topics.sh --delete --topic emsp-emsp --bootstrap-server 25.8.30.18:9092,25.8.30.17:9092,25.8.30.16:9092

3. 管理 Kafka 消费者

查看消费者消费的偏移量

bin/kafka-consumer-groups.sh --describe --group <consumer_group> --bootstrap-server <broker_list>

作用:查看指定消费者组的消费偏移量和状态。

查看所有消费者组

bin/kafka-consumer-groups.sh --list --bootstrap-server <broker_list>

作用:列出所有的 Kafka 消费者组。

删除消费者组

bin/kafka-consumer-groups.sh --delete --group <consumer_group> --bootstrap-server <broker_list>

作用:删除指定的 Kafka 消费者组。

4. 管理 Kafka 生产者

发送消息到指定主题

bin/kafka-console-producer.sh --topic <topic_name> --bootstrap-server <broker_list>

作用:将消息发送到指定主题,通过命令行输入消息后,按回车发送。

生产者发送消息并指定分区

bin/kafka-console-producer.sh --topic <topic_name> --partition <partition_number> --bootstrap-server <broker_list>

作用:将消息发送到指定的分区。

5. 管理 Kafka 消费者

从主题中消费消息

bin/kafka-console-consumer.sh --topic <topic_name> --bootstrap-server <broker_list> --from-beginning

作用:从 Kafka 中的指定主题消费消息,--from-beginning 表示从主题的开始位置消费。

指定消费的分区

bin/kafka-console-consumer.sh --topic <topic_name> --partition <partition_number> --bootstrap-server <broker_list>

作用:从指定分区消费消息。

6. Kafka 集群监控与管理

查看集群状态

bin/kafka-broker-api-versions.sh --bootstrap-server <broker_list>

作用:查看 Kafka 集群中每个 broker 支持的 API 版本。

查看集群的详细状态

bin/kafka-mirror-maker.sh --consumer.config <config_file> --producer.config <config_file> --whitelist <topics> --num.streams <number_of_streams>

作用:用于集群间数据的复制,执行镜像同步。

查看集群日志

tail -f /var/log/kafka/server.log

作用:查看 Kafka 集群的日志文件,通常用于排查问题。

7. Kafka 主题分配与副本管理

查看分区分配情况

bin/kafka-reassign-partitions.sh --zookeeper <zookeeper_host> --reassignment-json-file <json_file> --execute

作用:查看主题分区的分配情况并执行分配操作。需要提供一个包含重新分配信息的 JSON 文件。

执行分区重新分配

bin/kafka-reassign-partitions.sh --zookeeper <zookeeper_host> --reassignment-json-file <json_file> --verify

作用:验证分区重新分配的结果。

8. Kafka 生产者与消费者测试

发送简单消息(生产者)

echo "test message" | bin/kafka-console-producer.sh --topic <topic_name> --bootstrap-server <broker_list>

作用:通过管道发送单条消息到指定的 Kafka 主题。

从主题中消费消息(消费者)

bin/kafka-console-consumer.sh --topic <topic_name> --bootstrap-server <broker_list> --from-beginning

作用:从指定主题消费消息,--from-beginning 表示从主题的最开始消费。

9. Kafka 其他常见命令

生成 topic 生产者/消费者数据

bin/kafka-producer-perf-test.sh --topic <topic_name> --broker-list <broker_list> --messages <message_count> --record-size <record_size>

作用:用于性能测试,向指定的主题发送一定数量的消息。

Kafka 集群健康检查

bin/kafka-health-check.sh --bootstrap-server <broker_list>

作用:检查 Kafka 集群的健康状况。

重置消费者组偏移量

bin/kafka-consumer-groups.sh --bootstrap-server <broker_list> --group <consumer_group> --topic <topic_name> --reset-offsets --to-earliest --execute

作用:重置消费者组的偏移量,可以将偏移量设置为最早或最新。

posted @ 2024-12-10 09:19  小熊园地  阅读(160)  评论(0)    收藏  举报