Все IP-адреса брокера Kafka должны быть указаны при создании сообщения - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть 3 брокера kafka кластера с 3 zookeeper.

У меня вопрос, нужно ли нам давать только один IP-адрес в файле Manufacturer-console.sh, как показано ниже

/kafka-console-producer.sh --broker-list 192.168.7.110:9092 --topic test

иливсе три IP-адреса

./kafka-console-producer.sh --broker-list 192.168.7.110:9092,192.168.5.110:9092,192.168.3.111:9092 --topic test

Что произойдет, если я предоставлю только один IP-адрес для создания сообщений и этот IP-адрес через некоторое время отключится.Смогу ли я создавать сообщения через этот IP-адрес или нет, или я должен указать все IP-адреса?

1 Ответ

0 голосов
/ 07 февраля 2019

Ознакомьтесь с Конфигурацией производителя документов, которые описывают назначение bootstrap.servers (bootstrap-servers / broker-list являются синонимами):

Списокпар хост / порт, которые будут использоваться для установления начального соединения с кластером Kafka.

Клиент будет использовать все серверы независимо от того, какие серверы указаны здесь для начальной загрузки - этот список влияет только на исходныйхосты использовали для обнаружения полного набора серверов.Этот список должен иметь вид host1: port1, host2: port2, ....

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

Так что если выпредоставьте только один IP-адрес, и этот IP-адрес будет отключен, и ваш производитель впоследствии не сможет подключиться.Но вы могли бы, например, предоставить два IP-адреса, чтобы в случае сбоя один производитель мог подключиться к другому.Но на брокера, которому отправляются реальные сообщения, это не влияет.

См. также этот ответ здесь .

...