• Русский
  • Архитектура

    Alauda Streaming Service для Kafka использует распределенную архитектуру Kafka, чтобы предложить проверенное решение высокой доступности, соответствующее требованиям предприятий к системам обработки сообщений с высокой пропускной способностью, надежностью и эластичной масштабируемостью.

    Содержание

    Режим координации ZooKeeper

    Режим координации ZooKeeper является традиционной реализацией распределенной координации для Kafka, использующей кластер ZooKeeper для управления метаданными кластера Kafka, регистрации брокеров и выборов контроллера, среди прочих основных функций. Этот режим имеет следующие характеристики:

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

    kafka zk arch

    Основные компоненты

    1. Кластер ZooKeeper
      Высоко доступный кластер, состоящий из нечетного числа узлов, ответственный за следующие задачи:

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

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