Kafka Connect - нужны ли работникам прямое общение друг с другом? - PullRequest
0 голосов
/ 07 ноября 2019

Моя цель - развернуть коннекторы Kafka (приемник s3) с использованием контейнеров, поэтому важно знать подробности о том, как работники могут или не могут напрямую общаться друг с другом.

Из того, что я прочитал, яЯ не могу быть уверен, что рабочие будут иметь прямую связь друг с другом (например, один рабочий разговаривает с другим, используя REST или что-то в этом роде).

В начале я думал, что когда я обновляю конфигурацию, используя REST,изменения в конфигурации распространяются с использованием внутренней темы connect_config и / или с помощью потребительского координатора Kafka ..

Но из того, что я прочитал:

rest.advertised.host.name
If this is set, this is the hostname that will be given out to other workers to connect to.

Любые подробности о том, как и почему (если ониdo) рабочие общаются друг с другом?

1 Ответ

1 голос
/ 07 ноября 2019

Да, при работе в распределенном режиме работники должны иметь возможность подключаться к REST API друг друга.

Connect позволяет использовать REST API любых работников для создания / обновления / удаления соединителя, однако под прикрытием он перенаправляет запрос работнику-руководителю.

Этоописано в разделе REST API в документации:

REST API используется не только пользователями для мониторинга / управления Kafka Connect. Он также используется для межкластерной связи Kafka Connect. Запросы, полученные на REST API узлов-последователей, будут перенаправлены на REST API ведущего узла. В случае, если URI, под которым данный хост доступен, отличается от URI, который он прослушивает, параметры конфигурации rest.advertised.host.name, rest.advertised.port и rest.advertised.listener могут использоваться для изменения URI, которыйбудет использоваться узлами-последователями для связи с лидером

...