web-dev-qa-db-ja.com

Kafka 0.8.1.1のトピックを削除

Apache Kafka 0.8.1.1のトピックtestを削除する必要があります。

ここのドキュメント で表されているように、私は実行しました:

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

ただし、これにより次のメッセージが表示されます。

Command must include exactly one action: --list, --describe, --create or --alter

このトピックを削除するにはどうすればよいですか?

82
EmPak5

トピックの削除が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.

トピックを削除することは可能ですか?

Jira KAFKA-1397

96
frank

既知のバグ( https://issues.Apache.org/jira/browse/KAFKA-1397)のため、削除コマンドはKafka0.8.1.xで正式に文書化されていないようです。 )。

それでも、コマンドはコードに含まれたままで、次のように実行できます。

bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --zookeeper localhost:2181 --topic test

それまでの間、バグは修正され、削除コマンドはKafka0.8.2.0から正式に利用可能になりました。

bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic test
95
Andrea

以下の行を$ {kafka_home} /config/server.propertiesに追加します

delete.topic.enable=true

新しい構成でkafkaサーバーを再起動します。

${kafka_home}/bin/kafka-server-start.sh ~/kafka/config/server.properties

目的のトピックを削除します。

${kafka_home}/bin/kafka-topics.sh --delete  --zookeeper localhost:2181  --topic daemon12
37
daemon12

アンドレアは正しいです。コマンドラインを使用して実行できます。

そして、私たちはまだそれをプログラムすることができます。

ZkClient zkClient = new ZkClient("localhost:2181", 10000);
zkClient.deleteRecursive(ZkUtils.getTopicPath("test2"));

実際、Kafka 0.8.1.1のトピックを削除することはお勧めしません。この方法でこのトピックを削除できますが、zookeeperのログを確認すると、削除すると混乱します。

10
Liang

Kafkaで1つ以上のトピックを削除する手順

kafkaのトピックを削除するには、Kafkaサーバーで削除オプションを有効にする必要があります。

1. Go to {kafka_home}/config/server.properties
2. Uncomment delete.topic.enable=true

Kafkaのトピックを1つ削除し、次のコマンドを入力します

kafka-topics.sh --delete --zookeeper localhost:2181 --topic

Kafkaから複数のトピックを削除するには

(テスト目的に適しています。複数のトピックを作成し、さまざまなシナリオでそれらを削除する必要がありました)

  1. KafkaサーバーとZookeeperを停止します
  2. ログが保存されている/ tmpフォルダーに移動し、kafkalogsおよびzookeeperフォルダーを手動で削除します
  3. Zookeeperとkafkaサーバーを再起動し、トピックを一覧表示してみてください。

bin/kafka-topics.sh --list --zookeeper localhost:2181

トピックがリストされていない場合、すべてのトピックが正常に削除されています。トピックがリストされている場合、削除は成功しませんでした。上記の手順をもう一度試すか、コンピューターを再起動します。

4
CodeUrLife

特定のkafkaトピック(例:test)をzookeeperシェルコマンド(zookeeper-Shell.sh)から削除できます。以下のコマンドを使用してトピックを削除します

rmr {path of the topic}

例:

rmr /brokers/topics/test
4
user1293543

この手順により、すべてのトピックとデータが削除されます

  • Kafka-serverおよびZookeeper-serverを停止します
  • 両方のサービスのtmpデータディレクトリを削除します。デフォルトでは、C:/ tmp/kafka-logsおよびC:/ tmp/zookeeperです。
  • 次に、Zookeeper-serverとKafka-serverを起動します
2
Venkatesh Boya

コマンド:

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

残念ながら、削除するトピックのみをマークします。

削除は発生しません。

これは、Kafka構成を準備するスクリプトをテストするときに問題を引き起こします。

接続されたスレッド:

Docで述べたように here

トピック削除オプションはデフォルトで無効になっています。これを有効にするには、サーバー構成を設定しますdelete.topic.enable = true Kafkaは、現在、トピックのパーティション数の削減またはレプリケーション係数の変更をサポートしていません。

Delete.topic.enable = trueを確認してください

1
abmd
bin/kafka-topics.sh –delete –zookeeper localhost:2181 –topic <topic-name>
1
Avinav Mishra

上記の回答に追加すると、zookeeperコンシューマーオフセットパスでそのトピックに関連付けられているメタデータを削除する必要があります。

bin/zookeeper-Shell.sh zookeeperhost:port

rmr /consumers/<sample-consumer-1>/offsets/<deleted-topic>

そうしないと、zookeeperに基づいたkafka監視ツールで遅延が負になります。

1
Knight71

トピックの削除に問題がある場合は、次を使用してトピックを削除してみてください。

$KAFKA_HOME/bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic your_topic_name

コマンド。次に、削除プロセスを確認するために、通常/tmp/kafka-logs/の下にあるkafka logsディレクトリに移動し、your_topic_nameコマンドでrm -rf your_topic_nameファイルを削除します。

Kafka Toolなどのkafka管理ツールを使用して、プロセス全体を忘れずに監視してください。

上記のプロセスは、kafkaサーバーを再起動せずにトピックを削除します。

0
Vahid F

まず、このコマンドを実行してトピックを削除します。

$ bin/kafka-topics.sh --delete --bootstrap-server localhost:9092 --topic <topic_name>

アクティブなトピックをリストして、削除を完全に確認します。

$ bin/kafka-topics.sh --list --bootstrap-server localhost:9092
0
yuen26

ステップ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
0
Black_Dreams