Saya perlu menghapus topik test
di Apache Kafka 0.8.1.1.
Seperti yang diungkapkan dalam dokumentasi di sini , saya telah mengeksekusi:
bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic test
Namun, ini menghasilkan pesan berikut:
Command must include exactly one action: --list, --describe, --create or --alter
Bagaimana cara menghapus topik ini?
apache-kafka
EmPak5
sumber
sumber
Jawaban:
Menghapus topik tidak selalu berfungsi di 0.8.1.1
Penghapusan harus bekerja di rilis berikutnya, 0.8.2
Apakah mungkin menghapus topik?
Jira KAFKA-1397
sumber
Tampaknya perintah penghapusan tidak didokumentasikan secara resmi di Kafka 0.8.1.x karena bug yang diketahui ( https://issues.apache.org/jira/browse/KAFKA-1397 ).
Namun demikian, perintah tersebut masih dikirimkan dalam kode dan dapat dijalankan sebagai:
Sementara itu, bug telah diperbaiki dan perintah penghapusan sekarang secara resmi tersedia dari Kafka 0.8.2.0 sebagai:
sumber
Tambahkan baris di bawah ini di $ {kafka_home} /config/server.properties
Mulai ulang server kafka dengan konfigurasi baru:
Hapus topik yang ingin Anda:
sumber
Andrea benar. kita bisa melakukannya dengan menggunakan baris perintah.
Dan kita masih bisa memprogramnya, dengan
Sebenarnya saya tidak menyarankan Anda menghapus topik di Kafka 0.8.1.1. Saya dapat menghapus topik ini dengan metode ini, tetapi jika Anda memeriksa log untuk penjaga kebun binatang, penghapusan akan mengacaukannya.
sumber
Anda dapat menghapus topik kafka tertentu (contoh:)
test
dari perintah zookeeper shell (zookeeper-shell.sh
). Gunakan perintah di bawah ini untuk menghapus topikcontoh:
sumber
Langkah-langkah untuk Menghapus 1 atau lebih Topik di Kafka
Untuk menghapus topik di kafka, opsi hapus harus diaktifkan di server Kafka.
Hapus satu Topik di Kafka masukkan perintah berikut
kafka-topics.sh --delete --zookeeper localhost: 2181 --topic
Untuk menghapus lebih dari satu topik dari kafka
(baik untuk tujuan pengujian, di mana saya membuat banyak topik & harus menghapusnya untuk skenario yang berbeda)
bin / kafka-topics.sh --list --zookeeper localhost: 2181
jika tidak ada topik yang terdaftar maka semua topik telah berhasil dihapus. Jika topik dicantumkan, maka penghapusan tidak berhasil. Coba langkah-langkah di atas lagi atau mulai ulang komputer Anda.
sumber
server.properties
file. Anda harus menambahkan baris itu secara manual.Langkah ini akan menghapus semua topik dan data
sumber
Perintah:
sayangnya hanya menandai topik untuk dihapus.
Penghapusan tidak terjadi.
Itu membuat masalah, saat menguji skrip apa pun, yang menyiapkan konfigurasi Kafka.
Benang yang terhubung:
sumber
Menambah jawaban di atas, seseorang harus menghapus meta data yang terkait dengan topik itu di jalur offset konsumen penjaga kebun binatang.
bin/zookeeper-shell.sh zookeeperhost:port
rmr /consumers/<sample-consumer-1>/offsets/<deleted-topic>
Jika tidak, lag akan menjadi negatif dalam alat pemantauan kafka berdasarkan penjaga kebun binatang.
sumber
Seperti yang disebutkan dalam dokumen di sini
Pastikan delete.topic.enable = true
sumber
sumber
Jika Anda mengalami masalah saat menghapus topik, coba hapus topik tersebut menggunakan:
perintah. Kemudian untuk memverifikasi proses penghapusan, buka direktori kafka logs yang biasanya ditempatkan di bawah
/tmp/kafka-logs/
, lalu hapusyour_topic_name
file melaluirm -rf your_topic_name
perintah.Ingatlah untuk memantau seluruh proses melalui alat manajemen kafka seperti
Kafka Tool
.Proses yang disebutkan di atas akan menghapus topik tanpa restart server kafka.
sumber
Langkah 1: Pastikan Anda terhubung ke penjaga kebun binatang dan Kafka berlari
Langkah 2: Untuk menghapus topik Kafka, jalankan Kafka-topic (Mac) atau Kafka-topic.sh jika digunakan (linux / Mac) tambahkan port dan --topic dengan nama topik Anda dan --hapus saja hapus topik tersebut dengan keberhasilan.
sumber
Pertama, Anda menjalankan perintah ini untuk menghapus topik Anda:
Buat daftar topik aktif untuk diperiksa, hapus sepenuhnya:
sumber