如何强制删除Kafka的主题

jxct1oxe  于 2021-06-07  发布在  Kafka
关注(0)|答案(2)|浏览(450)

我们执行以下步骤来删除主题-hgpo.llo.prmt.processed
但即使12小时后,主题文件夹仍然没有从/var/kafka/kafka日志中删除
注意-我们设置了-delete.topic.enable=true

hkafka01 kafka-logs]# /usr/hdp/current/kafka-broker/bin/kafka-topics.sh --zookeeper master01:2181 --alter --topic hgpo.llo.prmt.processed--config retention.ms=1000

  WARNING: Altering topic configuration from this script has been deprecated and may be removed in future releases. Going forward, please use kafka-configs.sh for this functionality Updated config for topic "hgpo.llo.prmt.processedd"

  kafka01 kafka-logs]# /usr/hdp/current/kafka-broker/bin/kafka-topics.sh --zookeeper master01:2181 --delete --topic hgpo.llo.prmt.processed 

  Topic hgpo.llo.prmt.processed is already marked for deletion.

如何强制删除主题?
在Kafka机器(生产机器)上,我们看到:(没有可用空间)

/dev/sdb    15500450528 15500434144         0 100% /var/kafka

在/var/kafka/kafka日志下,我们仍然可以看到所有主题文件夹(大尺寸)的示例:(down)
那么,有没有可能仅仅通过示例删除这些文件夹

rm -rf hgpo.llo.prmt.processed-28 ?

在/var/kafka/kafka日志下,我们有许多主题文件夹:

117G hgpo.llo.prmt.processed-28 
 117G hgpo.llo.prmt.processed-29
 117G hgpo.llo.prmt.processed-3
 117G hgpo.llo.prmt.processed-30
 117G hgpo.llo.prmt.processed-31
 117G hgpo.llo.prmt.processed-32

. .

yruzcnhs

yruzcnhs1#

你一直在尝试的删除方式应该可以工作,但我猜Kafka是不是工作与一个完整的磁盘。
由于您的磁盘已满,我假设kafka不可用,短时间停机是可以接受的。手动删除主题:
关闭Kafka
所有Kafka经纪人都有 hgpo.llo.prmt.processed ,转到其数据目录并删除以开头的文件夹 hgpo.llo.prmt.processed- .
连接到zookeeper zookeeper-shell 工具
跑步: rmr /brokers/topics/hgpo.llo.prmt.processed 重启Kafka
为了防止这种情况再次发生,我建议您看看kafka为控制磁盘使用而提供的保留策略

qlvxas9a

qlvxas9a2#

标记为删除的kafka主题可以通过直接登录zookeeper shell并从集群中删除主题元数据来删除。我们还建议从每个与主题关联的代理中删除日志段。
饲养员壳
rmr/config/主题/
rmr/经纪人/主题/
rmr/管理/删除\u主题/
对于每个经纪人:
关闭经纪人
rm-r${log.dirs}/-*
启动经纪人
注意:执行步骤5时应小心,以确保仅删除要删除的主题的日志目录

相关问题