Получается, что если у меня в кластере будет два брокера,

то это можно считать отказоустойчивостью? (на верхнем уровне)

И если у меня первый брокер выходит из строя, то оставшийся второй брокер сможет принимать на себя сообщения?

И тут же возник вопрос - а куда тогда надо натравливать "приложение"?
Ведь если в "приложении" указать адрес подключения (bootstrapserver) первого брокера, а затем "выключить" первый брокер, то куда "приложние" будет писать сообщения?

16 ответов

35 просмотров

два брокера это кластер, но не отказоустойчивость в общем понимании при работе с кафкой. Хотя тут надо бы понять что вы считатаете "отказоустойчивостью". Кафка драйвер он же кафка консумер или продюсер и является умным и сам узнает о топологии кластера по любой ноде к которой удалось подключиться. Соответственно вам надо просто указывать хотя бы больше чем один хост

Стикер

S-P Автор вопроса
Nick
два брокера это кластер, но не отказоустойчивость ...

я под отказоустойчивостью понимаю, что если "выключить" один брокер, то работа Системы (информационной системы в целом) не остановится, и продолжит работу

S P
я под отказоустойчивостью понимаю, что если "выклю...

не знаю подойдёт ли вам такой ответ - с помощью кафки можно добиться отказоустойчивости в вашем определении. Этого можно достичь за счёт нескольких узлов(брокеров) и реплицирования хранимых данных

S P
я под отказоустойчивостью понимаю, что если "выклю...

ну это както слишком высокоуровнево. А что насчет кучи ньансов по типу целостности данных? А как не убить производительность кафки трафиком репликации после включения ноды обратно или подключением новой и т.п.

S-P Автор вопроса
Сергей Голод
не знаю подойдёт ли вам такой ответ - с помощью ка...

да, я примерно в этом направлении смотрю, чтобы сделать два...три брокера. И чтобы при выключении одного из них, можно было бы писать сообщения в топики. (как я это понимаю) Сейчас хочу подружить два хоста (два брокера) между собой, но пока не попадалась информация о настройках для такой реализации. Два брокера - это вообще рабочая схема? А то попадается информация про кворум из трех нод... 🧐

S-P Автор вопроса
Nick
ну это както слишком высокоуровнево. А что насчет ...

Да, вот такой уровень опыта у меня на текущий момент. Если здесь нельзя с вопросами "от новичков", то дайте знать, пожалуйста.

S P
Да, вот такой уровень опыта у меня на текущий моме...

это просто было чтобы показать что мало думать о количестве брокеров

S-P Автор вопроса
Nick
это просто было чтобы показать что мало думать о к...

в целом понимаю, что будет еще куча нюансов, но сейчас начинаю с малого, с начала. База, т.с. )

S P
в целом понимаю, что будет еще куча нюансов, но се...

с малого это завести кластер, начать лить трафик на него и играться с выключениями и смотреть что происходит

S-P Автор вопроса
Nick
с малого это завести кластер, начать лить трафик н...

Кластер завел. Состоит из одного брокера. Данные могут туда писаться. Сделал ACL (тоже база, начало), простую аутентификацию. Следующим шагом у меня стоит запустить второго брокера на другом хосте и добавить его в "первый" кластер. В Интернете нашел статью, где описываются похожие действия, но там поднимается на одном локальном хосте (т.е. два брокера на разных портах) А меня интересует схема с двумя разными хостами. Как я понимаю, сменой broker.id тут дело не ограничится. Надо еще править zookeeper-файл. Просто я не совсем понимаю в чем прикол поднимать два брокера на одном локальном хосте, когда речь идет о, пусть и начальной, но все-таки, "отказоустойчивости"

S P
Кластер завел. Состоит из одного брокера. Данные м...

Как раз таки смены broker.id должно быть достаточно. Однако следует помнить, что при добавлении второго брокера нагрузка сама на него не переедет.

S-P Автор вопроса
Vitaliy Sitnikov
Как раз таки смены broker.id должно быть достаточн...

ну я ещё с metaId поковырялся, и с параметром зукипер-коннект. Сейчас UI показывает, что два брокера в кластере )))))) и даже есть активный контроллер что такое Partition skew? у меня там показывается +- 2.00% Предполагаю, что это связано с какими-то партициями, которые находятся на брокерах, ибо на первом брокере партиций 26, а на втором брокере их 25... В описании брокера Online: 51 of 51 URP: 0 In Sync Replicas: 51 of 51 Out Of Sync Replicas: 0 @vshmukk Aliaksei Спасибо за подсказки!

S-P Автор вопроса

пока пилим так, с ZK. оставил только одного ZK, система вроде как взлетает. А чем может быть проблема: когда в кластере два брокера, то начинаются какие-то тормоза с отображением топиков в UI (да и в кондукторе тоже) Когда выключаю один из брокеров, то топики отображаются корректно, быстро. Заметил такую ситуацию именно при работающих двух брокерах. Предполагаю, что как-то связано с распространением топиков между брокерами... На момент подключения второго брокера на первом брокере уже были топики с сообщениями

S P
пока пилим так, с ZK. оставил только одного ZK, си...

что значит тормоза? обычно нет смысла разбираться в лишней тулзе если она так сильно смущает своим поведение и надо бы скриптами нативными обмазываться благо уже все что надо вместе с кафкой идет

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

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

if (user?.choseType === 'oneDay') { await ctx.reply( 'Добро пожаловать в команду «Магнита»! Правда, на один день ☺️ ', ); await ctx.s...
Kokni
1
Читаю сейчас [нет, уже больше не читаю!] курсовую о Булгакове, написанную, похоже, с помощью ChatGPT. Это удивительный психоделический опыт. Текст в основном написан в стиле б...
✨ Uni [🌊 В отпуске]
1
Это фейк @cruppto_newbot?
Antskup
13
всем салют сегодня утро заметил что бот не может отправлять фотки по url. ручками в браузере ссылка норм открывает фотки. падает ошибка 'Bad Request: failed to send message ...
Vasya Ivanov
9
ребят, привет. за какое время бот полученную заявку на вступление в группу может принять \отклонить? Помню речь была про 5 минут, сейчас как?
Роман Ромашин :)
10
Доброго времени суток. Правильно ли я понимаю, что с введением новой платежной единицы stars, я просто могу оставить текущую платёжку от Юкассы, которая выполняется на сайте с...
Prokhor Chulkov
7
вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Добрый день! Не подскажете как к модели Категории Шопоголика добавить отношение Тейлора. Пробовал по документации, но не получается. Мб уже кто-то делал?
Николай Афанасенко
6
@veranikaEU получилось? Можно увидеть рабочий код?
Alex Kom
8
Сonst magicTgHTML = (text, entities) => { let processedText = text; let offsetShift = 0; entities.forEach(entity => { const { offset, length, type, url, ...
Андрей
1
Карта сайта