Система аварийной доставки данных внутри яндекса "Молния", переживающая потерю 2 дц из 3

SRE и эксплуатация систем

C/C++
Отказоустойчивость
Распределенные системы
Управление инцидентами
Надёжность продакшена
DevOps / SRE

Программный комитет ещё не принял решения по этому докладу

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

devops; разработчики highload; все, кто когда-то чинил продакшен, и натыкался на неработающую управляющую систему

Тезисы

Молния - это система аварийной доставки данных. Она должна выживать при любых инцидентах, в частности при выпадении нескольких датацентров. Молния использует push-схему (сама приносит таргеты на целевые хосты), а не pull (когда хосты приходят в некоторый endpoint за данными по таймеру). Это позволяет ей доставлять данные на десятки тысяч хостов за секунды, и иметь общий флот более 100000 хостов под управлением. Молния не требует автоматических или ручных переключений мастера. Ее SLO 99999, и она полноценно работает, если жив хотя бы один инстанс.

В этом докладе я расскажу вам с какими сложностями мы столкнулись на практике, почему установка grpc/mtls соединения к хосту это слишком дорого, и как уронить систему на 10 минут, даже если она требует для работы только часы на хостах и рабочую сеть (мигающая тоже подойдет).

Владислав Тюльбашев

ООО "Яндекс Беспилотные Технологии"

Бывший олимпиадник. В яндексе около 7 лет, за это время потрогал несколько крупных highload-сервисов. Хожу на все разборы инцидентов, всегда задаюсь вопросами "что пошло не так" и "как можно было увернуться от этой аварии". Живу на ArchLinux, увлекаюсь симрейсингом и не только.

Видео