Идентификация предоставляемого экземпляра
Актуально на .
| Параметр | Значение |
|---|---|
| Версия выпуска | 2.0.3 |
| Полный source commit | 399717d1ed4c0e83e00150912a2a029eae |
| Канал поставки | stable |
| Вариант экземпляра | demo |
| Имя полного комплекта | cshark-2.0.3-demo-ubuntu-24.04- |
| SHA-256 полного комплекта | ccb36a121bf8e1b756f1190f9369e49058 |
| SHA-256 открытого ключа | 0908f56ddcd6cd13fe95d81faae6543b9c |
1. Назначение
Руководство содержит сведения, необходимые для повседневной эксплуатации CShark после установки. Документ относится к предоставляемому экземпляру в варианте demo для Ubuntu Server 24.04 LTS AMD64.
Установку выполняют по отдельной инструкции. Команды в этом руководстве предполагают каталог /opt/cshark-stand и Compose-проект cshark-stand.
2. Условия эксплуатации
Для работы необходимы:
- исправный сервер Ubuntu Server 24.04 LTS AMD64;
- не менее 8 ГБ RAM и 30 ГБ свободного места;
- корректные дата, время и часовой пояс;
- доступ пользователей к порту
8088/tcp; - доступ администратора к серверу по защищенному каналу;
- резервное хранилище, отделенное от рабочего экземпляра.
Внешний доступ к PostgreSQL и NATS не требуется и не должен публиковаться.
3. Запуск и остановка
Проверить состояние:
sudo docker compose \
--env-file /opt/cshark-stand/.env \
-f /opt/cshark-stand/compose.yml \
--profile obs ps
Запустить:
sudo docker compose \
--env-file /opt/cshark-stand/.env \
-f /opt/cshark-stand/compose.yml \
--profile obs up -d
Остановить без удаления данных:
sudo docker compose \
--env-file /opt/cshark-stand/.env \
-f /opt/cshark-stand/compose.yml \
--profile obs down
4. Проверка готовности
После запуска выполните:
curl -fsS http://127.0.0.1:8088/api/health
Дополнительно проверьте:
- контейнеры имеют состояние
runningилиhealthy; - Web-интерфейс доступен по
http://<IP-ИЛИ-DNS>:8088; - Grafana доступна по
http://<IP-ИЛИ-DNS>:13000; - свободное место на диске не ниже эксплуатационного порога;
- время сервера синхронизировано.
5. Первый вход
Первичные реквизиты находятся в файле:
sudo cat /opt/cshark-stand/INITIAL-CREDENTIALS.txt
Войдите под учетной записью администратора и создайте персональные учетные записи пользователей. Не используйте одну общую учетную запись для нескольких операторов: персональные записи необходимы для корректного аудита.
6. Рабочие пространства и роли
После входа пользователь видит только разрешенные ему разделы. Основные рабочие пространства:
| Рабочее пространство | Основные разделы |
|---|---|
| Оператор | схема, инциденты, журнал, табло |
| Аналитика | показатели и динамика занятости |
| Оборудование | устройства, камеры и диагностика |
| Администрирование | пользователи, роли, топология и настройки |
Если раздел недоступен, администратор проверяет назначенную роль и разрешения, а не передает пользователю чужую учетную запись.
7. Начальное состояние demo
После установки администратор проверяет:
- объект Демо-паркинг «Северный» не содержит реального адреса;
- существует уровень Уровень 1;
- существуют зоны Синий сектор и Зелёный сектор;
- созданы ровно 50 мест
DEMO-01–DEMO-50; - присутствуют места МГН, EV, moto и service;
- зарегистрированы демонстрационная камера, три устройства ворот и табло;
- доступен демонстрационный инцидент;
- mock APS имеет состояние
runningилиhealthy; - событие эмулятора изменяет состояние связанного места;
- реальные кадры камер отсутствуют до подключения отдельного медиапакета.
Demo-объект не является данными реального заказчика и предназначен только для проверки и демонстрации функций системы.
8. Работа со схемой
Оператор открывает раздел «Схема», выбирает объект и уровень, затем:
- оценивает сводное состояние;
- переходит от обзора к сектору и месту;
- использует поиск;
- открывает карточку места;
- просматривает историю статусов;
- проверяет связанные инциденты;
- включает только необходимые дополнительные слои.
Изменение эксплуатационного состояния места выполняется только при наличии разрешения. Для групповой операции необходимо проверить число затрагиваемых мест до подтверждения.
9. Обработка инцидентов
Рекомендуемый порядок:
- открыть очередь активных инцидентов;
- проверить объект, уровень, место, время и материалы;
- принять инцидент в работу;
- выполнить действие по регламенту объекта;
- добавить необходимую информацию;
- завершить или обоснованно игнорировать инцидент;
- убедиться, что состояние обновилось.
Инцидент не удаляют для сокрытия ошибки: решение оператора должно оставаться в истории и аудите.
10. Журнал и аналитика
В журнале посещений используются фильтры по доступным параметрам. Доступ к идентификаторам автомобилей предоставляется только ролям, которым он необходим.
В аналитике перед интерпретацией показателей проверьте выбранный объект и уровень. Сравнивать значения разных областей данных без учета контекста нельзя.
11. Оборудование
Технический специалист контролирует:
- состояние
onlineилиoffline; - время последнего события;
- историю изменения доступности;
- привязку к объекту и зоне;
- параметры драйвера;
- результат безопасной команды.
Перед отправкой команды воротам или другому исполнительному устройству необходимо убедиться, что команда допустима регламентом объекта и не создает опасности.
Эмуляторы используются для функциональной проверки без подключения реального оборудования.
12. Табло и шаблоны
В разделе табло администратор или уполномоченный технический специалист:
- создает запись экрана;
- задает его класс и параметры;
- создает или редактирует шаблон;
- проверяет предварительный просмотр;
- назначает шаблон экрану;
- проверяет фактическое отображение;
- при необходимости отзывает экранный токен.
Шаблон и назначение сохраняются на сервере. Экран не должен зависеть от открытой сессии оператора. Приоритетное аварийное сообщение имеет преимущество перед штатным информационным содержимым.
Управление шаблонами смен и копирование персональных раскладок операторов относятся к дальнейшему развитию; до их выпуска используется утвержденный набор серверных шаблонов табло.
13. Пользователи и права
Администратор:
- создает персональные учетные записи;
- назначает минимально необходимые роли;
- отключает учетные записи уволенных или переведенных сотрудников;
- периодически проверяет состав ролей;
- анализирует журнал аудита;
- не передает сервисные секреты обычным пользователям.
Сброс администраторского пароля отдельной командой с физическим доступом к серверу относится к планируемой функции. До ее выпуска восстановление доступа выполняется только по утвержденной процедуре сопровождения с резервной копией и журналированием действий.
14. Ежесменный контроль
В начале смены оператор проверяет:
- доступность Web-интерфейса;
- правильность объекта и уровня;
- количество активных инцидентов;
- наличие устройств offline;
- актуальность информационных экранов;
- отсутствие системных предупреждений.
При передаче смены фиксируются незавершенные инциденты, временно отключенные места, неисправные устройства и примененные аварийные сообщения.
15. Резервное копирование
Создать копию базы данных:
tools/backup/backup.sh /path/to/backups
Медиа копируются в отдельное S3-совместимое хранилище с проверкой SHA-256. Реквизиты резервного хранилища передаются через защищенный env-файл с правами 0600, а не через аргументы командной строки.
Рекомендуется ежедневно копировать базу данных и еженедельно - медиа. Периодически выполняется восстановление во временную среду с проверкой контрольных счетчиков.
16. Обновление
Перед обновлением:
- согласуйте окно работ;
- зафиксируйте текущую версию;
- проверьте здоровье и свободное место;
- создайте проверенную резервную копию;
- получите комплект новой версии;
- проверьте SHA-256 и примечания к выпуску.
Обновление выполняет системный администратор по отдельной инструкции для конкретной версии. Нельзя обновлять систему командой с тегом latest без идентификации образов и схемы базы данных.
Автоматическое обновление из интерфейса в текущей версии отсутствует.
17. Журналы и диагностика
Последние журналы:
sudo docker compose \
--env-file /opt/cshark-stand/.env \
-f /opt/cshark-stand/compose.yml \
--profile obs logs --no-color --tail 200
Журнал установки:
sudo cat /opt/cshark-stand/install.log
При обращении в поддержку сохраняют версию, время, последовательность действий, ошибку, состояние контейнеров и релевантные журналы. Секреты и персональные данные перед передачей удаляются или маскируются.
18. Типовые неисправности
| Признак | Возможная причина | Действие |
|---|---|---|
| Web-интерфейс недоступен | Core или Web не запущен | проверить compose ps, health и журналы |
| События не поступают | недоступен NATS или Gateway | проверить NATS, Gateway и глубину outbox |
| Устройство offline | сеть, питание или отсутствует heartbeat | проверить сеть и журнал устройства |
| Не загружается снимок | недоступно S3-хранилище | проверить SeaweedFS и свободное место |
| Core перезапускается | схема БД отстает от кода | применить миграции точной версией образа |
| Заканчивается диск | медиа, БД или observability | определить растущий volume, не очищать Gateway outbox |
| Неверное время S3 | рассинхронизация часов | восстановить NTP и повторить операцию |
19. Действия при отказах
19.1. Недоступен NATS
Перезапустите NATS и проверьте /healthz. Не удаляйте volume Gateway outbox: после восстановления Gateway должен дослать сохраненные события.
19.2. Недоступна камера
Проверьте питание и сеть камеры, время последнего heartbeat и журнал устройства. До восстановления ее места могут сохранять последнее известное состояние.
19.3. Заполнен диск
Определите источник роста. Историю observability можно очищать по отдельной процедуре, но нельзя удалять PostgreSQL, S3 или Gateway outbox без резервной копии и оценки последствий.
19.4. Повреждение данных
Остановите изменяющие данные компоненты, сохраните журналы и текущее состояние, затем выполняйте восстановление только из проверенной копии. Не запускайте повторные миграции вслепую.
20. Сроки хранения
Значения по умолчанию:
| Данные | Срок |
|---|---|
| Поток NATS | 7 суток |
| События и снимки занятости в БД | 90 дней |
| Снимки мест | 30 дней |
| Фото инцидентов | 90 дней |
| Журнал аудита | 90 дней |
Фактические сроки определяются политикой владельца объекта и применимыми требованиями. Перед уменьшением срока проверяется влияние на расследования и отчетность.
21. Требования безопасности
- используйте персональные учетные записи;
- применяйте принцип минимальных привилегий;
- ограничьте сетевой доступ межсетевым экраном;
- храните env-файлы и резервные копии в закрытых каталогах;
- не публикуйте PostgreSQL и NATS;
- синхронизируйте системное время;
- регулярно проверяйте журнал аудита;
- не включайте публичный поиск автомобиля без отдельной privacy-приемки;
- не удаляйте данные для устранения симптома без диагностики.
22. Завершение эксплуатации
Перед выводом экземпляра из эксплуатации:
- остановите прием новых событий;
- создайте финальную резервную копию;
- проверьте возможность чтения копии;
- экспортируйте необходимые отчеты;
- отзовите API-ключи и экранные токены;
- остановите контейнеры;
- удалите данные только по утвержденному акту;
- зафиксируйте результат и место хранения архивов.