CS-AKa
Эксперт40 часов

Продвинутый Apache Kafka

На курсе вы освоите тонкую настройку продюсеров и консьюмеров, реализацию транзакций и Exactly-Once семантики, а также научитесь интегрировать Kafka с внешними системами, обеспечивать безопасность и строить эффективные архитектуры в Kubernetes с учётом современных лицензионных ограничений

от 42 600₽
Для физ. лиц - 42 600₽
Для организаций - 49 200₽
Ближайшая группа
07.12.2026-11.12.2026
Формат
Гибридный
Длительность
40 часов
Часы занятий
10:00–17:00

Целевая аудитория

Middle+/Senior разработчики

Data Engineers

Архитекторы распределённых систем

DevOps/SRE-инженеры

Необходимая предварительная подготовка

  • Понимание базовых концепций Kafka (топики, партиции, consumer groups)
  • Уверенные навыки работы в Linux и Docker/Kubernetes
  • Опыт написания кода на Java, Python или Go
  • Понимание основ распределенных систем и сетевых протоколов
от 42 600₽
Для физ. лиц - 42 600₽
Для организаций - 49 200₽

Преподаватели курса

Михаил Крылов

Преподаватель, системный архитектор и разработчик ПО с 23-летним опытом в ИТ-обучении и реализации сложных проектов
Подробнее

Программа курса

  • Эволюция метаданных: KRaft vs ZooKeeper. Миграция production-кластеров, откат, мониторинг
  • Физическое хранение: сегменты, индексы, page cache, zero-copy (sendfile), mmap
  • Репликация: ISR, min.insync.replicas, unclean.leader.election.enable, quorum-based replication в KRaft
  • Политики хранения: Retention vs Compaction, cleanup.policy, delete.retention.ms
  • Лабораторная работа: Развёртывание KRaft-кластера (3 брокера + 3 контроллера). Эмуляция сбоев, анализ переизбрания лидеров, исследование логов через kafka-dump-log

  • Producer: буферизация (buffer.memory), батчинг (batch.size, linger.ms), сжатие (compression.type — LZ4 vs Zstd), идемпотентность.
  • Consumer: fetch.min.bytes, fetch.max.wait.ms, max.poll.records, max.poll.interval.ms.
  • Перебалансировка: статические группы (Group Instance ID), CooperativeStickyAssignor для zero-downtime rebalance.
  • Паттерны отказоустойчивости: Dead Letter Queues (DLQ), Retry-топики с экспоненциальным backoff
  • Лабораторная работа: Стресс-тестирование (kafka-producer-perf-test). Настройка DLQ и retry-механизмов. Сравнение throughput при разных compression.type.

  • Идемпотентность продюсера: enable.idempotence, max.in.flight.requests.per.connection
  • Транзакционный API: initTransactions, beginTransaction, commitTransaction, обработка ProducerFencedException
  • Read-Process-Write паттерн для потоковой обработки
  • level: read_uncommitted vs read_committed, aborted transactions
  • Лабораторная работа: Реализация транзакционного переноса данных между топиками. Эмуляция сбоя на этапе commit, анализ поведения потребителей

  • Бинарная сериализация: Avro vs Protobuf vs JSON Schema. Сравнение, генерация классов
  • Schema Registry: архитектура, режимы хранения (in-memory, JDBC, S3), интеграция с клиентами
  • Стратегии совместимости: BACKWARD, FORWARD, FULL и транзитивные версии. Best practices
  • Альтернативы Confluent Schema Registry: Apicurio Registry (Red Hat, Apache 2.0), Karapace (Aiven)
  • Лабораторная работа: Настройка Apicurio Registry. Реализация безопасного изменения схемы (удаление/добавление полей) без остановки продюсеров и консьюмеров

  • Kafka Streams: StateStore, RocksDB, Topology (DAG), KStream vs KTable
  • Оконныеагрегации: Tumbling, Hopping, Session Windows, Grace period
  • Processor API и Punctuators для сложной бизнес-логики
  • ksqlDB: потоки и таблицы, непрерывные запросы, Pull-запросы, материализованные представления
  • Лабораторная работа: Создание приложения для обнаружения аномалий (фрод-мониторинг) с использованием Session Windows и локального StateStore

  • Kafka Connect: распределённый режим, offset management, REST API, error handling
  • Single Message Transformations (SMT) для трансформации «на лету»
  • Change Data Capture (CDC): Debezium (PostgreSQL, MySQL, Oracle), архитектура, snapshotting
  • Интеграцияс Big Data: Apache Spark Structured Streaming, Apache Flink, ClickHouse
  • Лабораторная работа: Настройка CDC-конвейера: Debezium (PostgreSQL) — Kafka Connect — Avro -Sink-коннекторв

  • Шифрование трафика: SSL/TLS, взаимная аутентификация (mTLS)
  • Аутентификация: SASL/SCRAM, SASL/PLAIN, OAuth2 / OAUTHBEARER (интеграция с Keycloak)
  • Авторизация: ACL (Access Control Lists), интеграция с Open Policy Agent (OPA) для гибкого RBAC
  • Мультиарендность: квоты на throughput и request rate, изоляция топиков.
  • Лабораторная работа: Настройка mTLS и SASL/OAuth Разграничение прав доступа для различных команд разработки через OPA

  • JMX-метрики: Under Replicated Partitions, Active Controller, Request Latency, Consumer Lag
  • Стек мониторинга: Prometheus (JMX Exporter) + Grafana, настройка алертов
  • Автоматизация: Cruise Control для автоматического ребалансинга партиций и self-healing
  • Tiered Storage:
    • Зачем нужен: разделение hot/warm/cold данных, экономия до 70% стоимости хранения
    • Архитектура RemoteLogStorage: интерфейс RemoteStorageManager, жизненный цикл сегментов
    • Выбор backend (с учётом лицензий):
      • SeaweedFS (Apache 2.0) — основная open-source альтернатива
      • Ceph RGW (LGPL 2.1) — для зрелых инфраструктур
      • Облачные S3 — Yandex Object Storage, AWS S3, VK Cloud S3
      • LocalStack (Apache 2.0) — для локальной разработки
    • Настройка Kafka + SeaweedFS: remote.log.storage.system.enable, параметры кэширования
    • Производительность: влияние на latency при чтении cold-данных, prefetch-стратегии.
  • Лабораторная работа: Развернуть SeaweedFS-кластер в Docker Compose. Подключить к Kafka как RemoteLogStorage. Залить большой объём данных, дождаться tiering, проверить через weed shell и s3 ls. Сравнить latency чтения hot и cold сегментов

  • Оператор Strimzi: развертывание Kafka в K8s, StatefulSets, Persistent Volumes, внешние слушатели
  • Альтернативы Confluent Platform:
    • Redpanda — C++-реализация, совместимость с Kafka API, BSL-лицензия
    • WarpStream — S3-native, BYOC (Bring Your Own Cloud), agent-based архитектура
    • AutoMQ — cloud-native Kafka на S3, разделение compute/storage
    • Чистый Apache Kafka upstream — без зависимости от вендора
  • Российские реалии:
    • Yandex Managed Kafka, VK Cloud Managed Kafka
    • Arenadata Kafka (на базе Greenplum-экосистемы)
    • Локальные облака (Yandex Cloud, SberCloud, MTS Cloud)
  • Лабораторная работа: Развертывание Kafka-кластера в K8s с помощью Strimzi. Настройка внешних слушателей и интеграция с Prometheus/Grafana

  • Лицензионный ландшафт 2024–2026:
    • Почему MinIO перешёл на AGPLv3 (апрель 2021) и что это значит для Enterprise
    • Confluent Community License vs Apache 2.0
    • Elastic (SSPL), HashiCorp (BSL) — уроки для индустрии
  • Анализ лицензий компонентов стриминговой платформы
  • Матрица выбора стека:
    • Бюджетный open-source: Kafka + SeaweedFS + Apicurio + Strimzi
    • Enterprise с поддержкой: Confluent Platform, Redpanda
    • Cloud-native: WarpStream, AutoMQ
    • Российский стек: Yandex Managed Kafka + Yandex Object Storage
  • Юридические риски:
    • AGPLv3: требование раскрытия исходников при модификации и SaaS-использовании
    • BSL: ограничения для коммерческих вендоров
    • Confluent Community License: запрет на использование в конкурирующих сервисах
  • Best practices:
    • Проведение license audit перед внедрением
    • Использование SBOM (Software Bill of Materials)
    • Мониторинг изменений лицензий (GitHub, mailing lists)
  • Лабораторная работа: Анализ гипотетического Enterprise-кейса. Выбор стека компонентов с учётом лицензионных ограничений, бюджетов и требований к поддержке. Защита архитектурного решения

Требования:

  • Развернуть отказоустойчивый KRaft-кластер в Kubernetes (Strimzi) с mTLS и OAuth2
  • Организовать CDC из PostgreSQL в Kafka (Debezium) с использованием Apicurio Registry (вместо Confluent)
  • Реализовать потоковую агрегацию в Kafka Streams с использованием окон и StateStore
  • Настроить Tiered Storage с SeaweedFS для выноса cold-данных
  • Выгрузить результаты в ClickHouse через Kafka Connect
  • Настроить комплексный мониторинг (Prometheus + Grafana) и алертинг
  • Обосновать выбор всех компонентов с точки зрения лицензионной совместимости и TCO (Total Cost of Ownership)

Стоимость и условия оплаты

от 42 600₽
Для физ. лиц - 42 600₽
Для организаций - 49 200₽

Записаться на курс можно

По телефону
+7(495)648-35-00
Через наш
Telegram-чат

Расписание курсов

ЭкспертГибридный40 часов
CS-AKa

Продвинутый Apache Kafka

07.12.2026-11.12.2026
Гибридный
40 часов
10:00–17:00
42 600₽
49 200₽
Для физ. лиц - 42 600₽
Для организаций - 49 200₽
Учебный центр РРС
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.