Архитектура
Alauda Streaming Service для Kafka использует распределенную архитектуру Kafka, чтобы предложить проверенное решение высокой доступности, соответствующее требованиям предприятий к системам обработки сообщений с высокой пропускной способностью, надежностью и эластичной масштабируемостью.
Содержание
Режим координации ZooKeeper
Режим координации ZooKeeper является традиционной реализацией распределенной координации для Kafka, использующей кластер ZooKeeper для управления метаданными кластера Kafka, регистрации брокеров и выборов контроллера, среди прочих основных функций. Этот режим имеет следующие характеристики:
- Зрелость и стабильность: Подтвержден в больших производственных средах, обладает чрезвычайно высокой надежностью.
- Разделение задач: ZooKeeper сосредоточен на координации кластера, в то время как брокеры Kafka занимаются обработкой сообщений.
- Автоматическое восстановление: Автоматическая выборка контроллера осуществляется с помощью механизма наблюдателей ZooKeeper.
- Управление метаданными: Хранит ключевые метаданные, такие как информация о разбиении тем и смещения потребителей.
- Зависимость от расширения: Требуется дополнительное обслуживание кластера ZooKeeper, что вводит операционную сложность.

Основные компоненты
-
Кластер ZooKeeper
Высоко доступный кластер, состоящий из нечетного числа узлов, ответственный за следующие задачи:- Регистрация брокеров и мониторинг их состояния.
- Выбор контроллера и восстановление после сбоев.
- Хранение метаданных тем/разбиений.
- Управление смещениями групп потребителей (устаревшие версии).
-
Кластер брокеров Kafka
Кластер обработки сообщений, состоящий из нескольких узлов брокеров:- Каждый брокер регистрируется в ZooKeeper при запуске.
- Выборы лидеров разбиений проводятся контроллером.
- Поддерживает горизонтальное масштабирование, увеличивая пропускную способность за счет добавления брокеров.