Настройте брокеров Кафки, чтобы пережить сбой брокера

#apache-kafka

Вопрос:

У меня есть кластер Кафки (работает в K8S, платформа слияния, руль). Я хочу иметь настройку, способную преодолеть сбой 1 брокера. Я пробовал несколько настроек, но в целом это довольно новая тема для меня.

В принципе, у меня есть одно приложение-производитель и несколько прослушивателей событий. Я не хочу быть уверенным, что сбой 1 брокера не приведет к падению всего кластера.

Вот что я пробовал до сих пор:

  • 3 брокера, коэффициент репликации:3, минимальное количество синхронизированных реплик:1 — отключение всего кластера
  • 3 брокера, коэффициент репликации 3, в синхронных репликах: 2, как указано выше
  • 4 брокера, коэффициент репликации 2, несинхронные реплики: 3 — все еще не удается

Каким бы ни было оптимальное решение — количество сообщений не огромно. Я хочу, чтобы количество брокеров было достаточно низким для настройки производства. Есть идеи, как его правильно настроить?

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

Комментарии:

1. Можете ли вы уточнить, что происходит, когда вы закрываете 1 брокера? Перечисленные вами сценарии должны быть устойчивы к сбою одного брокера.

2. Похоже, ваша репликация не работает

3. @MickaelMaison Я получил информацию о 154 реплицированных разделах и 154 несинхронизированных репликах. Как проверить, действительно ли темы реплицируются, и как это обеспечить ?

Ответ №1:

3 брокера, коэффициент репликации 3, минута в репликах синхронизации: 2

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

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

Проверьте свою внутреннюю тему смещения, которая определена с той же конфигурацией

Поделитесь журналами 3 брокеров, одновременно отключив одного брокера

Поделитесь определением темы-опишите, чтобы мы могли убедиться, что она определена правильно