Маршрутизация

Маршрутизация

Правила маршрутизации позволяют закрепить конкретные балансёры за конкретными нодами или за primary. Настраиваются в админке: 🌐 Кластер → ⚙️ Настройки → Правила маршрутизации.

Правила имеют приоритет над стратегией распределения и над тестовым режимом. Пустая таблица — обычное поведение по стратегии.

Типы правил

TargetПоведение
→ любая нодаБалансёр всегда уходит на лучшую healthy-ноду (по стратегии). Если нод нет — fallback на primary
→ конкретная нодаЗакрепить за выбранной нодой. Если она down — fallback на любую другую → потом primary
⌂ только primaryВсегда обрабатывать локально, никогда не форвардить

Как добавить правило

  1. Админка → 🌐 Кластер⚙️ Настройки
  2. Промотай до блока 📋 Правила маршрутизации
  3. ➕ Добавить правило
  4. Впиши имя балансёра (есть автоподсказки из текущей статистики: kinotochka, zetflix, filmix, …)
  5. Выбери target
  6. Для «конкретная нода» — выбери ноду из списка
  7. Сохранить

Активные правила показываются синим баннером в шапке вкладки Кластер.

Сценарии использования

Гео-роутинг

Украинские источники — на ноду в Украине, российские — на primary в РФ. Стримы идут оттуда, где CDN ближе:

uaflix    → конкретная нода UA-KYIV
ashdi     → конкретная нода UA-KYIV
eneyida   → конкретная нода UA-KYIV
kinotochka → ⌂ только primary
filmix     → ⌂ только primary

Изоляция тяжёлой нагрузки

Тяжёлый источник с большими MP4-стримами — на выделенную ноду, чтобы не мешал остальным:

kinotochka → конкретная нода NODE-HEAVY

Отладка

Диагностировать проблему именно на primary, не смешивая с трафиком ноды:

zetflix → ⌂ только primary

Приоритет выбора ноды

При каждом /lite/<balancer> запросе primary решает так:

1. Есть правило для этого балансёра?
   ├─ target=local      → обработать локально (стоп)
   ├─ target=node-id    → закреплённая нода (если healthy) → иначе любая → иначе локально
   └─ target=node       → любая healthy-нода → иначе локально
2. Включён тестовый режим (force-node)?
   └─ да → любая healthy-нода
3. Иначе — по стратегии (hybrid / least-conns / latency)
Чтобы гарантированно проверить что балансёр идёт через ноду, добавь правило «балансёр → конкретная нода» и открой контент. В статистике ноды (🌐 Кластер → разверни строку ноды) счётчик этого балансёра начнёт расти, а в заголовках ответа клиент увидит X-Lampac-Server: <имя-ноды>.