Answers:
删除主题在0.8.1.1中并不总是有效
删除应该在下一个版本0.8.2中进行
kafka-topics.sh --delete --zookeeper localhost:2181 --topic your_topic_name
Topic your_topic_name is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.
由于已知的错误,似乎删除命令未在Kafka 0.8.1.x中正式记录(https://issues.apache.org/jira/browse/KAFKA-1397)。
尽管如此,该命令仍在代码中附带,并且可以按以下方式执行:
bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --zookeeper localhost:2181 --topic test
同时,该错误已修复,并且删除命令现在可以从Kafka 0.8.2.0正式获得,如下所示:
bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic test
安德里亚是正确的。我们可以使用命令行来完成。
而且我们仍然可以通过编程
ZkClient zkClient = new ZkClient("localhost:2181", 10000);
zkClient.deleteRecursive(ZkUtils.getTopicPath("test2"));
实际上,我不建议您删除有关Kafka 0.8.1.1的主题。我可以通过这种方法删除此主题,但是如果您检查了Zookeeper的日志,则删除会将其弄乱。
在Kafka中删除1个或多个主题的步骤
1. Go to {kafka_home}/config/server.properties
2. Uncomment delete.topic.enable=true
kafka-topics.sh-删除--zookeeper localhost:2181 --topic
(出于测试目的,我创建了多个主题,并且不得不针对不同的场景将其删除)
bin / kafka-topics.sh --list --zookeeper本地主机:2181
如果没有列出主题,则所有主题均已成功删除。如果列出了主题,则删除失败。再次尝试上述步骤或重新启动计算机。
server.properties
文件中。您必须手动添加该行。
此步骤将删除所有主题和数据
命令:
bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic test
不幸的是,仅将主题标记为删除。
删除不会发生。
在测试任何脚本以准备Kafka配置时,这会带来麻烦。
连接的线程:
bin/kafka-topics.sh –delete –zookeeper localhost:2181 –topic <topic-name>
如果您在删除主题时遇到问题,请尝试使用以下方法删除主题:
$KAFKA_HOME/bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic your_topic_name
命令。然后,为了验证删除过程,请转到通常位于下的kafka logs目录/tmp/kafka-logs/
,然后your_topic_name
通过rm -rf your_topic_name
命令删除文件。
记住要通过kafka管理工具(例如)来监视整个过程Kafka Tool
。
上面提到的过程将在不重新启动kafka服务器的情况下删除主题。
步骤1:确定您已连接Zookeeper和Kafka
第2步:要删除Kafka主题,请运行Kafka-topic(Mac)或Kafka-topic.sh(如果使用)(Linux / Mac),添加端口和--topic以及您的主题名称,并--delete即可,只需使用成功。
# Delete the kafka topic
# it will delete the kafka topic
kafka-topics --zookeeper 127.0.0.1:2181 --topic name_of_topic --delete
# or
kafka-topics.sh --zookeeper 127.0.0.1:2181 --topic name_of_topic --delete