Исправление кластера kafka с недостаточно реплицированными разделами

У нас проблема с одним из наших кластеров kafka. У нас 6 узлов с v1.0, все темы имеют коэффициент репликации 3 и 10 разделов на тему, чего нам показалось достаточно.

Из-за сбоя питания 3 узла на какое-то время вышли из строя, и теперь у нас есть МНОГО тем, которые, как сообщается, имеют недостаточно реплицированные разделы.

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

Большое спасибо!

Построение конвейеров данных в реальном времени с Apache Kafka: Руководство по Python
Построение конвейеров данных в реальном времени с Apache Kafka: Руководство по Python
Apache Kafka - популярная платформа распределенной потоковой передачи данных, которую можно использовать для построения конвейеров данных в реальном...
3
0
4 173
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Лучше всего позволить Kafka обрабатывать это автоматически, обычно с помощью инструмента переназначения темы. https://www.google.no/search?q=kafka+partition+reassignment+tool

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

Ответ принят как подходящий

Наконец, мы смогли восстановить кластер, удалив вручную многие из сломанных, поэтому мы уменьшили количество недостаточно реплицированных разделов с примерно 4600 до примерно 1k.

После этого, а также имея все они только в 2 из узлов, мы решили выполнить заказанное завершение работы на обоих узлах, и после этого репликация началась снова.

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

Обновлять:

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

проверьте, помогает ли это вам. stackoverflow.com/questions/51491152/…

Raj 26.12.2019 22:46

Другие вопросы по теме