文章目录

  • 前言
    • 1. 基础概念
      • Broker
      • Producer
      • Consumer
      • Consumer Group
      • Topic
      • Partition
      • Replica
    • 2. 命令行操作
      • 2.1 查看所有topic
      • 2.2 创建topic
      • 2.3 删除topic
      • 2.4 查看某个Topic的详情
      • 2.5 修改分区数
      • 2.6 发送消息
      • 2.7 消费消息
      • 2.8 查看消费者组
      • 2.9 更新消费者的偏移位置

前言

kafka官网


1. 基础概念

Broker

  一台kafka服务器就是一个broker,可容纳多个topic。一个集群由多个broker组成;

Producer

  生产者,即向kafka的broker-list发送消息的客户端;

Consumer

  消费者,即向kafka的broker-list订阅消息的客户端;

Consumer Group

  消费者组是逻辑上的一个订阅者,由多个consumer组成。消费者组内每个消费者负责消费不同分区的数据,一个分区只能由一个组内消费者消费;所有的消费者都属于某个消费者组,消费者组之间互不影响;

Topic

  可理解为一个队列,生产者和消费者均面向一个topic;

Partition

  一个topic可以分为多个partition,每个partition是一个有序的队列;这使得一个topic可分布到多个broker(即服务器)上,

Replica

  副本,kafka提供了副本机制,一个topic的每个分区都有若干个副本,即一个leader和若干个follower,从而保证集群单点故障时节点上的partition数据不丢失
leader:每个分区多个副本的生产者发送数据的对象,以及消费者消费数据的对象都是leader
follower:实时从leader中同步数据,保持和leader数据的同步。leader发生故障时,某个follower会成为新的leader


2. 命令行操作

2.1 查看所有topic

./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --list

2.2 创建topic

./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.110:29092 --create --replication-factor 3 --partitions 3 --topic
charges

--topic 定义topic名
--replication-factor 定义副本数
--partitions 定义分区数

2.3 删除topic

./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --delete --topic charges

2.4 查看某个Topic的详情

./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --describe --topic charges

2.5 修改分区数

./kafka-topics.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --alter --partitions 6 --topic charges


2.6 发送消息

./kafka-console-producer.sh --broker-list 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --topic charges


2.7 消费消息

./kafka-console-consumer.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --from-beginning  --topic charges --group htsc

--from-beginning:若消费者没有offset,则从 the earliest message present in the log 而非默认的 the latest message
--group : 指定消费者所属的消费者组

注:默认情况下,若zookeeper或__consumer_offsets中有offset记录,则Kafka消费者从最后一次提交的偏移量位置(offset)开始消费消息。若之前没有提交过偏移量,则消费消息开始位置取决于Topic的配置属性auto.offset.reset的设置,默认为最新(latest 仅消费新消息


2.8 查看消费者组

./kafka-consumer-groups.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --list

./kafka-consumer-groups.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --describe --group htsc


注: 通过查看消费者组,可查看到topic所有分区当前的偏移量以及LOG-END-OFFSET(最后的偏移量),即消费消息的现状

2.9 更新消费者的偏移位置

  将topic charges对应的消费组htsc 的分区编号0的偏移量设置为最早

./kafka-consumer-groups.sh --bootstrap-server 192.168.0.23:29092,192.168.0.114:29092,192.168.0.110:29092 --topic charges:0 --group htsc --reset-offsets --to-earliest --execute

--reset-offsets Reset offsets of consumer group

--to-earliest Reset offsets to earliest offset
--to-latest Reset offsets to latest offset.
--to-offset <Long: offset> Reset offsets to a specific offset


kafka 基础概念、命令行操作(查看所有topic、创建topic、删除topic、查看某个Topic的详情、修改分区数、发送消息、消费消息、 查看消费者组 、更新消费者的偏移位置)相关推荐

  1. kafka _命令行操作

    kafka _命令行操作 #启动zk zkServer.start #启动kafka kafka-server-start.sh -daemon /opt/kafka/config/server.pr ...

  2. Kafka 生产者、消费者命令行操作

    Kafka 生产者.消费者命令行操作 1.查看操作生产者命令参数 bin/kafka-console-producer.sh 参数 --bootstrap-server <String: ser ...

  3. 【kafka】三、kafka命令行操作

    kafka命令行操作 kafka的相关操作命令脚本文件在bin目录下 查看所有的topic kafka-topics.sh --zookeeper hll1:2181 --list 或 kafka-t ...

  4. 简单的kafka命令行操作

    目录 一.主题topic命令行操作 1.查看操作主题的命令参数 2.连接kafka地址,创建名为kaf的主题,指定分区和副本数量 3.查看所有主题的名称 4.查看主题的详细信息 5.修改主题(修改分区 ...

  5. 数据仓库 — 07_Kafka的安装与部署(Kafka命令行操作指令、Kafka集群群起脚本、压力测试、节点数量计算、hadoop_zookeeper_flume_kafka群起脚本、默认端口总结)

    文章目录 1 Kafka的安装与配置 2 Kafka命令行操作 2.1 查看当前服务器中的所有topic 2.2 创建topic 2.3 删除topic 2.4 发送消息 2.5 消费消息 2.6 查 ...

  6. linux基础命令行操作【1】

    目录 1.基本命令 2.文件相关知识 3.文本相关操作 4.文件解压.压缩.打包命令 1.基本命令 Ctrl+A/t+Fn+F6:管理Linux(Fn+数字) Linux:输入密码是不显示 Alt+F ...

  7. kafka 命令行操作大全

    kafka 命令行操作大全 一.集群相关常用命令 二.topic相关常用命令 2.1 脚本&参数简介 2.2 举例 三.生产者命令行常用操作 3.1 脚本&参数简介 3.2 举例发送消 ...

  8. 命令行操作MySQL - 《表索引》汇总

    这是命令行操作MySQL数据库系列博客的第十二篇,今天这篇博客记录<表索引>如何进行操作.(普通索引.唯一索引.全文索引.多列索引.隐藏索引.删除索引和修改索引) 目录 索引概述 创建和查 ...

  9. 大数据6_03_Kafka命令行操作

    3 Kafka命令行操作 总结: # 和topic有关的命令:都使用 kafka-topics-sh --zookeeper hadoop102:2181 + 操作 # 和生产消息有关的:使用brok ...

最新文章

  1. Cascade RPN,结构的艺术带来极致提升 | NeurIPS 2019
  2. Android init.rc文件格式解析
  3. 一份平民化的应用性能优化检查列表(完整篇)--转
  4. 服务器之select
  5. java中间件是什么意思_数据库中间件漫谈
  6. 002 ceph的deploy部署
  7. xcode5切换IOS7,IOS6,IOS5模拟器
  8. 能自动更新的万能周报模板,有手就会用!
  9. 跨境电商erp系统一套多少钱,电商erp系统多少钱一年
  10. 计算机网络第七版 第四章课后答案
  11. 移动端日历插件_“滴答清单”移动端产品分析报告
  12. java 泛型 参数传递子类_超类的Java泛型,但并非所有子类都想定义类型参数
  13. 单峰排列 Codeforces C. Cyclic Permutations
  14. ie8 ajax 缓存问题,IE8/IE9下Ajax缓存问题
  15. Android WebService(基于SOAP协议)个人记录总结
  16. Linux 命令小记
  17. 爱无尽头,爱无尽头在线观看,免费在线看
  18. 微机原理复试面试(一)
  19. 日均调用量超13亿次,阿里达摩院研发全球首个实时翻译直播-1
  20. Python爬虫从入门到精通─第2课 Requests库讲解

热门文章

  1. 连接手表_小米手表连接苹果手机即将支持读取天气数据
  2. 辐射3游戏登录是提示计算机丢失xlive.dll文件,玩辐射3提示丢失xlive.dll怎么办 辐射3丢失xlive.dll的解决方法...
  3. Eclipse 安装Server-Apache Tomcat
  4. 高通平台手机开发之充电
  5. 给自己的软件添加参数配置文件*.ini
  6. go语言gob序列化指针无法寻址报错
  7. 百度知道问答推广秘笈.doc
  8. 数据透视表里填充重复项_数据透视表填充颜色消失
  9. 黑猫带你学eMMC协议第8篇:eMMC供电情况详解(power)
  10. 云渲染是什么?云渲染对于物理渲染有什么好处?