Перенос настроек Kafka с кластера с одним узлом на кластер с несколькими узлами - PullRequest
2 голосов
/ 22 апреля 2019

В настоящее время у нас нет большой нагрузки на Кафку. Но мы ожидаем некоторую достойную нагрузку в будущем. Следовательно, по соображениям экономии средств мы планируем иметь стек Kafka только с одним узлом (один Zookeeper и один Kafka Broker) в настоящее время, а позже, исходя из нагрузки, мы хотели бы сделать его подходящим кластером (с 3 узлами). по крайней мере).

Можно ли начинать таким образом (начиная с одного узла, а затем добавляя больше узлов).

Я где-то читал, что это невозможно сделать без проблем. Может кто-нибудь объяснить, что может пойти не так, если нет?

1 Ответ

2 голосов
/ 22 апреля 2019

Вам понадобится время простоя, чтобы остановить Zookeeper + Kafka, отредактировать конфигурации, чтобы они включали больше серверов, а затем запустить их резервное копирование.В этих терминах это не является бесшовным, так как будут возникать перебои в обслуживании для чтения / записи приложений.Но как только все начнется снова, все должно быть в порядке.

Вне локальной среды определенно рекомендуется начинать как минимум с 3 Zookeepers, даже если у вас есть только один брокер.Отказ только одного сервера Zookeeper будет очень плох для Kafka ... И также рекомендуется иметь как минимум 3 посредника для репликации и отказоустойчивости , несмотря на то, сколько у вас нагрузки.Наличие хотя бы одной копии данных лучше, чем вообще никакой.

Вам не нужно масштабировать Zookeeper равномерно с Kafka;например, 3 ZK + 1 брокер, затем добавьте больше брокеров, и не используйте больше 5-7 Zookeepers для больших кластеров.

...