microsrv:~$
Консоль

Сетевая архитектура и 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. ТЕЛЕМЕТРИЯ: СИГНАЛ ОТЗЫВА ХОСТА

Хост A (Исходный)[RUNNING]Физический серверVM: app-prod-018 ГБ RAM • 4 vCPUПамять: 8 ГБ выделеноvCPU ActiveХост B (Целевой)[STANDBY]Резервный серверVM: app-prod-018 ГБ RAM • 4 vCPUЕмкость: ЗарезервированаReady for Cutover✓ ВМ Активна1. Поток страниц RAM2. Дельта измененных страниц3. Микропауза (<50мс)

[TELEMETRY] Получен сигнал отзыва хоста (T-120s) • Резервирование мощности на Хосте B...

Схема: Архитектура живой миграции памяти без разрыва TCP-соединений.

Механика работы по этапам:

  1. Мониторинг сигналов провайдера: Оркестратор microsrv получает аппаратные и программные метрики провайдера об интервале до возможного отзыва физического сервера.
  2. Итеративное предварительное копирование (Pre-copy phase): Основной объём оперативной памяти ВМ или песочницы контейнера асинхронно передаётся на целевой сервер без остановки гостевой ОС или процессов.
  3. Финал миграции (Stop-and-copy phase): На интервал менее 50 мс приостанавливается исполнение инструкций CPU, передаются последние изменённые страницы памяти и регистры процессора, а право записи на NVMe-диск переходит новому узлу.
  4. Мгновенное обновление eBPF-маршрутов (eBPF Rerouting): eBPF-программы на шлюзах и роутерах атомарно обновляют таблицы сокетов. Внешние клиентские TCP-соединения остаются открытыми и продолжают передачу данных.

[!NOTE] Сервисы с длительными TCP-сессиями (gRPC-стримы, WebSockets, пулы соединений баз данных) не теряют сетевое соединение при переносе ВМ и контейнеров.