Настройки Plane и токены
Общие настройки, хранилище вложений, модульные токены для интеграций.
Раздел «Настройки» собирает то, что относится ко всей инсталляции, а не к отдельной камере или организации: политики платформы, сетевой контур и TLS, хранилище вложений событий, ключи для внешних интеграций и шаблоны камер.
Пункт меню один, но точка входа зависит от роли:
| Раздел | Адрес | Суперадмин | Админ организации |
|---|---|---|---|
| «Платформа» | /admin/settings/platform |
посадочная страница | — |
| «Сеть и TLS» | /admin/settings/network |
✔ | — |
| «Хранилище событий» | /admin/settings/storage |
✔ | — |
| «Приём событий» | /admin/settings/integrations |
✔ | посадочная страница |
| «Шаблоны камер» | /admin/settings/templates |
✔ | ✔ |
Оператору раздел недоступен: прямой переход даёт «Страница не найдена».
«Платформа»#
Максимальная длительность экспорта DVR#
Ограничивает длину фрагмента, который пользователь может выгрузить из архива. Значение задаётся в минутах: «Глобальная политика CCTV: от 1 минуты до 24 часов. Длинные клипы увеличивают чтение с дисков и нагрузку на память.»
Если значение не задано, действует умолчание — 15 минут. Настройка применяется сразу, без перезапуска, и действует на все организации; уже открытый плеер архива подхватит новое значение при следующем открытии. Выделить фрагмент длиннее разрешённого плеер не даст — см. Архив (DVR).
30–60 минут закрывают подавляющее большинство обращений («выгрузите инцидент за смену»). Если регламент требует часами выгружать сплошную запись, поднимайте лимит осознанно: одновременная выгрузка нескольких многочасовых клипов — заметная нагрузка на диски узла.
Операционное логирование#
Поле «Минимальный записываемый уровень» задаёт, что попадает в журналы Plane. Изменение применяется без перезапуска.
Два состояния, которые стоит узнавать:
- «Требуется синхронизация» — сохранённый уровень ещё не применён процессом.
- «Задано окружением» — уровнем управляет переменная
RUST_LOGв окружении сервиса, и в консоли его менять нельзя. Уберите переменную из unit-файла, если хотите управлять уровнем из интерфейса.
Сами журналы читаются в разделе «Мониторинг» — см. Аудит и журналы.
Установка#
Блок «Установка» показывает параметры из plane.toml только для чтения, число настроенных
организаций и признак однотенантного режима. Менять их нужно в файле конфигурации —
plane.toml — все параметры.
«Сеть и TLS»#
Здесь задаются идентичность и слушатель Plane: «Канонический публичный URL» (он «никогда не выводится из bind-адреса»), «Адрес привязки» и «Режим TLS» — «Прямой HTTP», «Внешний reverse proxy», «Native TLS — PEM-файлы», «Native TLS — self-signed» или ACME, с сопутствующими полями: пути к сертификату и ключу, «Имена в сертификате» (хост из публичного URL обязателен), «Директория состояния TLS», «Контактный email ACME», «Bind для HTTP-01 challenge», «URL каталога ACME».
Изменения сохраняются в plane.toml атомарно, но вступают в силу только после перезапуска:
«Сохранено атомарно. Перезапустите cctv-plane для применения listener-настроек.» До перезапуска
консоль показывает одновременно «Действует сейчас» и «Действует до перезапуска», а также плашку
«Ожидает перезапуска».
sudo systemctl restart hastreamer-cctv-plane systemctl is-active hastreamer-cctv-plane # active
Подробный разбор режимов TLS и переключения между ними — TLS и сертификаты.
«Хранилище событий»#
Это backend, в котором Plane хранит вложения событий — кадры, кропы, короткие ролики. Пояснение раздела: «Изображения, кропы и другие вложения событий принадлежат Plane. DVR по-прежнему хранится на стриминговых нодах.» То есть настройка не имеет отношения к архиву камер — тот живёт на нодах (Хранилища DVR).
Что показывает страница#
- «Работающий backend» и «Сохранённая конфигурация» — что действует сейчас и что сохранено.
- «Состояние заполнения»: «Норма», «Высокое», «Идёт очистка», «Критическое», «Неизвестно».
- «Ёмкость и заполнение»: использовано, доступно, «Заданный лимит», использование inode.
- «Учёт evidence»: логический объём, подтверждённый в backend, надёжные резервы, ожидающие очистки, число событий и вложений.
- «Производительность I/O» и «Очереди обслуживания» — операции в секунду, задержки, ошибки заданий, «События без evidence».
Настройка backend#
| Поле | Пояснение |
|---|---|
| «Backend хранилища» | «Локальная файловая система» или «S3-совместимое объектное хранилище» |
| «Директория evidence» | для локального варианта: «Отдельный абсолютный путь, доступный cctv-plane для записи; корень файловой системы и директории DVR недопустимы.» |
| Endpoint · Бакет · Регион · Адресация · Использовать HTTPS | для варианта S3 |
| «Ключ доступа», «Секретный ключ» | «Учётные данные доступны только на запись: Plane никогда не возвращает и повторно не отображает их.» Пустое поле при редактировании = сохранить текущее значение |
| «Максимальный объём (ГиБ)» | для S3 обязателен |
| «Низкий / Высокий / Критический порог» | пороги давления, значения строго возрастают |
| «Действие при высоком пороге» | «Сохранять всю действующую историю» (безопасный режим по умолчанию) либо «Удалять самый старый день целиком» |
Опасный режим включается только с явным согласием — флажок с текстом: «Я понимаю, что при заполнении хранилища полные дни событий и evidence могут быть необратимо удалены раньше окончания retention по времени.» Включайте его, только если переполнение хранилища для вас страшнее потери самых старых суток. Альтернатива — расширить хранилище или уменьшить срок хранения в шаблонах событий (События).
Кнопка «Проверить хранилище» обязательна: «Сохранение доступно только после живой проверки текущего черновика на подключение и запись. Любое изменение сбрасывает проверку.» Изменили хотя бы одно поле — проверьте заново. После сохранения нового backend может потребоваться перезапуск Plane: консоль явно сообщает «Конфигурация сохранена. Перезапустите Plane для активации backend.»
Отдельно консоль предупреждает о ситуациях «Смена каталога заблокирована сохранёнными данными» и «Данные в прежнем каталоге недоступны» — вложения не переносятся автоматически, старый каталог нужно перенести или сохранить осознанно.
«Приём событий» — токены модулей#
Модульный токен — это Bearer-ключ для внешнего детектора (распознавание номеров, подсчёт людей, сторонняя аналитика). Врезка «Только приём событий» описывает область точно: «Эти Bearer-ключи принимают события одной организации. Они не дают доступ к видео, архиву, PTZ или административному API.»
Список показывает «Название», «Организация», «Свой лимит частоты», «Последняя активность» («Ещё не использовался», если ключ ни разу не применялся), «Создан» и «Статус».
Создание токена#
/admin/settings/integrations→ «Новый токен».- «Название» — понятное имя интеграции, например
north-gate-alpr. Имена с__зарезервированы. - «Организация» — «Токен навсегда привязывается к этой организации.»
- «Свой лимит частоты» — «Необязательный целый лимит событий в секунду. Оставьте пустым для политики установки.»
- Флажок «Принимать события с этим токеном».
- Сохраните и немедленно скопируйте секрет.
«Plane сгенерирует секрет после сохранения и покажет его только один раз.» Закрыли окно, не скопировав, — значение утрачено навсегда: посмотреть его повторно невозможно ни в консоли, ни в базе, ни через API. Останется только «Ротировать секрет», а это немедленно ломает работающую интеграцию: «Ротировать секрет «{name}»? Текущий Bearer-ключ немедленно перестанет работать. Затем замените его в интеграции новым показанным секретом.»
Скопируйте секрет сразу в тот менеджер секретов, где живут ключи ваших интеграций, и только потом закрывайте окно.
Дальнейшие действия над токеном: «Изменить», «Включить» / «Отключить», «Ротировать секрет» и «Удалить» (с предупреждением, что интеграция немедленно потеряет доступ к приёму событий).
Отдельный токен на каждую интеграцию (и на каждый объект, если модулей несколько) стоит ровно ничего, но даёт три вещи: понятную колонку «Последняя активность», отключение одного модуля без влияния на остальные и ротацию без общего простоя.
Формат запроса на приём событий и примеры — API: события и аналитика.
«Шаблоны камер»#
Раздел «Шаблоны конфигурации камер» с кнопкой управления шаблонами. Шаблон заполняет форму новой камеры: профили, DVR, размещение, теги, заметки, параметры отображения.
Два свойства, о которых нужно помнить:
- «Шаблон явно заполняет форму; последующее изменение шаблона не меняет и не перезапускает существующие камеры.» Шаблон — разовое заполнение, а не связанная конфигурация.
- «Идентификация, пароли, адрес и ONVIF-порт устройства, URL/токены источников и сообщённые камерой данные в шаблон не сохраняются.» Секреты и адреса в шаблоны не попадают принципиально.
Как применять шаблон при заведении камеры — Добавление камер.
Смежные разделы#
- Полный справочник файла конфигурации — plane.toml — все параметры.
- Настройки, относящиеся к одной организации (квоты, политика размещения, очистка данных) — Организации, квоты и лимиты.
- Программное чтение и изменение настроек — API: мониторинг и служебное.