`

KAFKA

 
阅读更多

Kafka核心组件
  Topic:消息根据Topic进行归类,可以理解为一个队里。
  Producer:消息生产者,就是向kafka broker发消息的客户端。
  Consumer:消息消费者,向kafka broker取消息的客户端。
  broker:每个kafka实例(server),一台kafka服务器就是一个broker,一个集群由多个broker组成,一个broker可以容纳多个topic。
  Zookeeper:依赖集群保存meta信息。

 

测试实例:

  1. 查看topic 列表(--zookeeper 指定任意一个zk节点即可,也可以全部列出,用于获取集群信息) 
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-topics.sh --zookeeper slave227:2181,slave223:2181,slave228:2181 --describe

  2. 创建topic(--replication-factor表示复制到多少个节点,--partitions表示分区数,一般设置为2或与节点数相等,不能大于总节点数)
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-topics.sh --zookeeper slave227:2181,slave223:2181,slave228:2181 --create --topic topic1 --replication-factor 2 --partitions 2

  3. 发送消息(--topic 指定topic ,--6667端口按个人配置的listeners监听端口)
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-console-producer.sh --broker-list 172.69.1.221:6667  --topic topic1
    >message1
    >message2

  4. 消费消息
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-console-consumer.sh --zookeeper slave227:2181,slave223:2181,slave228:2181 --topic topic1 
    或者
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-console-consumer.sh --zookeeper slave227:2181,slave223:2181,slave228:2181 --topic topic1 --from-beginning

  5. replica检查
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-replica-verification.sh --broker-list master:6667

  6. 查询已创建的topic
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-topics.sh --zookeeper slave227:2181,slave223:2181,slave228:2181 --list
删除topic以及清除topic数据
  1. Kafka 删除topic(如果kafaka启动时加载的配置文件中server.properties没有配置delete.topic.enable=true,那么此时的删除并不是真正的删除,而是把topic标记为:marked for deletion)
    /usr/hdp/2.6.5.0-292/kafka/bin/kafka-topics.sh  --delete --zookeeper 【zookeeper server】  --topic 【topic name】

  2. zookeeper client 删除topic(通过zookeeper-client 删除掉broker下的topic)
    /usr/hdp/2.6.5.0-292/zookeeper/bin/zkCli.sh -server slave227:2181,slave223:2181,slave228:2181
    找到topic所在的目录:ls /brokers/topics
    找到要删除的topic,执行命令:rmr /brokers/topics/【topic name】即可,此时topic被彻底删除。
    另外被标记为marked for deletion的topic你可以在zookeeper客户端中通过命令获得:ls /admin/delete_topics/【topic name】,如果你删除了此处的topic,那么marked for deletion 标记消失

  3. 最后删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录

  4. 清楚topic数据
    log.cleanup.policy=delete启用删除策略
    直接删除,删除后的消息不可恢复。可配置以下两个策略:
    清理超过指定时间清理:  
    log.retention.hours=16
    超过指定大小后,删除旧的消息:
    log.retention.bytes=1073741824
    为了避免在删除时阻塞读操作,采用了copy-on-write形式的实现,删除操作进行时,读取操作的二分查找功能实际是在一个静态的快照副本上进行的,这类似于Java的CopyOnWriteArrayList。
    主要看server.properties配置
    log.cleanup.interval.mins=10
    log.dirs=/kafka-logs
    log.index.interval.bytes=4096
    log.index.size.max.bytes=10485760
    log.retention.bytes=-1
    log.retention.hours=168
    log.roll.hours=168
    log.segment.bytes=1073741824

 总结:

彻底删除topic:

 1、删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录

  2、如果配置了delete.topic.enable=true直接通过命令删除,如果命令删除不掉,直接通过zookeeper-client 删除掉broker下的topic即可。

分享到:
评论

相关推荐

    kafka客户端生产者消费者kafka可视化工具(可生产和消费消息)

    一共包含两个程序,分别是Kafka生产者工具、Kafka消费者工具。 1、使用bootstrap、userName、password连接kafka。 2、可使用text、json格式发送topic消息。 3、异步producer、customer,收发消息畅通无阻。 Kafka...

    Kafka技术内幕-图文详解Kafka源码设计与实现

    Kafka自LinkedIn开源以来就以高性能、高吞吐量、分布式的特性著称,本书以0.10版本的源码为基础,深入分析了Kafka的设计与实现,包括生产者和消费者的消息处理流程,新旧消费者不同的设计方式,存储层的实现,协调者...

    Kafka技术内幕:图文详解Kafka源码设计与实现(完整版)

    Kafka自LinkedIn开源以来就以高性能、高吞吐量、分布式的特性著称,本书以0.10版本的源码为基础,深入分析了Kafka的设计与实现,包括生产者和消费者的消息处理流程,新旧消费者不同的设计方式,存储层的实现,协调者...

    kafkapython教程-Kafka快速入门(十二)-Python客户端.pdf

    kafkapython教程_Kafka快速⼊门(⼗⼆)——Python客户端 Kafka快速⼊门(⼗⼆)——Python客户端 ⼀、confluent-kafka 1、confluent-kafka简介 confluent-kafka是Python模块,是对librdkafka的轻量级封装,⽀持Kafka ...

    kafka-clients-2.0.0-API文档-中文版.zip

    赠送jar包:kafka-clients-2.0.0.jar; 赠送原API文档:kafka-clients-2.0.0-javadoc.jar; 赠送源代码:kafka-clients-2.0.0-sources.jar; 赠送Maven依赖信息文件:kafka-clients-2.0.0.pom; 包含翻译后的API文档...

    Kafka可视化工具offsetExplore2

    offsetExplore2 实际上是 Kafka 的一个工具,用于管理和监控 Apache Kafka 中的偏移量(offset)。在 Kafka 中,偏移量是用来标识消费者在一个特定分区中的位置的标识符,它可以用来记录消费者消费消息的进度。 ...

    kafka_2.11-0.10.0.1-API文档-中文版.zip

    赠送jar包:kafka_2.11-0.10.0.1.jar; 赠送原API文档:kafka_2.11-0.10.0.1-javadoc.jar; 赠送源代码:kafka_2.11-0.10.0.1-sources.jar; 赠送Maven依赖信息文件:kafka_2.11-0.10.0.1.pom; 包含翻译后的API文档...

    kafka-clients-2.4.1-API文档-中文版.zip

    赠送jar包:kafka-clients-2.4.1.jar; 赠送原API文档:kafka-clients-2.4.1-javadoc.jar; 赠送源代码:kafka-clients-2.4.1-sources.jar; 赠送Maven依赖信息文件:kafka-clients-2.4.1.pom; 包含翻译后的API文档...

    Kafka实例Kafka实例

    kafka

    Kafka常见问题整理

    1、Kafka如何防止数据丢失 1)消费端弄丢数据 ​ 消费者在消费完消息之后需要执行消费位移的提交,该消费位移表示下一条需要拉取的消息的位置。Kafka默认位移提交方式是自动提交,但它不是在你每消费一次数据之后就...

    Maven项目整合Kafka

    使用Maven整合Kafka 包括生产者,消费者 Kafka各种配置 //1.设置参数 Properties props = new Properties(); props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "81.68.232.188:9092,81.68.232.188:9093,81...

    Kafka技术内幕图文详解源码设计与实现

    Kafka自LinkedIn开源以来就以高性能、高吞吐量、分布式的特性著称,本书以0.10版本的源码为基础,深入分析了Kafka的设计与实现,包括生产者和消费者的消息处理流程,新旧消费者不同的设计方式,存储层的实现,协调者...

    kafka-clients-2.0.0-API文档-中英对照版.zip

    赠送jar包:kafka-clients-2.0.0.jar; 赠送原API文档:kafka-clients-2.0.0-javadoc.jar; 赠送源代码:kafka-clients-2.0.0-sources.jar; 赠送Maven依赖信息文件:kafka-clients-2.0.0.pom; 包含翻译后的API文档...

    下载慢?给你Kafka 2.xx所有版本下载的百度网盘链接

    kafka_2.11-2.0.0.tgz, kafka_2.11-2.0.1.tgz, kafka_2.11-2.1.0.tgz, kafka_2.11-2.1.1.tgz, kafka_2.11-2.2.0.tgz, kafka_2.11-2.2.1.tgz, kafka_2.11-2.2.2.tgz, kafka_2.11-2.3.0.tgz, kafka_2.11-2.3.1.tgz, ...

    2020最全Kafka教程合集(笔记+视频).rar

    本人在北美刚刚毕业,目前面试的几家大厂包括小公司在面试中都频繁的问道kafka这个技术,作为大数据开发或者java全栈的开发者来说,2020年很有必要系统的学习一下kafka. 1.[全面][Kafka2.11][jdk1.8][ZooKeeper3.4.6...

    kafka-manager-1.3.3.22.zip

    已编译 Kafka-Manager-1.3.3.22 linux下直接解压解压kafka-manager-1.3.3.22.zip到/opt/module目录 [root@hadoop102 module]$ unzip kafka-manager-1.3.3.22.zip 4)进入到/opt/module/kafka-manager-1.3.3.22/...

    指定时间段消费Kafka工具

    消费kafka某时间段消息用于分析问题,生产环境海量数据,用kafka-console-consumer.sh只能消费全量,文件巨大,无法grep。 代码来源于博主:BillowX_ ,感谢分享 原贴地址:...

    尚硅谷大数据技术之Kafka(笔记+代码+资料).rar

    Kafka是一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。在本课程中,你将学习到,Kafka架构原理、安装配置使用、详细的...

    kafkatool 连接kafka工具

    kafka连接工具

    kafka-schema-registry-client-6.2.2.jar

    mvn install:install-file -DgroupId=io.confluent -DartifactId=kafka-schema-registry-client -Dversion=6.2.2 -Dfile=/root/kafka-schema-registry-client-6.2.2.jar -Dpackaging=jar 官网下载地址 packages....

Global site tag (gtag.js) - Google Analytics