Сетевая архитектура и eBPF
Технические детали сетевой изоляции, eBPF-маршрутизации и подсистемы сохранения TCP-сессий при живой миграции.
eBPF-подсистема ядра
Платформа microsrv использует подсистему ядра Linux eBPF (Extended Berkeley Packet Filter) для выполнения высокоскоростной фильтрации сетевых пакетов, изоляции VPC и маршрутизации без классических накладных расходов iptables и netfilter.
Инженерные преимущества eBPF в microsrv:
- Аппаратная защита от IP-Spoofing: eBPF-программы проверяют подлинность IP- и MAC-адресов прямо на виртуальных сетевых интерфейсах, исключая возможность перехвата или подмены пакетов между соседними виртуальными машинами.
- Zero-Copy Outbound NAT: Трансляция исходящих адресов (SNAT) выполняется непосредственно в контексте ядра без дорогостоящего копирования данных в пользовательское пространство (user-space).
Архитектура живой миграции (Live Migration)
1. ТЕЛЕМЕТРИЯ: СИГНАЛ ОТЗЫВА ХОСТА
[TELEMETRY] Получен сигнал отзыва хоста (T-120s) • Резервирование мощности на Хосте B...
Механика работы по этапам:
- Мониторинг сигналов провайдера: Оркестратор microsrv получает аппаратные и программные метрики провайдера об интервале до возможного отзыва физического сервера.
- Итеративное предварительное копирование (Pre-copy phase): Основной объём оперативной памяти ВМ или песочницы контейнера асинхронно передаётся на целевой сервер без остановки гостевой ОС или процессов.
- Финал миграции (Stop-and-copy phase): На интервал менее 50 мс приостанавливается исполнение инструкций CPU, передаются последние изменённые страницы памяти и регистры процессора, а право записи на NVMe-диск переходит новому узлу.
- Мгновенное обновление eBPF-маршрутов (eBPF Rerouting): eBPF-программы на шлюзах и роутерах атомарно обновляют таблицы сокетов. Внешние клиентские TCP-соединения остаются открытыми и продолжают передачу данных.
[!NOTE] Сервисы с длительными TCP-сессиями (gRPC-стримы, WebSockets, пулы соединений баз данных) не теряют сетевое соединение при переносе ВМ и контейнеров.