通过zookeeper cli自动删除

h22fl7wq  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(397)

我们要永久删除一个主题,如下所示
阻止经纪人
删除磁盘上的目录

rm -rf <kafka_data_dir>/<topic_name>*

从zookeeper中删除主题:
我们可以通过以下命令打印所有主题

kafka-topics.sh --zookeeper $Zookeeper_IP:2181 --describe

获取动物园cli:

bin/zkCli.sh

现在我们删除主题

rmr /config/topics/<topic_name>
rmr /brokers/topics/<topic_name>
rmr /admin/delete_topics/<topic_name>

例如 /brokers/topics/ ```
rmr /brokers/topics/topic3435
rmr /brokers/topics/topic3443
rmr /brokers/topics/topic3436
rmr /brokers/topics/topic3433
rmr /brokers/topics/topic3432.
.
.
.
.
.
.
.

验证是否在zookeeper中删除了主题目录:

ls

启动代理备份
如果需要,重新创建Kafka主题
到目前为止,我描述了手动步骤
我们的目标是使用脚本或expect script而不是手动rmr步骤通过rmr删除主题
我很乐意得到建议
mfpqipee

mfpqipee1#

我真的建议使用adminclientapi或 kafka-topics.sh 用于删除主题而不是手动编辑主题的工具。
当你使用 kafka-topics.sh--zookeeper 标志,则删除是异步的。一旦请求删除,工具将立即返回。在实践中,这个主题还可以存在一段时间。
如果您使用adminclient api或 kafka-topics.sh--bootstrap-server 标志,它将阻止,直到主题被删除或达到超时。对于最近的kafka版本,删除通常在几秒钟内发生,因此如果指定超时,可以使其同步。

相关问题