• Русский
  • Миграция с ZooKeeper на режим KRaft

    Начиная с Kafka 4.0, режим ZooKeeper больше не будет поддерживаться. Оператор также удалит поддержку режима ZooKeeper в будущих версиях. Рекомендуется как можно скорее мигрировать ваши экземпляры Kafka в режим KRaft.

    Особенности миграции
    • Прерывание сервиса: Процесс миграции может вызвать временные перебои в работе сервиса.
    • Изменения подключения: После миграции имена pod и сервисов (svc) изменятся, что может привести к изменению адресов подключения. Крайне важно своевременно обновить адреса доступа к вашим экземплярам после миграции. Если вы подключаетесь к экземпляру Kafka через сервисы bootstrap или external-bootstrap, адрес доступа останется неизменным, и обновления не потребуются.
    • Необратимость: После миграции в режим KRaft откат к режиму ZooKeeper не поддерживается.

    Требования

    • Версия Kafka должна быть 3.8 или выше
    • Уведомить потребителей и производителей о возможных временных перебоях
    • Убедиться, что кластер Kafka здоров и полностью функционирует

    Шаги миграции

    CLI
    1. Выполните патчинг экземпляра Kafka для переключения в режим KRaft:
      kubectl patch rdsKafka <name> -n <namespace> --type=merge -p '{"spec":{"mode":"KRaft"}}'
    2. Отслеживайте статус миграции:
      kubectl get rdsKafka <name> -n <namespace> -o jsonpath='{.status.phase}'
      Статус будет проходить через следующие этапы:
      • Migrating: Идет процесс миграции
      • Active: Миграция успешно завершена

    Действия после миграции

    Особенности миграции

    Если ваши приложения не используют сервисы bootstrap или external-bootstrap (например, при внутреннем или внешнем доступе они используют IP-адреса и порты, связанные с <name>-kafka-<i>.<namespace>.svc.cluster.local), необходимо обновить их конфигурации подключения.

    1. Проверка подключения клиентов и целостности данных:

      • Убедитесь, что все приложения производителей и потребителей успешно подключаются к кластеру Kafka (проверьте логи на наличие ошибок подключения, таймаутов или проблем с аутентификацией).
      • Выполните тестовую отправку и получение сообщений: отправьте тестовые сообщения через производителей и подтвердите их получение потребителями без потерь или повреждений данных.
      • Проверьте, что основные бизнес-топики доступны и содержат все данные, сохранённые до миграции.
    2. Мониторинг производительности:

      • Следите за производительностью контроллера
      • Мониторьте обработку партиций и операции с метаданными