Исправление кластера кафки с недостаточно реплицированными разделами
У нас проблема с одним из наших кластеров кафки. У нас 6 узлов с версией 1.0, все темы имеют коэффициент репликации 3 и 10 разделов / тема, что нам показалось достаточным.
Из-за сбоя питания 3 узла на некоторое время вышли из строя, и теперь у нас МНОГО тем, которые, как сообщается, имеют недостаточно реплицированные разделы.
Единственное решение (и, кажется, более приемлемое), которое мы видели на форумах, - это повторный перезапуск, пока все не будет исправлено, но я надеюсь, что есть лучшее решение для этого. Кто-нибудь оправился от этой ситуации? Сеть или процессор не должны быть проблемой для синхронизации, поскольку это даже не близко к пределам.
Большое спасибо!
2 ответа
Наконец, мы смогли восстановить кластер, удалив вручную многие из сломанных, поэтому сократили недостаточно реплицированные разделы с примерно 4600 до примерно 1 тыс.
После этого, а также имея все из них только на 2 узлах, мы решили сделать упорядоченное завершение работы на обоих узлах, и после этого репликация началась снова.
Я предполагаю, что есть какая-то ошибка, из-за которой kafka перестает реплицироваться с узлов, но это помогло.
Позволить Kafka обрабатывать это автоматически, вероятно, будет лучшим выбором, обычно с помощью инструмента переназначения тем. https://www.google.no/search?q=kafka+partition+reassignment+tool
Вы также можете форсировать перераспределение, используя все ваши темы и записывая все сообщения в новую тему, имея те же настройки, но немного отличающееся имя, чем текущие темы.