Muszę usunąć temat test
w Apache Kafka 0.8.1.1.
Jak wynika z niniejszej dokumentacji , wykonałem:
bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic test
Jednak powoduje to następujący komunikat:
Command must include exactly one action: --list, --describe, --create or --alter
Jak mogę usunąć ten temat?
apache-kafka
EmPak5
źródło
źródło
Odpowiedzi:
Usuwanie tematu nie zawsze działa w 0.8.1.1
Usuwanie powinno działać w następnej wersji 0.8.2
Czy można usunąć temat?
Jira KAFKA-1397
źródło
Wygląda na to, że polecenie usunięcia nie zostało oficjalnie udokumentowane w Kafce 0.8.1.x z powodu znanego błędu ( https://issues.apache.org/jira/browse/KAFKA-1397 ).
Niemniej jednak polecenie zostało nadal wysłane w kodzie i można je wykonać jako:
W międzyczasie błąd został naprawiony i polecenie usunięcia jest teraz oficjalnie dostępne w Kafce 0.8.2.0 jako:
źródło
Dodaj poniższą linię w $ {kafka_home} /config/server.properties
Zrestartuj serwer kafka z nową konfiguracją:
Usuń tematy, które chcesz:
źródło
Andrea ma rację. możemy to zrobić za pomocą wiersza poleceń.
I nadal możemy to zaprogramować
Właściwie nie polecam usuwania tematu w Kafce 0.8.1.1. Mogę usunąć ten temat tą metodą, ale jeśli sprawdzisz log dla zookeepera, usunięcie zepsuje.
źródło
Możesz usunąć określony temat kafka (przykład
test
:) za pomocą polecenia powłoki zookeeper (zookeeper-shell.sh
). Użyj poniższego polecenia, aby usunąć tematprzykład:
źródło
Kroki, aby usunąć 1 lub więcej tematów w Kafce
Aby usunąć tematy w kafce, należy włączyć opcję usuwania na serwerze Kafka.
Usuń jeden temat w Kafce wprowadź następujące polecenie
kafka-topics.sh --usunąć --zookeeper localhost: 2181 --topic
Aby usunąć więcej niż jeden temat z kafki
(dobre do celów testowych, gdzie utworzyłem wiele tematów i musiałem je usunąć dla różnych scenariuszy)
bin / kafka-topics.sh --list --zookeeper localhost: 2181
jeśli na liście nie ma żadnych tematów, wszystkie tematy zostały pomyślnie usunięte. Jeśli na liście znajdują się tematy, usuwanie nie powiodło się. Spróbuj ponownie wykonać powyższe kroki lub uruchom ponownie komputer.
źródło
server.properties
pliku. Musisz dodać tę linię ręcznie.Ta czynność spowoduje usunięcie wszystkich tematów i danych
źródło
Komenda:
niestety tylko zaznacza temat do usunięcia.
Usunięcie nie następuje.
Sprawia to kłopoty przy testowaniu dowolnych skryptów przygotowujących konfigurację Kafki.
Połączone wątki:
źródło
Dodając powyższe odpowiedzi, należy usunąć metadane związane z tym tematem w ścieżce przesunięcia konsumenta zookeeper.
bin/zookeeper-shell.sh zookeeperhost:port
rmr /consumers/<sample-consumer-1>/offsets/<deleted-topic>
W przeciwnym razie opóźnienie będzie negatywne w narzędziach do monitorowania kafka opartych na zookeeper.
źródło
Jak wspomniano w dokumencie tutaj
Upewnij się, że delete.topic.enable = true
źródło
źródło
Jeśli masz problemy z usunięciem tematów, spróbuj usunąć temat za pomocą:
Komenda. Następnie, aby zweryfikować proces usuwania, przejdź do katalogu logów kafka, w którym normalnie się znajduje
/tmp/kafka-logs/
, a następnie usuńyour_topic_name
plik poprzezrm -rf your_topic_name
polecenia.Pamiętaj, aby monitorować cały proces za pomocą narzędzia do zarządzania kafka, takiego jak
Kafka Tool
.Wspomniany powyżej proces usunie tematy bez restartu serwera kafka.
źródło
Krok 1: Upewnij się, że masz połączenie z zookeeper i uruchomionym Kafką
Krok 2: Aby usunąć temat Kafki, uruchom Kafka-topic (Mac) lub Kafka-topic.sh, jeśli używasz (linux / Mac), dodaj port i --topic z nazwą twojego tematu i - usuń go po prostu usuń temat za pomocą sukces.
źródło
Najpierw uruchom to polecenie, aby usunąć temat:
Wyświetl listę aktywnych tematów, aby sprawdzić, czy usunąć całkowicie:
źródło