Мы рассмотрим архитектуру сетевого балансировщика нагрузки Яндекс.Облака. Разберём абсолютно все компоненты стека балансировщика, узнаем про высокоуровненвые компоненты, реализующие API сервиса. Заглянем в control plane балансера и рассмотрим поток сообщений внутри микросервисной архитектуры. Погрузимся в глубины data plane и узнаем, как обеспечить космическую пропускную способность и бесконечное горизонтальное масштабирование. Узнаем, как устроены healthcheck сервисы и динамическое изменение состава бэкэндов баланировщика. Обсудим уроки, полученные при разработке балансировщика, и поделимся планами на будущее.
Работаю в Яндексе с 2011 года. Разрабатывал инфраструктуру Поиска, руководил разработкой L7-балансировщика yandex.ru, сейчас в Яндекс.Облаке разрабатываю L4-балансировщик. Пишу на C/C++, Go, Python, Rust.