Потребители Kafka Stream Restore не могут аутентифицироваться - PullRequest
0 голосов
/ 07 февраля 2019

У меня проблема с потребителями восстановления, они не могут подключиться к посредникам, получая:

Connection to node -1 failed authentication due to: Authentication failed due to invalid credentials with SASL mechanism PLAIN

В значениях ConsumerConfig: информационный журнал для xxx-StreamThread-1-restore-consumer Iне вижу установленного group.id.У потребителей без восстановления, таких как xxx-StreamThread-1-consumer, установлен идентификатор группы.

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

Есть ли способ установить идентификатор группы?Что это за восстановление потребителей?Как нам пройти эту проблему?

1 Ответ

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

Невозможно установить group.id для восстановления потребителей.

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

Обратите внимание, что это хак - я думаю, что это должно работать, но вы применяете это на свой страх и риск: В качестве обходного пути вы можете использовать пользовательский KafkaClientSupplier, который вы передаете в конструктор KafkaStreamsgetRestoreConsumer() перед созданием нового KafkaConsumer вы изменяете предоставленный Map<String, Object> config и добавляете запись group.id.

...