Kiedy/w jaki sposób temat "oznaczony do usunięcia" zostaje ostatecznie usunięty?

Wydałem polecenie usunięcia tematu:

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

Wydawało się, że daje szczęśliwą odpowiedź:

[2014-05-31 20:58:10,112] INFO zookeeper state changed (SyncConnected) (org.I0Itec.zkclient.ZkClient)
Topic "vip_ips_alerts" queued for deletion.

Ale teraz 10 minut później temat nadal pojawia się w Komendzie --list:

./bin/kafka-topics.sh --zookeeper localhost:2181 --list
vip_ips_alerts - marked for deletion
Co to znaczy? Kiedy temat zostanie naprawdę usunięty? Jak przyspieszyć ten proces?
Author: Jacek Laskowski, 2014-06-01

11 answers

Tl; dr Set delete.topic.enable = true in config/server.properties of Kafka brokers and...be pacjent.

Dzieje się tak z najnowszą wersją rozwojową Kafka 0.8.3-SNAPSHOT :

➜  kafka_2.11-0.8.3-SNAPSHOT git:(trunk) ✗ ./bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic my-topic --partitions 2 --replication-factor 1
Created topic "my-topic".

➜  kafka_2.11-0.8.3-SNAPSHOT git:(trunk) ✗ ./bin/kafka-topics.sh --zookeeper localhost:2181 --describe --topic my-topic
Topic:my-topic  PartitionCount:2    ReplicationFactor:1 Configs:
    Topic: my-topic Partition: 0    Leader: 0   Replicas: 0 Isr: 0
    Topic: my-topic Partition: 1    Leader: 0   Replicas: 0 Isr: 0

➜  kafka_2.11-0.8.3-SNAPSHOT git:(trunk) ✗ ./bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic my-topic
Topic my-topic is marked for deletion.
Note: This will have no impact if delete.topic.enable is not set to true.

➜  kafka_2.11-0.8.3-SNAPSHOT git:(trunk) ✗ ./bin/kafka-topics.sh --zookeeper localhost:2181 --list
➜  kafka_2.11-0.8.3-SNAPSHOT git:(trunk) ✗

Chodzi o to, aby mieć delete.topic.enable=true W config/server.properties, których używasz do założenia Kafka brokera.

➜  kafka_2.11-0.8.3-SNAPSHOT git:(trunk) ✗ grep delete.topic.enable config/server.properties
delete.topic.enable=true
Możesz również upewnić się, że ustawienie jest prawdziwe w dzienniku brokera:
➜  kafka_2.11-0.8.3-SNAPSHOT git:(trunk) ✗ ./bin/kafka-server-start.sh config/server.properties
[2015-07-24 22:33:26,184] INFO KafkaConfig values:
        ...
        delete.topic.enable = true
 39
Author: Jacek Laskowski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-24 20:35:36

W moim przypadku, gdzie używam Kafka 8.2.2, musiałem ręcznie usunąć wpisy z poniższych -

  1. Usuń folder tematyczny z maszyny Kafka broker.
  2. Zaloguj się do zookeeper i -

    hbase zkcli
    rmr /brokers/topics/{topic_name}
    rmr /admin/delete_topics/{topic_name}
    
 29
Author: tesnik03,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-09 11:03:30

Dasz radę.

Sudo ./zookeeper-shell.sh localhost:2181 rmr /brokers/topics / your_topic

 16
Author: Anxo P,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-10-13 10:43:45

Spotkałem się z tym samym problemem i spędzić kilka dni próbując zidentyfikować się z problemem był. Uruchomiłem polecenie, aby usunąć tematy, jednak tematy zostały oznaczone do usunięcia, ale nie zostały usunięte.

  1. najpierw sprawdziłem konfigurację, która jest ustawiona poprawnie. Pod: serwer.właściwości

    Usuń.temat.enable = true dla wszystkich brokerów

  2. uruchomiłem ponownie brokera, aby sprawdzić, czy tematy zostały usunięte (nie!!).
  3. sprawdzam brak danych pod /kafka / data folder.
  4. rozważałem nawet opcję, aby poczekać, aż czas retencji zostanie przekroczony.
Nikt nie pomógł. Musiałem w końcu zalogować się do zooker
./zkCli.sh # and delete the topics using 
rmr /brokers/topics/<<topic>> and rmr /admin/delete_topics/<<topic>>

Pamiętaj, aby po tym ponownie uruchomić Kafkę. Mam nadzieję, że to rozwiąże twój problem.

 13
Author: jigar shah,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-11 05:18:57

Poprawna odpowiedź jest w rzeczywistości następująca. Lista dystrybucyjna grup użytkowników Kafka:

François Langelier * @gmail.com über kafka.apache.org 05:57 (vor 1 Stunde)

An users the delete topic is not working ATM

Myślę, że będzie on dostępny w następnym wydaniu https://issues.apache.org/jira/browse/KAFKA-1397

 4
Author: StephenBoesch,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-03 19:27:54

Mój problem był podobny. Usunąłem temat i dawał mi ten sam komunikat, gdy wymieniałem wszystkie tematy.

Załatwiłem dozorcę i pośrednika. Ustaw Usuń.temat.enable = true w moim pliku konfiguracyjnym brokera started zookeeper and the boker

Temat zniknął...podziękowania dla Jacka Laskowskiego

 3
Author: Amar Dev,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-19 21:27:07

Dla wersji kafka 0.10.0.0 wystarczy włączyć usuwanie tematu poprzez ustawienie:

delete.topic.enable

Temat jest usuwany w kilka chwil

kafka-topics --delete --zookeeper your-zk:2181 --topic yourTopicName

Możesz potwierdzić, że go nie ma za pomocą następującego polecenia:

kafka-topics --describe --zookeeper your-zk:2181 --topic yourTopicName
 3
Author: m.a.tomsik,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-17 07:12:50

Sprawdź status tematu w zookeeper

bin\windows>kafka-topics.bat --list --zookeeper localhost:2181
Output: topic shows marked for deletion

Ustawienie Usuń.temat.enable = true na serwerze .properties również nie działa.

Rozwiązanie: Sprawdź lokalizację katalogu danych zookeeper w zookeeper.Plik Właściwości. było dataDir= / tmp / zookeeper .
Problem został rozwiązany po aktualizacji "dataDir" do nowej lokalizacji.

dataDir=zk-temp
# the port at which the clients will connect
clientPort=2181
# disable the per-ip limit on the number of connections since this is a non-production config
maxClientCnxns=0
 2
Author: Debabrata,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-04-18 03:00:31

Mieliśmy ten problem podczas usuwania tematów. Tematy zostały utworzone po usunięciu.temat.enable = true nie zostało ustawione. Ustawiliśmy to w config, ponownie uruchomiliśmy kafka, aby zastosować nowy config. Usunąłem tematy i zobaczyłem "zaznaczone do usunięcia". Następnie ponownie uruchomiliśmy Kafkę. Po 40 minutach wszystkie tematy zostały usunięte(9 tematów o łącznej liczbie partycji w tysiącach). Tematy z większą liczbą partycji wydawały się trwać dłużej, co początkowo sprawiało wrażenie, że nic nie było dzieje się.

 1
Author: MattLovesJam,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-31 15:49:56

Usunięcie nastąpiło u mnie niemal natychmiast (v 0.9). Uważam, że dla ciebie powinno być tak samo.

Po zaznaczeniu, usunięcie zostanie uruchomione na węźle kafka, który jest liderem partycji topic. Należy pamiętać, że lider partycji tematu musi być poprawnie skonfigurowany (pod względem słuchaczy), w przeciwnym razie nie otrzyma instrukcji usuwania dzienników.

Moje tematy" oznaczone do usunięcia " utknęły w tym stanie, dopóki nie poprawiłem serwera właściwości i ponownie uruchomił odpowiedni węzeł.

 1
Author: Francis Leung,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-27 08:59:58

W Kafce, gdy temat zostanie zaznaczony do usunięcia, zostanie ostatecznie usunięty po 60000 milisekund.

Sprawdź nieruchomość log.segment.delete.delay.ms.

Dokumentacja mówi:

File.delete.delay.ms: czas oczekiwania przed usunięciem pliku z domyślną wartością systemu plików jest 60000 ms.

 0
Author: Pravin Agrawal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-11-10 16:16:50