Обзор развёртывания и архитектура
RUSEON Core — это автономный сервис видеоинфраструктуры в виде единого бинарного файла без внешних рантайм-зависимостей. Будь то развёртывание на компактных ARM64 шлюзах, выделенных серверах или в кластерах контейнеризации, RUSEON обеспечивает предсказуемое потребление ресурсов и минимальную нагрузку на процессор.
Сравнение способов развёртывания
| Способ развёртывания | Для чего лучше всего подходит | Преимущества | Особенности |
|---|---|---|---|
| Docker Compose | Домашние серверы, standalone production, edge-узлы | Декларативная конфигурация, автоперезапуск, изолированные тома | Требует установленного демона Docker |
| Автономный Docker | Kubernetes, Nomad, контейнерные кластеры | Стандартизированный образ, простота CI/CD доставки | Ручная настройка проброса портов и томов |
| Бинарный сервис (systemd) | Выделенные серверы (Bare-Metal), встраиваемые Linux платы | Максимальная производительность, прямой доступ к вызовам ядра | Требует ручной настройки systemd-юнита |
| Прямой доступ | Изолированные серверы без прокси | Минимальная задержка, простота WebRTC ICE | Требует прямого открытия портов наружу |
| Reverse Proxy | Хосты с несколькими сервисами, корпоративный DMZ | Автоматические сертификаты Let's Encrypt, WAF | Необходима правильная настройка заголовков WebSocket и WHEP |
Архитектура персистентного хранилища
RUSEON Core разделяет хранение данных на три независимые директории:
- Хранилище состояния (
/app/data/db): Встроенная база данных BadgerDB v4 (конфигурации камер, пользователи, JWT-ключи, метаданные архива). Рекомендуется размещать на быстрых SSD/NVMe. - Видеоархив (
/app/recordings): Иерархические файлы записей fMP4 ({camera}/{YYYY}/{MM}/{DD}/{HH}/*.mp4). Могут размещаться на HDD массивах, SATA SSD или сетевых хранилищах NAS/SAN. - Резервные копии (
/app/backups): Ежедневные снапшоты базы данных BadgerDB.
Подразделы руководства по развёртыванию
- Развёртывание в Docker: Запуск официального контейнера с монтированием томов и переменными окружения.
- Настройка Docker Compose: Готовые production-манифесты с healthcheck, политиками перезапуска и лимитами.
- Бинарная установка и systemd: Запуск нативного бинарника Go в качестве фоновой службы Linux systemd.
- Чек-лист подготовки к Production: Настройка параметров ядра sysctl, лимитов ulimit, фаервола и SSL/TLS сертификатов.
- Планирование хранилища и IOPS: Расчёт пропускной способности дисков, выбор файловой системы и параметры монтирования.
- Настройка Reverse Proxy (Nginx/Caddy): Конфигурация HTTPS, проксирования WebSocket и эндпоинтов WHEP.
- Прямой доступ в сеть: Безопасный запуск инстанса RUSEON на публичном IP-адресе.
- Сетевая архитектура и порты: Матрица портов, диапазон UDP для WebRTC ICE и правила межсетевого экрана.