0

我已经使用以下命令直接从 Zookeeper 中删除了主题,并且之前没有从 Kafka 中执行删除:

zookeeper-shell.sh localhost:2181 rmr /brokers/topics/<topic_name>

现在我看到的是,该主题出现在log.dirs集群中至少一个代理中。有没有办法也可以删除。

当我现在尝试从 kafka 中删除时,它会引发以下错误

Error while executing topic command : Topic <topic_name> does not exist on ZK path <zookeeper_server_list:2181>
4

1 回答 1

1

我认为你错过了几个步骤。要手动删除主题,您需要执行以下步骤:

1)停止Kafka服务器

2)在每个代理上,您必须删除以下所有主题的日志文件logs.dirs

rm -rf path/to/logs/topic_name/

3) 从 Zookeeper 中删除主题目录:

> zookeeper-shell.sh localhost:2181
> ls /brokers/topics
> rmr /brokers/topics/topic_name

4)重启Kafka服务器


请注意,删除主题的建议方法是

/bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic topic_name

假设delete.topic.enable=true.

于 2020-03-18T12:24:20.417 回答