Добрый день. Подскажите, пожалуйста, должен ли брокер, который не является

лидером для топиков, участвовать в координации группы консьюмеров?

12 ответов

23 просмотра
Alexander- Автор вопроса

Я понимаю, что получить ответ на канале - это привилегия. И что с глупыми и неправильными вопросами вопрошающий идет в сад. Но из молчания, к сожалению, не могу сделать верный вывод - я задал глупый/неправильный вопрос или ответ лежит где-то на поверхности в документации и мне просто в rtfm. Направьте, пожалуйста. По предварительным поискам у меня сложилось впечатление, что без чтения исходных кодов на этот вопрос просто по документации ответ не получить

Alexander
Я понимаю, что получить ответ на канале - это прив...

Лидер он же среди консьюмеров, а координатор среди брокеров, нет ?

у вас топик из одной партиции? если нет, то он размазан по нескольким брокерам и лидеры партиций обычно тоже

Alexander
Я понимаю, что получить ответ на канале - это прив...

Я думаю, никто не ответил, потому что с ходу ответа нет, никаких привилегий тут точно нет, мне кажется :)

Alexander- Автор вопроса
Andrey Belyakov
Лидер он же среди консьюмеров, а координатор среди...

Придется детально разбираться. Потому что мы наткнулись на ситуацию, когда после выпадения и возвращения в кластер брокер перестал быть лидером для своих топиков. И отказывался принимать новые данные в зоокипере из-за того, что считал свои более свежими. Это вроде как бага, понятно. Но как такой неконсистентый брокер может участвовать в координации группы консьюмеров мне пока не понятно. У нас на фоне этого(пока не знаю, в следствие ли этого) происходила постоянная перебалансировка группы и чтение топиков стало колом. Рестарт проблемного брокера проблему решил. Буду думать, что с этой радостью делать дальше

Alexander
Придется детально разбираться. Потому что мы наткн...

1. После выпадения\возвращения брокера лидеры, уехавшие на другие брокеры не вернулись обратно, вы это имели ввиду? 2. Брокер вернулся в кластер, но на него не доехали данные? unclean.leader.election.enable какой стоит? и какой конфиг кластера - реплики, min.isr 3. Гугление мне выдало вот эту статью, мне кажется там хорошо расписан процесс heartbeat между брокером - консьюмер-группой https://chrzaszcz.dev/2019/06/kafka-heartbeat-thread/

Alexander
Придется детально разбираться. Потому что мы наткн...

Вот тут достаточно хорошо рассказано про consumer group coordination https://youtu.be/QaeXDh12EhE

Alexander- Автор вопроса
Anton Churkin
1. После выпадения\возвращения брокера лидеры, уех...

1. Да. 2. Да, брокер вернулся, но данные не доехали, он их отказывался принимать. unclean.leader.election.enable не стоит. Кластер из трех нод, у всех топиков одна партиция, фактор репликции три, min-isr=2 Topic:xxx.metrics PartitionCount:1 ReplicationFactor:3 Configs: Topic: xxx.metrics Partition: 0 Leader: 2 Replicas: 2,3,1 Isr: 3,1,2 3. Спасибо большое за ответы, внимательно изучу

Alexander
1. Да. 2. Да, брокер вернулся, но данные не доехал...

Ну почему лидеры не вернулись понятно, брокер не встроился обратно в кластер. А вот почему это произошло - надо изучать, логи кафки посмотреть. Выпавший брокер не был контроллером кластера, случаем? unclean.leader.election.enable я, кстати, бы проверил на всякий случай, тк в ранних версиях кафки он по дефолту true, а в старших уже false, не скажу точно с какой версии

если ничего специально не делать, то любой брокер может быть координатором для любой консумер группы, всё зависит от того как хешкод ляжет. Есть такой служебный топик consumer_offsets, он как р другие топики побит по партициям, подефолту на 51 партицию если память мне не изменяет. Любая консумер группа прибивается к конкретной партиции consumer_offsets и тот брокер который является лидером этой служебной партиции тот и будет координатором группы, всё комитеты и запрос текущих офсетов будет идти через него.

Похожие вопросы

Обсуждают сегодня

Ребята, всем привет. Подскажите, пожалуйста, можно ли как-то через бота понять, что этого бота добавили в группу\канал и выдали ему права администратора?
Artem Stormageddon
9
Это переведённый текст с английского. Я не говорю на русском, но могу использовать переводчик Телеграм. Приветствую! Я начинающий веб-разработчик и все еще учусь. В настояще...
𐩱𐩪𐩣𐩱𐩲𐩺𐩡
3
А не хотим ли мы развлечься? 😉 Но так чтобы с пользой для наших профессиональных навыков?? 👨‍🎓👩‍🎓 Предлагаю на октябрь запланировать тестовый запуск новой командной игры "Игр...
Andrii Kurdiumov
2
Привет всем! Почему этот код не срабатывает при добавлении или удалении пользователя из чата? bot.on('chat_member', async (ctx) => { console.log(ctx); }) bot.launch({allo...
Alexander
5
у кого сколько оперативы на базе данных ?
АДИЛЬБЕК
4
Через бот апи возможно получить ID стикерпака? Не ссылку.
Vexylon [АФК до 09.09]
5
Привет Хочу сделать аналог iCloud’а для своих проектов, чтобы пользовательская информация хранилась в облаке, была доступна во всех сервисах, её можно было подсасывать везде)...
Виталий
9
В тг можно спарсить всех кто пишет в группе? Если список участников скрыт
S
3
код Event::listen('cms.page.display', function (&$content, $slug, $page, $html) { if (is_object($content)) { dump($content); } else { dump($s...
Point 111
3
Ребят, а двух-факторку для плагина Users и для бэкенда октября кто-то прикручивал? Поделитесь опытом
Constantine Anikin
4
Карта сайта