帖子怎么彻底删除kafka的topic,然后重建?

the_tops----->人生犹如负重致远,不可急于 the_tops----->人生犹如负重致远,不可急于求成     2022-08-06     740

关键词:

怎么彻底删除kafka的topic,然后重建?

网上都说用kafka-run-class.shkafka.admin.DeleteTopicCommand 命令删除topic,但是并没有成功,用
kafka-topics.sh命令查看依然可以查看到topic,应该怎样才能彻底删除topic?
 
技术分享

OpenSkill OpenSkill官方账号

赞同来自: Ansiblebeing

**kafka 0.8.1.1以及之前版本**都无法使用类似一条命令就彻底删除topic,此命令不过只是在zookeeper注销信息而已,但是实际的日志内容还是保存在kafka log中,如果想彻底删除topic,过程如下:
1、从zookeerer删除信息
./bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --zookeeper 10.0.1.10:2181,10.0.1.11:2181,10.0.1.12:2181 --topic test成功后返回信息:deletion succeeded!
2、利用JPS命令查看kafka和zookeeper进程,kill掉QuorumPeerMain和Kafka进程
3、从kafka的log.dirs目录删除文件,可以看到多个子目录名字如test-0,test-1…test-n(就是你topic的partition个数)
进入到kafka的log.dirs目录,执行
rm –fr test-0……test-n(4)  修改日志目录的recovery-point-offset-checkpoint和replication-offset-checkpoint文件(要小心删除,否则待会kafka不能正常启动起来)
replication-offset-checkpoint格式如下:
0
4(partition总数)
test 0 0
test 3 0
hehe 0 0
hehe 1 0
修改后如下:
0
2(partition总数)
hehe 0 0
hehe 1 0
把含有test行全部去掉,并且把partition总数修改为减去test的partition的剩余数目,同理recovery-point-offset-checkpoint也是这样修改。
完成后就可以正常启动zookeeper和kafka。**从kafka 0.8.2.1**开始可以直接删除topic,步骤如下:
kafka 0.8.1.1之前版本,kafka-topics.sh命令连--delete                                Delete a topic参数都没有,如下:
# ./kafka-topics.sh --help
Command must include exactly one action: --list, --describe, --create or --alter
Option Description 
------ ----------- 
--alter Alter the configuration for the topic. 
--config <name=value> A topic configuration override for the 
topic being created or altered. 
--create Create a new topic. 
--deleteConfig <name> A topic configuration override to be 
removed for an existing topic 
--describe List details for the given topics. 
--help Print usage information. 
--list List all available topics. 
--partitions <Integer: # of partitions> The number of partitions for the topic 
being created or altered (WARNING: 
If partitions are increased for a 
topic that has a key, the partition 
logic or ordering of the messages 
will be affected 
--replica-assignment A list of manual partition-to-broker 
<broker_id_for_part1_replica1 : assignments for the topic being 
broker_id_for_part1_replica2 , created or altered. 
broker_id_for_part2_replica1 : 
broker_id_for_part2_replica2 , ...> 
--replication-factor <Integer: The replication factor for each 
replication factor> partition in the topic being created.
--topic <topic> The topic to be create, alter or 
describe. Can also accept a regular 
expression except for --create option
--topics-with-overrides if set when describing topics, only 
show topics that have overridden 
configs 
--unavailable-partitions if set when describing topics, only 
show partitions whose leader is not 
available 
--under-replicated-partitions if set when describing topics, only 
show under replicated partitions 
--zookeeper <urls> REQUIRED: The connection string for 
the zookeeper connection in the form 
host:port. Multiple URLS can be 
given to allow fail-over. 
# **而kafka 0.8.2.1**新增加了这个参数
技术分享

 
删除过程:
1、在kafka配置文件中添加删除参数
delete.topic.enable=true2、利用命令删除需要删除的topic
bin/kafka-topics.sh --zookeeper zk_host:port/chroot --delete --topic my_topic_namehttp://kafka.apache.org/documentation.html#gettingStarted如下:
技术分享
 
技术分享

chris - 喜欢自由散漫的我

版本不一样,删除方法不一样,最好是升级到新版较稳定的比较好。

怎么彻底删除kafka的topic,然后重建

server.properties中添加delete.topic.enable=true执行D:\Developer\kafka_2.10-0.10.0.0\bin\windows>kafka-topics.bat--zookeeper127.0.0.1:2181--delete--topicTEST-TOPIC执行zookeeper-server-stop.bat,后在重启kafka重新发送消息即可,会自动根据配置的partitions... 查看详情

彻底删除kafka中的topic

0:关闭Kafka 1:登录zookeeper客户端[root@xsyfzookeeper01]#./bin/zkCli.sh(1)查看topic信息ls/brokers/topics(2)删除所有topicdeleteall/brokers/topics  2:删除kafka日志文件rmkafka/log/*-rf然后删除log.dirs文件夹下的所有日志文件。 3:启动... 查看详情

kafka彻底删除topic

如果当前topic没有使用过即没有传输过信息:可以彻底删除如果当前topic有使用过即有过传输过信息:并没有真正删除topic只是把这个topic标记为删除(marked for deletion)。要彻底把情况2中的topic删除必须把kafka中与当前topic... 查看详情

如何彻底删除kafka中的topic(markedfordeletion)

...堆积的太多,或者kafka所在磁盘空间满了等等,可能需要彻底清理一下kafkatopic,那么如何彻底删除topic?方法一(配置delete.topic.enable=true)  修改kafaka配置文件server.properties,添加delete.topic.enable=true,重启kafka,之后通过kaf... 查看详情

kafka彻底删除topic

...bin/kafka-topics.sh--zookeeperznode1:2181--listtest_topic-markedfordeletion彻底删除topic?https://community.hortonworks.com/articles/29900/zookeeper-using-superdigest-to-gain-full-access-to.html[ocdp@znode1bin]$exportZK_CLASSPATH=/etc/zookeeper/conf/:/usr/hdp/current/zookeeper-server/lib/*:/usr/h... 查看详情

kafka删除topic

...为--markedfordeletion,这时如果去zookeeper的/brokers/topics/节点下删除这个topic(不建议这样做),虽然真的在kafka中查不到这个topic了,但是可能会引出很多意想不到的异常,例如常见的:上面这个错误就是异常topic引起的,当producer或consum... 查看详情

kafka小笔记(代码片段)

...4.查看所有topic详情5.删除topic6.消费topic7.生产者topic二、彻底删除kafka的topic三、kafka中的acks参数一、kafka命令进入到kafka目录的bin下:1.查看所有主题./kafka-topics.sh--list--zookeeperzk:21812.创建主题./kafka-topics.sh--create--zookeeperzk:2181--r... 查看详情

kafka删除一个topic的旧消息

参考技术A1.高版本的kafka,提供了直接删除n条消息的操作方法。脚本内容地址:使用这个脚本,配套的还有一个json文件。新建一个json文件,内容如下,里面指定了partition和offset.然后把这个文件保存为offset.json这时候调用脚本,可... 查看详情

kafka删除节点怎么删除

参考技术AKafka是由LinkedIn设计的一个高吞吐量、分布式、基于发布订阅模式的消息系统,使用Scala编写,它以可水平扩展、可靠性、异步通信和高吞吐率等特性而被广泛使用。目前越来越多的开源分布式处理系统都支持与Kafka集成... 查看详情

源码解析kafka删除topic

本文依然是以kafka0.8.2.2为例讲解一,如何删除一个topic删除一个topic有两个关键点:1,配置删除参数delete.topic.enable这个Broker参数配置为True。2,执行bin/kafka-topics.sh--zookeeperzk_host:port/chroot--delete--topicmy_topic_name假如不... 查看详情

kafka实战-删除topic

...在平时对kafka的运维工作中,我们经常会由于某些原因去删除一个topic,比如这个topic是测试用的,生产环境中需要删除。或者我想扩容topic的同时,这个topic中的数据我不想要了,这时候删除topic,增加broker,再重新创建topic就会... 查看详情

怎么去掉kafka库自带的控制台日志信息

参考技术A1.删除logs下的相关记录;2.到zookeeper下的brokers/topics删除相关节点。--------------不好用!!先逻辑删除(./bin/kafka-run-class.shkafka.admin.DeleteTopicCommand--topicdnsTopic--zookeeper10.0.1.44:2181,10.0.1.45:2181,10.0.1.46:2181),后物理删除(删... 查看详情

kafka如何删除topic?

Kafka如何删除topic?    今天为大家带来“Kafka删除topic原理解析”,希望可以帮到那些苦于无法删除topic的朋友们。    前提条件:在启动broker时候开启删除topic的开关,即在server.properties中添加: &... 查看详情

0022-如何永久删除kafka的topic

...单击图片放大查看。1.问题描述使用kafka-topics--delete命令删除topic时并没有真正的删除,而是把topic标记为:“markedfordeletion”,导致重新创建相同名称的Topic时报错“alreadyexists”。2.问题复现1.登录Kafka集群所在的服务器,创建一... 查看详情

阿里四面:kafka何时如何删除topic?

Topic是怎么被删除的?Kafka有很多状态机和管理器,如Controller通道管理器ControllerChannelManager、处理Controller事件的ControllerEventManager等。这些管理器和状态机,大多与各自“宿主”联系密切。就如Controller这俩管理器,... 查看详情

删除kafka中的topic

1、删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录2、使用kafka中命令删除:./bin/kafka-topics--delete--zookeeper【zookeeperserver】--topic【topicname】如果kafaka启动时加载的配置文件中server.properties没有配 查看详情

kafka删除topic操作步骤

1、如果配置了delete.topic.enable=true适合以下操作通过命令删除:./kafka-topics.sh--zookeeper127.0.0.1:2181--delete--topicapply_test通过zookeeper-client删除掉broker下的topic,rmr/brokers/topics/apply_test删除kafka节点的kafka/logs/appl 查看详情

[spark][kafka]kafka的topic创建和删除试验

kafka的topic创建和删除试验zookeeper和kafka的安装,参考:http://www.cnblogs.com/caoguo/p/5958608.html参考上述URL后,在个人的伪分布式环境下,安装了kafka确认zookeeper为运行状态:$servicezookeeper-serverstatuszookeeper-serverisrunning启动kafka:[[email 查看详情