使用 kafka 的脚本对 kafka 进行操作

原文地址 http://www.shixinke.com/mq/kafka-shell-tools-usage

一张图概括 kafka 主要脚本的用法:

image

一、主题管理

主题 topic 的管理主要通过kafka-topics.sh这个脚本进行操作

1. 创建主题

./kafka-topics.sh --create --zookeeper <host:port> --topic <topicName> --partitions <partitionsNum> --replication-factor <replicaNum>

  • create : 表示这是一个创建命令
    • —zookeeper :指定 zookeeper 的地址
    • —topic : 指定创建的主题名称 (主题名称不要同时包含. 或下划线_)
    • —partitions : 指定创建的主题的分区数量
    • —replication-factor : 创建的主题的副本数
./kafka-topics.sh --create  --zookeeper 127.0.0.1:2181 --topic user_reg --replication-factor 1 --partitions 2

2. 查看主题列表

./kafka-topics.sh --list --zookeeper <host:port>

  • list : 表示这是一个查看命令
    • —zookeeper :指定 zookeeper 的地址
./kafka-topics.sh --list  --zookeeper 127.0.0.1 2181

如果有主题存在,则显示主题列表:

user_delete
user_reg
user_update

3. 查看主题详细信息
(1) 查看所有主题

./kafka-topics.sh --describe --zookeeper <host:port>

(2) 查看指定的主题

./kafka-topics.sh --describe --zookeeper <host:port> --topic <topicName>

  • 查看单个主题
./kafka-topics.sh --describe  --zookeeper 127.0.0.1 2181 --topic user_reg

  • 查看多个主题

注:当需要查看多个主题时,使用,进行连接

./kafka-topics.sh --describe  --zookeeper 127.0.0.1 2181 --topic user_reg,user_update

结果如下:

Topic:user_reg    PartitionCount:2    ReplicationFactor:1    Configs:
    Topic: user_reg    Partition: 0    Leader: 0    Replicas: 0    Isr: 0
    Topic: user_reg    Partition: 1    Leader: 0    Replicas: 0    Isr: 0
Topic:user_update    PartitionCount:2    ReplicationFactor:1    Configs:
    Topic: user_update    Partition: 0    Leader: 0    Replicas: 0    Isr: 0
    Topic: user_update    Partition: 1    Leader: 0    Replicas: 0    Isr: 0

4. 删除主题

./kafka-topics.sh --delete --zookeeper <host:port> --topic <topicName>

  • 删除单个主题
./kafka-topics.sh --delete  --zookeeper 127.0.0.1 2181 --topic user_reg

  • 删除多个主题

注:当需要删除多个主题时,使用,进行连接

./kafka-topics.sh --delete  --zookeeper 127.0.0.1 2181 --topic user_reg,user_update

二、生产者管理

1. 生产消息

./kafka-console-producer.sh --broker-list <host:port> --topic <topicName>

  • —broker-list : 指定 broker 的地址
  • —topic : 指定主题名称
./kafka-console-producer.sh --borker-list localhost:9092 --topic user_reg

image

三、消费者管理

1. 消费消息

./kafka-console-consumer.sh --bootstrap-server <host:port> --topic <topicName>

  • —bootstrap-server : 连接的 broker 地址
  • —topic : 消费的主题
  • —from-beginning : 从开始消费
./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic user_reg --from-beginning

image

四、broker 服务管理

1. 服务启动

./kafka-server-start.sh -daemon <configPath>

  • -daemon : 表示以守护进程的形式来启动服务 (后台服务)
  • 指定配置文件
./kafka-server-start.sh -daemon /opt/kafka/config/server.properties

2. 服务停止
./kafka-server.stop.sh

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • kafka安装目录下的bin目录包含了很多运维可操作的shell脚本,列举如下: 接下来详细说明每个脚本的使用方法...
    阿飞的博客阅读 9,889评论 5 15
  • 一、入门1、简介Kafka is a distributed,partitioned,replicated com...
    HxLiang阅读 3,458评论 0 9
  • 什么是消息系统? 早期两个应用程序间进行消息传递需要保证两个应用程序同时在线,并且耦合度很高。为了解决应用程序不在...
    Java小铺阅读 1,244评论 0 2
  • 看了看,上次写还是9月20号,这次写已经10月9日了,其实算算也没多长时间,只是感觉过了很长时间,这段时间...
    洁儿洁儿洁儿阅读 233评论 1 0
  • 风悠悠地,吹在脸上很舒服,头发丝也欢快地跳着舞,当然还有那只空荡荡右臂的衣袖,随风惬意摇晃着,她右侧额头的伤口已经...
    燕纪事阅读 264评论 3 1