2017-01-04 3 views
4

Как удалить тему Кафки с помощью Kafka REST Proxy? Я попробовал следующую команду, но он возвращает сообщение об ошибке:Как удалить тему Кафки с помощью прокси-сервера Kafka REST?

curl -X DELETE XXX.XX.XXX.XX:9092/topics/test_topic 

Если это невозможно, то, как обновить удалить сообщения и обновить схему темы?

ответ

3

В соответствии с документацией API Reference вы не можете удалять темы через REST Proxy, и я согласен с ними, потому что такая разрушительная операция не должна быть доступна через интерфейс, открытый снаружи.

Операция удаления темы может быть выполнена на сервере, где брокер запускается с использованием утилиты командной строки. См. How to Delete a topic in apache kafka

2

Вы можете обновить схему сообщения, когда опубликуете его, используя конечную точку REST POST/themes/(string: topic_name). Если схема для новых сообщений не совместима с предыдущими сообщениями в одной и той же теме, вам придется настроить свой реестр схем, чтобы разрешить публикацию несовместимых сообщений, иначе вы получите сообщение об ошибке.

Смотрите «Пример Avro запрос» здесь: http://docs.confluent.io/3.1.1/kafka-rest/docs/api.html#post--topics-(string-topic_name)

Посмотреть, как настроить схемы реестра для вперед, назад, или нет совместимости не видят в документации здесь: http://docs.confluent.io/3.1.1/schema-registry/docs/api.html#compatibility

Смежные вопросы