Вернуться к статьям

Discord автоматизирует ScyllaDB: кластеры, которые не просят кофе

8 мая 2026
1 мин чтения
Discord автоматизирует ScyllaDB: кластеры, которые не просят кофе

Discord рассказал, как управляет сотнями нод ScyllaDB без ночных кошмаров — и это не магия, а Terraform с Ansible.

Discord — это не только место, где разработчики спорят о табуляции, но и гигантская инфраструктура на ScyllaDB. И вот команда решила поделиться рецептом, как не сойти с ума, управляя сотнями кластеров. Спойлер: автоматизация и никаких ручных деплоев в 3 часа ночи.

Основная боль — масштабирование. Представьте, что вы пытаетесь собрать IKEA-стеллаж, но инструкция на китайском, а детали постоянно теряются. Примерно так выглядит ручное управление кластерами. Discord же написали свой инструмент на Python, который через Terraform и Ansible разворачивает, обновляет и мониторит ноды. Всё как в лучших домах DevOps.

Инженеры Discord столкнулись с типичными граблями: консистентность данных, перераспределение токенов и горячие точки. Их решение — оркестратор, который постепенно переносит данные, не роняя прод. Кстати, они используют gossip-протокол для обнаружения нод — как сплетни в офисе, только надёжнее.

Конечно, не обошлось без курьёзов. Например, пришлось бороться с «шумными соседями» — когда одна нода жрёт все ресурсы, а остальные страдают. Решили через cgroups и тюнинг compaction. В общем, стандартный набор для тех, кто хочет спать спокойно.

Комментарий студии METABYTE: Discord показал, что даже с таким зверем, как ScyllaDB, можно подружиться, если правильно настроить CI/CD. У нас тоже есть пара историй про автоматизацию — правда, без сотен нод, но с тем же количеством кофе.