Привет! Недавно в нашем офисе прошёл митап по Кафке. Очные места на него разлетелись со скоростью света. Как сказал один из спикеров: «Кафка секси».
С коллегами из Booking.com, Confluent, и Авито мы обсуждали подчас нелёкую интеграцию и поддержку Кафки, последствия её скрещивания с Kubernetes, а также известные и собственноручно написанные коннекторы для PostgreSQL
Мы смонтировали видео докладов, собрали со спикеров презентации и отобрали красивые фотографии с митапа. Если вам интересно посмотреть и послушать — заходите под кат.
Видеозаписи докладов
Коннекторы: зачем вас так много — Анатолий Солдатов, Авито
Анатолий рассказал, что такое коннекторы, какие преимущества и недостатки есть у JDBC и Debezium, и как мы в Авито пришли к идее написания своего CDC коннектора.
00:00 — Представление спикера
04:09 — Что такое Kafka Connect, какие коннекторы существуют
18:10 — Для чего обычно используется Connect
23:47 — Первый кейс Авито: data-bus
28:20 — Второй кейс Авито: как мы сделали свой CDC коннектор
41:28 — Ответы на вопросы слушателей
> Презентация Анатолия
Как приручить Apache Kafka? Опыт Booking.com — Александр Миронов, Booking.com
Александр поделился историями о ком, какие сложности возникли у его команды при работе с Кафкой, и как их решили.
00:00 — Представление спикера
06:22 — Какие проблемы появились при росте количества юзкейсов использования Кафки
08:58 — Создание абстракций для пользователей
14:15 — Аутентификация и секьюрити кластеров
23:53 — Сontrol plane, который всё связывает
27:41 — Забавные и не очень истории из практики
34:00 — Ответы на вопросы слушателей
> Презентация Александра
Kafka на Kubernetes: а по Хуану ли сомбреро? — Виктор Гамов, Confluent
Виктор ответил на вопрос о том, стоит ли запускать Apache Kafka и обрабатывающие потоки приложения на Kubernetes.
00:00 — Представление спикера
05:19 — Проблемы запуска stateful-приложений на Kubernates
17:52 — Kubernetes pod
22:33 — Работа с хранилищем
28:24 — Custom Kubernetes controllers
48:58 — Rolling upgrade
58:05 — Ответы на вопросы слушателей
> Презентация Виктора
Плейлист со всеми видео можно найти на нашем ютуб-канале.
Фотографии
Фотографии с митапа мы выложили в Фейсбуке и ВКонтакте. Посмотрите, как всё прошло, и отмечайте себя и друзей, если были на встрече.
Скоро вернемся с анонсами новых мероприятий в московском офисе Авито. До новых встреч!
commanderxo
Вопрос по второму докладу, о Booking.com: Если вы скрываете настоящее имя топиков за абстракцией в самописной библиотеке, то как конечные пользователи могут определить, что нужные им данные уже есть в Кафке?
Например: Команда А получила от бизнеса заказ на новую фичу и ей нужны исходные данные из другой области. Возможно в фирме уже есть какая-то другая команда Б, в другом проекте, а может даже федерации, которая уже публикует нужные записи. Как команды находят друг друга? Смотрят в Кафку и пытаются по имени топиков определить что там внутри? Пишут email во внутреннюю рассылку? Идут на SchemaRegistry сервер (при условии что сериализация в Avro) и ищут там? Одиним словом как вы поддерживатете знание о содержимом топиков, если их 3k+ штук?
anna_lesnykh Автор
Cам вопрос потерялся. Допишите, пожалуйста, помогу, чем смогу.
anna_lesnykh Автор
Принесла ответ от Александра: «Мы не скрываем имена топиков за абстракцией, мы скрываем имена кластеров, а также такие детали как bootstrap-servers, иным словом все, что связано с service discovery. Сами имена топиков имеют структуру «project__service__topic-name». С точки зрения поиска данных этот вопрос пока до конца не решен — мы стараемся помогать пользователям тем, что у каждого топика есть заданное описание, по которому можно понять, что там лежит (включая схему). В остальном юзеры обмениваются информацией самостоятельно. В будущем мне хотелось бы видеть специальный сервис для дискавери данных, как, например это делает Lyft».