Версия ПО 1.7.0 |
| Сервис | Путь до конфигурационного файла |
|---|---|
| evi-core | ~/evi-installer/config/evi/evi-core.env |
| evi-core-web | ~/evi-installer/config/evi/web.env |
| evi-scud | ~/evi-installer/config/evi/scud.env |
| evi-live | ~/evi-installer/config/evi/live.env |
| evi-archive | ~/evi-installer/config/evi/archive.env |
| evi-analyzer | ~/evi-installer/config/evi/analyzer.env |
| evi-analytics | ~/evi-installer/config/evi/analytics.env |
| postgres | ~/evi-installer/config/evi/postgres.env |
| clickhouse | ~/evi-installer/config/evi/clickhouse.env |
Конфигурационный файл evi-core располагается в ~/evi-installer/config/evi/evi-core.env.
EVICORE_API_LISTEN=* # Адрес или интерфейс HTTPS API (* - all interfaces) EVICORE_API_PORT=7000 # Порт для HTTPS API EVICORE_SSL_CERT_FILE=/opt/evi-core/cert/cert.crt # Файл сертификата EVICORE_SSL_KEY_FILE=/opt/evi-core/cert/key.key # Файл ключа сертификата EVICORE_SSL_PEM= # Парольная фраза сертификата (опционально) EVICORE_LOG_LEVEL=trace # Уровень логов EVICORE_LOG_FILE=/var/log/evi-core/evi-core.log # Путь до лог файла EVICORE_POSTGRESQL_HOST=postgres # PostgreSQL адрес EVICORE_POSTGRESQL_PORT=5432 # PostgreSQL порт EVICORE_POSTGRESQL_DBNAME=core # PostgreSQL имя базы EVICORE_POSTGRESQL_USERNAME=core # PostgreSQL пользователь EVICORE_POSTGRESQL_PASSWORD=core # PostgreSQL пароль EVICORE_CLICKHOUSE_HOST=clickhouse # Clickhouse адрес EVICORE_CLICKHOUSE_PORT=9000 # Clickhouse порт EVICORE_CLICKHOUSE_DBNAME=core # Clickhouse имя базы EVICORE_CLICKHOUSE_USERNAME=core # Clickhouse пользователь EVICORE_CLICKHOUSE_PASSWORD=core # Clickhouse пароль EVICORE_CLICKHOUSE_RTBUFFER=100 # Clickhouse RT buffer EVICORE_EVISCUD_RPC_HOST=scud # Адрес evi-scud EVICORE_EVISCUD_RPC_PORT=7102 # RPC порт evi-scud EVICORE_EVIANALYTICS_RPC_HOST=analytics # Адрес evi-analytics EVICORE_EVIANALYTICS_RPC_PORT=7402 # RPC порт evi-analytics EVICORE_EVILIVE_RPC_HOST=live # Адрес evi-live EVICORE_EVILIVE_RPC_PORT=7202 # RPC порт evi-live EVICORE_EVIARCHIVE_RPC_HOST=archive # Адрес evi-archive EVICORE_EVIARCHIVE_RPC_PORT=7302 # RPC порт evi-archive EVICORE_EVIANALYZER_RPC_HOST=analyzer # Адрес evi-analyzer EVICORE_EVIANALYZER_RPC_PORT=7502 # RPC порт evi-analyzer EVICORE_LICENSE_SERVER=elm-dev-evi.eltex.loc:8099 # Адрес сервера лицензии EVICORE_PHOTO_SIZE=5242880 # Лимит для загрузки фото EVICORE_HTTP_MAX_DATA_LENGTH=20MB # Лимит для данных http EVICORE_WEBSOCKET_MAX_DATALENGTH=25MB # Лимит для данных websocket |
Конфигурационный файл evi-scud располагается в ~/evi-installer/config/evi/scud.env.
EVISCUD_SSL_CERT_FILE=/opt/evi-scud/cert/cert.crt # Файл сертификата EVISCUD_SSL_KEY_FILE=/opt/evi-scud/cert/key.key # Файл ключа сертификата EVISCUD_SSL_PEM= # Парольная фраза сертификата (опционально) EVISCUD_LOG_LEVEL=trace # Уровень логов EVISCUD_LOG_FILE=/var/log/evi-scud/evi-scud.log # Путь до лог файла EVISCUD_POSTGRESQL_HOST=postgres # PostgreSQL адрес EVISCUD_POSTGRESQL_PORT=5432 # PostgreSQL порт EVISCUD_POSTGRESQL_DBNAME=core # PostgreSQL имя базы EVISCUD_POSTGRESQL_USERNAME=core # PostgreSQL пользователь EVISCUD_POSTGRESQL_PASSWORD=core # PostgreSQL пароль EVISCUD_RPC_LISTEN=* # Адрес или интерфейс для RPC (* - все) EVISCUD_RPC_PORT=7102 # TCP SSL порт для RPC EVISCUD_EVENTS_LISTEN=* # Адрес или интерфейс для событий (* - все) EVISCUD_EVENTS_PORT=7104 # TCP SSL порт для событий EVISCUD_CONTROLLER_LISTEN=* # Адрес или интерфейс для связи с IPAER (* - все) EVISCUD_CONTROLLER_PORT=7105 # TCP порт для связи с IPAER EVISCUD_CONTROLLER_SSL_PORT=8085 # TCP SSL порт для связи с IPAER EVISCUD_GATEWAY_PORT=7105 # Gateway порт scud |
Конфигурационный файл evi-live располагается в ~/evi-installer/config/evi/live.env.
Убедитесь, что значение extern_host соответствует внешнему IP-адресу или доменному имени сервера, по которому клиенты подключаются к системе (параметр может изменится при Миграции) |
# только при сборке с DEVELOP EVILIVE_API_DIR=./www # Путь до live API EVILIVE_AUTH_LOGIN=eltex # Логин для авторизации планшета EVILIVE_AUTH_PASSWORD=EVIEltex!1 # Пароль для авторизации планшета EVILIVE_SSL_KEY_FILE=/opt/evi-live/cert/key.key # Файл сертификата EVILIVE_SSL_CERT_FILE=/opt/evi-live/cert/cert.crt # Файл ключа сертификата EVILIVE_SSL_PEM=000000 # Парольная фраза сертификата (опционально) EVILIVE_LOG_LEVEL=trace # Уровень логов EVILIVE_LOG_FILE=/var/log/evi-live/evi-live.log # Путь до лог файла EVIVIDEO_LOG_RAM_SIZE=0 # Буферизация логов в оперативной памяти EVILIVE_POSTGRESQL_PORT=5432 # PostgreSQL порт EVILIVE_POSTGRESQL_HOST=postgres # PostgreSQL имя базы EVILIVE_POSTGRESQL_PASSWORD=core # PostgreSQL пароль EVILIVE_POSTGRESQL_USERNAME=core # PostgreSQL пользователь EVILIVE_POSTGRESQL_DBNAME=core # PostgreSQL имя базы EVILIVE_POSTGRESQL_ROTATIONDAY=8760 # Ротация дней EVILIVE_POSTGRESQL_ROTATIONWEEK=1251 # Ротация недель EVILIVE_POSTGRESQL_ROTATIONMONTH=24 # Ротация месяцев EVILIVE_POSTGRESQL_ROTATIONYEAR=2 # Ротация лет EVILIVE_RPC_HOST=* # Адрес или интерфейс для RPC (* - все) EVILIVE_RPC_PORT=7202 # TCP SSL порт для RPC EVILIVE_EVENTS_HOST=* # Адрес или интерфейс для событий (* - все) EVILIVE_EVENTS_PORT=7204 # TCP SSL порт для событий EVILIVE_RTSP_HOST=live # Адрес или интерфейс RTSP EVILIVE_RTSP_TCP_PORT=7260 # TCP порт для RTSP EVILIVE_RTMP_HOST=* # Адрес или интерфейс для RTMP EVILIVE_RTMP_PORT=7250 # TCP порт для RTMP EVILIVE_WEBRTC_HOST=* # Адрес или интерфейс для WebRTC EVILIVE_WEBRTC_TCP_PORT=7285 # TCP порт для WebRTC EVILIVE_WEBRTC_UDP_PORT=7285 # UDP порт для WebRTC EVILIVE_GLOBAL_EXTERN_HOST=* # Внешний или прокси адрес EVILIVE_GLOBAL_EXTERN_PORT_API=7200 # Внешний или прокси порт API EVILIVE_GLOBAL_EXTERN_PORT_RTSP_TCP=7260 # Внешний или прокси порт RTSP TCP EVILIVE_GLOBAL_EXTERN_PORT_RTMP=7250 # Внешний или прокси порт RTMP EVILIVE_GLOBAL_EXTERN_WEBRTC_TCP=7285 # Внешний или прокси порт WebRTC TCP EVILIVE_GLOBAL_EXTERN_WEBRTC_UDP=7285 # Внешний или прокси порт WebRTC UDP |
Конфигурационный файл evi-archive располагается в ~/evi-installer/config/evi/archive.env.
EVIARCHIVE_SSL_KEY_FILE=/opt/evi-archive/cert/key.key # Файл ключа сертификата EVIARCHIVE_SSL_CERT_FILE=/opt/evi-archive/cert/cert.crt # Файл сертификата EVIARCHIVE_SSL_PEM=000000 # Парольная фраза сертификата (опционально) EVIARCHIVE_LOG_LEVEL=trace # Уровень логов EVIARCHIVE_LOG_FILE=/var/log/evi-archive/evi-archive.log # Путь до лог файла EVIVIDEO_LOG_RAM_SIZE=0 # Буферизация логов в оперативной памяти EVIARCHIVE_RPC_HOST=archive # Адрес или интерфейс для RPC (* - все) EVIARCHIVE_RPC_PORT=7302 # TCP SSL порт для RPC EVIARCHIVE_EVENTS_HOST=* # Адрес или интерфейс для событий (* - все) EVIARCHIVE_EVENTS_PORT=7304 # TCP SSL порт для событий EVIARCHIVE_ARCHIVE_PATH=/archive # Путь до директории архива EVIARCHIVE_BLOCK_RECORD=false # Блочная запись EVIARCHIVE_BLOCK_SIZE=1048576 # Размер блока EVIARCHIVE_ARCHIVE_ASYNC=false # Асинхронная запись EVIARCHIVE_ARCHIVE_THRESHOLD=100 # Лимит буфера архивации |
Конфигурационный файл evi-analyzer располагается в ~/evi-installer/config/evi/analyzer.env.
EVIANALYZER_RPC_HOST=analyzer # Адрес или интерфейс для RPC (* - all interfaces) EVIANALYZER_RPC_PORT=7502 # TCP SSL порт для RPC EVIANALYZER_SSL_KEY_FILE=/opt/evi-analyzer/cert/key.key # Файл ключа сертификата EVIANALYZER_SSL_CERT_FILE=/opt/evi-analyzer/cert/cert.crt # Файл сертификата EVIANALYZER_SSL_PEM=000000 # Парольная фраза сертификата (опционально) EVIANALYZER_POSTGRESQL_PORT=5432 # PostgreSQL порт EVIANALYZER_POSTGRESQL_HOST=postgres # PostgreSQL адрес EVIANALYZER_POSTGRESQL_PASSWORD=core # PostgreSQL пароль EVIANALYZER_POSTGRESQL_USERNAME=core # PostgreSQL пользователь EVIANALYZER_POSTGRESQL_DBNAME=core # PostgreSQL имя базы EVIANALYZER_LOG_LEVEL=info # Уровень логов EVIANALYZER_LOG_FILE=/var/log/evi-analyzer/evi-analyzer.log # Путь до лог файла EVIANALYZER_LOG_RAM_SIZE=0 # Буферизация логов в оперативной памяти EVIANALYZER_EVENTS_HOST=* # Адрес или интерфейс для событий (* - all interfaces) EVIANALYZER_EVENTS_PORT=7504 # TCP SSL порт для событий EVIANALYZER_MD_TRACKING_ADDITIONAL_LINKING=0 EVIANALYZER_MD_TRACKING_REMOVE_TIME=0.1 EVIANALYZER_MD_BACKGROUND_GROW_TIME=1 EVIANALYZER_MD_BACKGROUND_UPDATE_TIME=0.1 EVIANALYZER_MD_BACKGROUND_STAT_UPDATE_TIME=0.01 EVIANALYZER_MD_CLASSIFICATION_TIME_MIN=0.01 EVIANALYZER_MD_CLASSIFICATION_SHIFT_MIN=0.01 EVIANALYZER_MD_DIFFERENCE_DX_FEATURE_WEIGHT=0 EVIANALYZER_MD_DIFFERENCE_DY_FEATURE_WEIGHT=0 |
Конфигурационный файл evi-analytics располагается в ~/evi-installer/config/evi/analytics.env.
EVIANALYTICS_API_LISTEN=0.0.0.0 # Адрес или интерфейс HTTPS API (* - all interfaces) EVIANALYTICS_API_PORT=7400 # Порт для HTTPS API EVIANALYTICS_RPC_LISTEN=0.0.0.0 # Адрес или интерфейс RPC (* - all interfaces) EVIANALYTICS_RPC_PORT=7402 # Порт TCP SSL для RPC EVIANALYTICS_EVENTS_LISTEN=0.0.0.0 # Адрес или интерфейс для событий (* - все) EVIANALYTICS_EVENTS_PORT=7404 # Порт TCP SSL для событий EVIANALYTICS_PEEPER_LISTEN=0.0.0.0 # Адрес peeper EVIANALYTICS_PEEPER_PORT=7452 # Порт peeper EVIANALYTICS_VIDEO-RECEIVER_LISTEN=0.0.0.0 # Адрес или интерфейс видео ресивера (* - all interfaces) EVIANALYTICS_VIDEO-RECEIVER_PORT=7406 # Порт ресивера EVIANALYTICS_NN_MODELS_PATH=/opt/evi-analytics/models EVIANALYTICS_NN_TRT_POOL_SIZES=0 EVIANALYTICS_NN_OV_POOL_SIZES=1 EVIANALYTICS_NN_USE_CPU=true EVIANALYTICS_SSL_CERT_FILE=/opt/evi-analytics/cert/cert.crt # Файл сертификата EVIANALYTICS_SSL_KEY_FILE=/opt/evi-analytics/cert/key.key # Файл ключа сертификата EVIANALYTICS_SSL_PEM= # Парольная фраза сертификата (опционально) EVIANALYTICS_POSTGRESQL_HOST=postgres # PostgreSQL адрес EVIANALYTICS_POSTGRESQL_PORT=5432 # PostgreSQL порт EVIANALYTICS_POSTGRESQL_DBNAME=core # PostgreSQL имя базы EVIANALYTICS_POSTGRESQL_USERNAME=core # PostgreSQL пользователь EVIANALYTICS_POSTGRESQL_PASSWORD=core # PostgreSQL пароль EVIANALYTICS_LOG_LEVEL=info # Уровень логов EVIANALYTICS_LOG_FILE=/var/log/evi-analytics/evi-analytics.log # Путь до лог файла EVIANALYTICS_LOG_ROTATE_KEEP_FOR=0 # Минимальный срок хранения файлов журнала (в часах). Если значение равно 0 или меньше, временные ограничения отсутствуют. Этот параметр имеет приоритет над 'rotate_file_count': файлы, не достигшие указанного срока хранения, не будут удалены, даже если общее количество файлов журнала превысит значение 'rotate_file_count'. EVIANALYTICS_LOG_ROTATE_FILE_COUNT=0 # Максимальное количество сохраняемых файлов журнала перед удалением самых старых. Если значение равно 0 или меньше, старые файлы журнала не удаляются. Фактическое количество журналов может быть больше, если задан параметр `rotate_keep_for`. EVIANALYTICS_LOG_ROTATE_FILE_MAX_SIZE=8192 # Максимальный размер журнала перед началом ротации (МБ). Если значение <= 0, ротация журналов не выполняется. EVIANALYTICS_HWACCEL_VIDEO_DECODER=cpu # Аппаратное декодирование видео |
Конфигурационный файл evi-core-web.conf располагается в ~/evi-installer/config/evi/web.env:
EVI_CORE_IP=core # Core адрес EVI_CORE_PORT=7000 # Порт core |
Для настройки директории необходимо перейдите в редактирование конфигурационного файла:
/opt/evi-archive/evi-archive.conf |
Укажите в разделе [archive] у параметра path директорию, в которой будет храниться архив:
[archive] path=./archive |
Программа поддерживает только один путь сохранения.
Если требуется использовать несколько дисков, необходимо объединить их на уровне ОС Linux с помощью монтирования в общую папку.
Укажите этот путь в конфигурации:
[archive] path=/mnt/archive |
Убедитесь, что у программы есть права на чтение/запись в папку.
| Прямая настройка нескольких путей в конфигурации невозможна — все управление дисками выполняется на уровне операционной системы. |
Сохраняемый архив в директорию на сервере имеет внутренний формат .arc.
archive/live/{camera_id}/{date}.arcЭкспорт, просмотр архива производится с помощью evi-video-client.
Подробнее можно узнать в разделе Просмотр архива.
Для использования собственных сертификатов в конфигурационных файлах сервисов нужно задать путь к файлам сертификата и ключа.
Перейдите в редактирование конфигурационного файла /opt/evi-core/evi-core.conf.
Укажите путь в разделе [ssl] у параметров crt и key путь до сертификата и ключа:
[ssl] cert_file=<путь до сертификата> key_file=<путь до ключа> |
Перейдите в редактирование конфигурационного файла /opt/evi-scud/evi-scud.conf.
Укажите в разделе [ssl] у параметров crt и key путь до сертификата и ключа:
[ssl] cert_file=<путь до сертификата> key_file=<путь до ключа> |
Перейдите в редактирование конфигурационного файла /opt/evi-live/evi-live.conf.
Укажите в разделе [ssl] у параметров cert и key путь до сертификата и ключа:
[ssl] cert_file=<путь до сертификата> key_file=<путь до ключа> |
Перейти в редактирование конфигурационного файла /opt/evi-archive/evi-archive.conf.
Укажите в разделе [ssl] у параметров cert и key путь до сертификата и ключа:
[ssl] cert_file=<путь до сертификата> key_file=<путь до ключа> |
Перейти в редактирование конфигурационного файла /opt/evi-analyzer/evi-analyzer.conf.
Укажите в разделе [ssl] у параметров cert и key путь до сертификата и ключа:
[ssl] cert_file=<путь до сертификата> key_file=<путь до ключа> |
Перейдите в редактирование конфигурационного файла /etc/angie/http.d/evi-core-web.conf .
Укажите у параметров ssl_certificate и ssl_certificate_key путь до сертификата и ключа:
ssl_certificate <путь до сертификата>; ssl_certificate_key <путь до сертификата>; |
Перейдите в редактирование файла evi-analytics_1.5.0_docker-compose.sh .
Укажите в переменных:
#EVI-ANALYTICS CONFIG SECTION [ssl]
: ${EVIANALYTICS_SSL_CERT_FILE="<путь до сертификата>"}
: ${EVIANALYTICS_SSL_KEY_FILE="<путь до ключа>"} |
При установке сервисов на разные серверы необходимо настроить связность сервисов между собой. |
Пример: необходимо установить модуль СКУД и Видеонаблюдения на разные серверы.
Необходимо после установки сервисов остановить их и внести изменение в конфигурационные файлы сервисов.

[postgresql] host=127.0.0.1 port=5432 dbname=core username=core password=core [clickhouse] host=127.0.0.1 port=9000 dbname=core username=core password=core [evi-scud] rpc_host=127.0.0.1 rpc_port=7102 [evi-analytics] rpc_host=192.168.50.35 rpc_port=7402 [evi-live] rpc_host=192.168.50.250 rpc_port=7202 [evi-archive] rpc_host=192.168.50.250 rpc_port=7302 [evi-analyzer] rpc_host=192.168.50.250 rpc_port=7502 |
# - Connection Settings - listen_addresses = '*' |
# TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all trust # IPv4 local connections: host all all 127.0.0.1/32 trust host core core 192.168.50.35/24 md5 # IPv6 local connections: host all all ::1/128 trust # Allow replication connections from localhost, by a user with the # replication privilege. local replication all trust host replication all 127.0.0.1/32 trust host replication all ::1/128 trust |
[postgresql] host=192.168.50.29 port=5432 dbname=core username=core password=core [rpc] listen=192.168.50.250 port=7202 [events] listen=192.168.50.250 port=7204 [global] extern_host=192.168.50.250 extern_port_rtsp_tcp=7260 extern_port_rtmp=7250 extern_port_webrtc_tcp=7285 extern_port_webrtc_udp=7285 extern_port_api=7200 |
[postgresql] host=192.168.50.29 port=5432 dbname=core username=core password=core [rpc] listen=192.168.50.250 port=7502 [events] listen=192.168.50.250 port=7504 |
[rpc] listen=192.168.50.250 port=7302 [events] listen=192.168.50.250 port=7304 |
: ${EVIANALYTICS_POSTGRESQL_HOST="192.168.50.29"}
: ${EVIANALYTICS_POSTGRESQL_DBNAME="core"}
: ${EVIANALYTICS_POSTGRESQL_USERNAME="core"}
: ${EVIANALYTICS_POSTGRESQL_PASSWORD="core"}
|
| После внесения изменений в сервис требуется его перезагрузка. |
Лог-файлы сервисов располагаются в папке /var/log/имя-сервиса.
Сервисы EVI не выполняют автоматическую ротацию логов. |
Для настройки ротации используйте утилиту logrotate в соответствии с требованиями вашей системы.
Пример настроенной конфигурации для ротирования файла /var/log/evi-core/evi-core.log.
/var/log/evi-core/evi-core.log
{
hourly
size 100M
dateext
dateformat -%Y-%m-%d_%H-%s
missingok
rotate 15
copytruncate
compress
notifempty
} |
Пояснение параметров:
| Параметр | Описание |
|---|---|
| hourly | ротация каждый час |
| size 100M | ротация при достижении размера 100 МБ |
| dateext | добавление даты к имени архивного лога |
| dateformat | формат даты в имени файла |
| missingok | не ошибка, если файл отсутствует |
| rotate 15 | хранить до 15 архивных копий |
| copytruncate | копировать и обрезать текущий лог (без перезапуска сервиса) |
| notifempty | не ротировать, если лог пуст |