我们执行以下步骤来删除主题-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
. .
2条答案
按热度按时间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为控制磁盘使用而提供的保留策略
qlvxas9a2#
标记为删除的kafka主题可以通过直接登录zookeeper shell并从集群中删除主题元数据来删除。我们还建议从每个与主题关联的代理中删除日志段。
饲养员壳
rmr/config/主题/
rmr/经纪人/主题/
rmr/管理/删除\u主题/
对于每个经纪人:
关闭经纪人
rm-r${log.dirs}/-*
启动经纪人
注意:执行步骤5时应小心,以确保仅删除要删除的主题的日志目录