zoukankan      html  css  js  c++  java
  • kafka 常用操作

    前言

    鉴于kafka是中间件,而且它提供了一些shell命令来让我们使用。那么我就来介绍下kafka的各个命令是做什么的,常用操作有哪些。

    正文

    命令

    进入kafka的安装目录,进到bin目录下,我们发现它有很多二进制命令。常用的有以下几类:

    1 管理zookeeper的脚本

    zookeeper-server-start.sh

    zookeeper-server-stop.sh

    zookeeper-shell.sh

     

    2 管理kafka服务的脚本

    kafka-server-start.sh

    kafka-server-stop.sh

     

    3 管理kafka各topic的脚本

    kafka-topics.sh

     

    4 管理生产者、消费者情况的脚本

    kafka-console-producer.sh

    kafka-console-consumer.sh

    kafka-consumer-groups.sh

     
    还有很多,但是我就不是很熟了。所以我会针对以上几类做出使用样例来。

     
     

    使用场景

    1. 启动zk和kafka。鉴于启动kafka的前提是启动zk,所以我们需要先启动zk,后启动kafka。

      nohup sh zookeeper-server-start.sh ../config/zookeeper.properties > /var/log/zookeeper.log & 
      
      nohup sh kafka-server-start.sh ../config/server.properties > /var/log/kafka.log & 
      

      二者用的都是后台启动,通过指定特定的配置文件进行启动,且都将日志输出到了/var/log/下的日志文件中。

    2. 创建、删除topic

      #创建topic
      sh kafka-topics.sh --zookeeper localhost:2181 --create --topic test_topic --partitions 30  --replication-factor 2
      
      #删除topic
      sh bin.kafka-topics.sh --zookeeper localhost:2181 --delete --topic test_topic
      
    3. 查看所有topic信息

      sh kafka-topics.sh --zookeeper localhost:2181 --list
      
    4. 查看特定topic信息

      sh kafka-topics.sh --zookeeper localhost:2181 --topic test_topic
      
    5. kafka查看consumer group状态

      sh kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group mygroup --describe
      
    6. 控制台消费topic的数据

      sh kafka-console-consumer.sh --zookeeper localhost:2181  --topic test_topic --from-beginning
      
    7. 控制台想topic生产数据

      sh kafka-console-producer.sh --broker-list localhost:9092 --topic test_topic
      
    8. kafka清除分区的offset

      sh kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test_topic --reset-offsets --all-topics --to-latest --execute
      
      ##清理kafka分区的offset的前提是无应用占用此分区,否则会有下面的报错
      Error: Assignments can only be reset if the group 'real_time_product_group' is inactive, but the current state is Stable.
      
      
  • 相关阅读:
    『Asp.Net 组件』第一个 Asp.Net 服务器组件:自己的文本框控件
    『Asp.Net 组件』Asp.Net 服务器组件 的开发优势和劣势
    『开源』简单的代码统计工具 开源啦[有图有真相]
    文件中的类都不能进行设计,因此未能为该文件显示设计器。设计器检查出文件中有以下类: FormMain --- 未能加载基类
    DB2:FETCH FIRST 1 ROWS ONLY
    IEnumerable的几个简单用法
    一个字符串中包含逗号个数
    字符串处理总结之一(C#String类)
    C# 中DateTime的各种使用
    C# 键值对类相关
  • 原文地址:https://www.cnblogs.com/young233/p/12981506.html
Copyright © 2011-2022 走看看