zoukankan      html  css  js  c++  java
  • kafka彻底删除topic

    如果只是用kafka-topics.sh的delete命令删除topic,会有两种情况:

    1. 如果当前topic没有使用过即没有传输过信息:可以彻底删除
    2. 如果当前topic有使用过即有过传输过信息:并没有真正删除topic只是把这个topic标记为删除(marked for deletion)。

    要彻底把情况2中的topic删除必须把kafka中与当前topic相关的数据目录和zookeeper与当前topic相关的路径一并删除。

    相关组件的版本

    zookeeper: 3.4.6

    kafka: 0.9.0.0

     这里假设要删除的topic是test,kafka的zookeeper root为/kafka

    删除kafka相关的数据目录

    数据目录请参考目标机器上的kafka配置:server.properties -> log.dirs=/var/kafka/log/tmp

    su rm -r /var/kafka/log/tmp/test*

    删除kafka topic

    /home/kafka/bin/kafka-topics.sh --delete --zookeeper HadoopMaster:2181/kafka --topic test

    删除zookeeper相关的路径

    • 打开zookeeper client
    /home/ZooKeeper/bin/zkCli.sh
    • 执行下面的命令

    把test替换成你要删除的topic

     
    #删除topic test的consumer group,如果有消费记录的话
    rmr /kafka/consumers/test-group
    rmr /kafka/config/topics/test rmr /kafka/brokers/topics/test rmr /kafka/admin/delete_topics/test
     

    完成

    重启zookeeper和kafka可以用下面命令查看相关的topic还在不在:

    /home/kafka/bin/kafka-topics.sh --list --zookeeper HadoopMaster:2181/kafka
  • 相关阅读:
    解析HTTP协议六种请求方法
    金蝶
    普元
    中间件
    [CTSC2008] 网络管理
    【Uva 10498】满意值
    【SPOJ839】最优标号
    bzoj2879 [Noi2012]美食节
    bzoj3144 [Hnoi2013]切糕
    bzoj3112 [Zjoi2013]防守战线
  • 原文地址:https://www.cnblogs.com/hd-zg/p/5831232.html
Copyright © 2011-2022 走看看