...
Этот метод рекомендуется опытным администраторам, поскольку требует знания особенностей каждого компонента и понимания зависимостей между ними.
Чек-лист установки
...
Подготовка к установке
| Якорь |
|---|
| installation_preparation |
|---|
| installation_preparation |
|---|
|
Установка часового пояса
При установке Ubuntu-22.04.5 не предлагается указать часовой пояс (по умолчанию устанавливается время UTC). Его нужно установить вручную (для корректной работы видеоархива, календарей доступа и т.д.), например:
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка работоспособности |
|---|
|
sudo systemctltimedatectl isset-active evi-core.service evi-scud.service evi-live.service evi-archive.service evi-analyzer.service |
...
timezone Asia/Novosibirsk |
| Подсказка |
|---|
| title | Как узнать имя своей timezone? |
|---|
|
На примере города Новосибирска: timedatectl list-timezones | grep "Novosibirsk" |
Обновление ОС
Перед началом установки необходимо обновить ОС:
| Блок кода |
|---|
|
sudo apt update && sudo apt upgrade -y |
Скачивание установочных файлов
| Блок кода |
|---|
| language | bash |
|---|
| title | Активность сервисов |
|---|
| linenumbers | true |
|---|
|
active
active
active
active
active |
Установка модуля Видеоаналитики
EVI Analytics — модуль видеоаналитики, предназначен для обнаружения, распознавания, подсчета, трекинга объектов согласно моделям.
| Примечание |
|---|
Рекомендуется обновить ядро системы перед установкой видеодрайвера. |
| Предупреждение |
|---|
| title | Системные требования для видеоаналитики |
|---|
|
Перед началом работы необходимо ознакомиться с требованиями к модулю Видеоалитики в разделе Системные требования Платформы EVI. |
Требования для модуля Видеоаналитика
| Предупреждение |
|---|
| title | Использование виртуализации |
|---|
|
Система видеоаналитики требует наличия видеокарты. Для работы в виртуальном окружении гипервизор должен поддерживать аппаратный проброс устройств PCI/PCI-E, включая видеокарту. Совместимость с виртуализацией не обеспечивает стабильной работы модуля видеоаналитики. |
Для работы модуля требуется дискретная видеокарта. Ниже приведена минимальная конфигурация для запуска:
...
Пример установленных версий ядра и драйвера
Возможны проблемы установки драйвера из-за ядра Linux, ниже приведены примеры рабочих вариантов:
...
|
wget --no-check-certificate https://archive.eltex-co.ru/evi-raw/evi-1.4.1/evi-1.4.1_ubuntu-22.04.tar |
| Блок кода |
|---|
| language | bash |
|---|
| title | Извлечение файлов архива |
|---|
|
tar -xvf evi-1.4.1_ubuntu-22.04.tar |
Установка баз данных
| Якорь |
|---|
| database_install |
|---|
| database_install |
|---|
|
| Пакет | Описание |
|---|
postgresql-17 | База данных используется в сервисах EVI |
clickhouse-server | База данных используется в сервисахEVI |
clickhouse-client | Клиент для подключения к БД ClickHouse |
libpq5 | Библиотека для взаимодействия сервисов EVI с БД |
База данных Postgresql
| Примечание |
|---|
Минимальная версия postgresql 17. Все сервисы используют 1 базу данных для работы. Рекомендуем размещать базу данных рядом с evi-core и evi-scud. |
Для установки postgresql 17 необходимо выполнить следующие команды в терминале сервера:
| Блок кода |
|---|
|
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg |
| Блок кода |
|---|
|
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' |
| Блок кода |
|---|
|
wget -qO - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --yes --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg |
| Блок кода |
|---|
|
sudo apt install -y postgresql-17 |
Создание базы данных core c пользователем core в postgresql.
| Предупреждение |
|---|
Если вы проводите миграцию баз данных, этот пункт не выполняется. |
Для создания базы данных необходимо выполнить следующие команды:
| Блок кода |
|---|
| title | Создать пользователя БД |
|---|
|
sudo -u postgres createuser --interactive |
Enter name of role to add: core
Shall the new role be a superuser? (y/n) y
| Блок кода |
|---|
| title | Переключиться на пользователя postgres |
|---|
|
sudo -u postgres psql |
| Блок кода |
|---|
| title | Создать БД с именем core |
|---|
|
CREATE DATABASE core; |
| Блок кода |
|---|
| title | Изменить пользователю core пароль на 'core' |
|---|
|
ALTER USER core WITH PASSWORD 'core'; |
| Блок кода |
|---|
| title | Выдать пользователю core права администратора БД |
|---|
|
ALTER USER core WITH SUPERUSER; |
| Блок кода |
|---|
| title | Выйти из пользователя postgres |
|---|
|
\quit |
База данных ClickHouse
Для установки ClickHouse необходимо выполнить следующие команды в терминале сервера:
| Блок кода |
|---|
|
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg |
| Блок кода |
|---|
|
curl -fsSL 'https://packages.clickhouse.com/rpm/lts/repodata/repomd.xml.key' | sudo gpg --dearmor -o /usr/share/keyrings/clickhouse-keyring.gpg |
| Блок кода |
|---|
|
ARCH=$(dpkg --print-architecture) |
| Блок кода |
|---|
|
echo "deb [signed-by=/usr/share/keyrings/clickhouse-keyring.gpg arch=${ARCH}] https://packages.clickhouse.com/deb stable main" | sudo tee /etc/apt/sources.list.d/clickhouse.list |
При установке clickhouse-server у вас запросят пароль для пользователя по умолчанию (Set up the password for the default user).
В документации EVI используется пароль по умолчанию core.
| Блок кода |
|---|
|
sudo apt-get install -y clickhouse-server clickhouse-client |
| Блок кода |
|---|
|
sudo service clickhouse-server start |
Создание пользователя core c паролем core в БД clickhouse:
| Блок кода |
|---|
|
clickhouse-client --user=default --password=core --query="CREATE USER core IDENTIFIED WITH sha256_password BY 'core'" --query="GRANT CURRENT GRANTS on *.* TO core WITH GRANT OPTION" |
Установка обязательных зависимостей
| Примечание |
|---|
Каждый из пакетов (evi-core, evi-scud, evi-live, evi-archive, evi-analyzer) требует наличие пакета libpq5 (>= 17.2). В случае установки сервисов на разные серверы, необходимо установить на каждый из них libpq5. |
| Блок кода |
|---|
|
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' |
| Блок кода |
|---|
|
wget -qO - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --yes --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg |
| Блок кода |
|---|
|
sudo apt install libpq5 |
Установка модуля Ядра
Evi-core — ядро платформы предназначенное для конфигурирования модулей
Общие требования для модулей
Требования для ядра платформы
Минимальная конфигурация необходимая для запуска ядра платформы evi-core и модуля СКУД на одном сервере:
| OS | CPU | RAM | SDD | HDD | LAN |
|---|
| Ubuntu 22.04 | 2 ядра 64-bit x86 | 4 GB | 100 GB | 100 GB | 100 Mb/s |
Установка модуля Ядра
Для установки ядра системы выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo dpkg -i evi-core_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt-get install -f |
Установка модуля web-интерфейса
EVI Core Web — графический web-интерфейс для управления системой.
Требования для модуля web-интерфейса
Для работы модуля web-интерфейса требуется установить web-сервер Angie.
Для установки web-сервера выполните следующие команды:
| Блок кода |
|---|
| title | Установка вспомогательных пакетов для подключения репозитория |
|---|
|
sudo apt install ca-certificates curl |
| Блок кода |
|---|
| title | Скачивание ключа для проверки пакетов |
|---|
|
sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
https://angie.software/keys/angie-signing.gpg |
| Блок кода |
|---|
| title | Подключение репозитория Angie |
|---|
|
echo "deb https://download.angie.software/angie/$(. /etc/os-release && echo "$ID/$VERSION_ID $VERSION_CODENAME") main" \
| sudo tee /etc/apt/sources.list.d/angie.list > /dev/null |
| Блок кода |
|---|
| title | Обновление индексов репозиториев |
|---|
|
sudo apt update |
| Блок кода |
|---|
| title | Установка пакета Angie |
|---|
|
sudo apt-get install -y angie |
Установка модуля web-интерфейса
Для установки модуля web-интерфейса выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo dpkg -i evi-core-web_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt install -f |
Установка модуля СКУД
EVI Scud — модуль системы контроля и управления доступом, предназначен для организации пропускного режима в организации.
Требования для модуля СКУД
Для работы модуля требуется контроллер СКУД IPA-ER-020.
Версия прошивки контроллера должна быть не ниже 2.3.0 build 52.
Установка модуля СКУД
Для установки модуля СКУД выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo dpkg -i evi-scud_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt install -f |
Установка модуля Видеонаблюдения
| Якорь |
|---|
| video_surveillance_module_installation |
|---|
| video_surveillance_module_installation |
|---|
|
EVI Perimeter — объединение модулей (evi-live, evi-archive, evi-analyzer) видеонаблюдения, предназначенный для получения видеопотоков с камер и сохранения в архив.
| Пакет | Описание |
|---|
evi-live | Модуль для взаимодействия с камерами видеонаблюдения для платформы EVI |
evi-archive | Модуль для записи архивов с камер для платформы EVI |
evi-analyzer | Модуль детектора движения для платформы EVI |
Требования для модуля Видеонаблюдение
Для работы модуля требуются камеры с поддержкой подключения по ссылке RTSP.
Подготовительные действия
В конфигурационном файле сервиса evi-live, который находится по пути /opt/evi-live/evi-live.conf, в параметре extern_host должен быть указан IP-адрес или доменное имя, доступное для пользователей в вашей локальной сети.
Иначе просмотр видео с камер будет невозможен.
| Примечание |
|---|
| title | Параметр extern_ip в конфигурации /opt/evi-live/evi-live.conf |
|---|
|
В случае установки доменного имени вместо IP-адреса может перестать работать видео в браузере Firefox. |
Чтобы автоматически выставить адрес в конфигурационном файле после установки выполните следующие действия в консоли сервера:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка IP-адреса для переменной окружения extern_host через переменную окружения |
|---|
|
export EVI_LIVE_EXTERN_HOST=$(ip -br -4 a show $(ip ro get fibmatch 0.0.0.1 | grep -o "dev [^ ]\+") | grep -o "[^ \.]\+\.[^/]\+") |
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка назначенного адреса |
|---|
|
echo $EVI_LIVE_EXTERN_HOST |
В консоли вы увидите IP-адрес сетевого интерфейса сервера, например 192.168.50.15.
Чтобы убедиться, что IP-адрес верный, выполните команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка назначенного адреса |
|---|
|
ip -br a |
Адрес должен соответствовать сетевому интерфейсу.
| Блок кода |
|---|
|
lo UNKNOWN 127.0.0.1/8 ::1/128
eno1 |
Ручная установка docker и драйвера
| Примечание |
|---|
|
Рекомендуем использовать доступный актуальный драйвер в репозитории OC. |
Для работы с видеокартой необходимо установить драйвер:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установить драйвер для видеокарты |
|---|
|
sudo apt install -yfqq nvidia-driver-575 |
Далее необходимо установить docker для работы с контейнером аналитики и nvidia-docker2 для работы с видеокартой:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка зависимостей |
|---|
| linenumbers | true |
|---|
|
sudo apt-get update
sudo apt install apt-transport-https ca-certificates curl software-properties-common |
| Блок кода |
|---|
| language | bash |
|---|
| title | Добавление репозитория docker |
|---|
| linenumbers | true |
|---|
|
curl https://get.docker.com | sh \
&& sudo systemctl --now enable docker
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list |
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка docker |
|---|
| linenumbers | true |
|---|
|
sudo apt-get update
sudo apt-get install docker-ce docker-compose nvidia-docker2 |
| Блок кода |
|---|
| language | bash |
|---|
| title | Перезапуск сервиса docker |
|---|
| linenumbers | true |
|---|
|
sudo systemctl restart docker |
Добавить пользователя в группу docker:
| Блок кода |
|---|
| language | bash |
|---|
| title | Добавить пользователя в группу docker |
|---|
| linenumbers | true |
|---|
|
sudo usermod -aG docker $(whoami) |
| Предупреждение |
|---|
| Обязательно требуется перезагрузка сервера. |
| Блок кода |
|---|
| language | bash |
|---|
| linenumbers | true |
|---|
|
sudo reboot |
Необходимо проверить наличие запущенного драйвера в системе после его установки:
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка работающего драйвера в системе |
|---|
| linenumbers | true |
|---|
|
nvidia-smi |
| Предупреждение |
|---|
Ошибка при выполнении команды nvidia-smi указывает на то, что видеодрайвер не смог запуститься и/или отсутствует дискретная видеокарта. Запуск видеоаналитики без рабочего драйвера NVIDIA невозможен. |
| Блок кода |
|---|
| language | bash |
|---|
| title | Пример вывода команды nvidia-smi |
|---|
| linenumbers | true |
|---|
|
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 575.144.03 Driver Version: 575.144.03 CUDA Version: 12.4 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 3080 Off | 00000000:01:00.0 Off | N/A |
| 0% 41C P2 113W / 370W | 3902MiB / 10240MiB | 5% Default |
| UP 192.168.50.15/24 metric 100 fe80::3eec:efff:fea0:9396/64 |
Можете приступать к установке видеонаблюдения. Переменная extern_host автоматически установится в конфигурационном файле.
Установка модуля Видеонаблюдения
Для установки модуля Видеонаблюдения выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo -E dpkg -i evi-live_1.4.*.deb evi-archive_1.4.*.deb evi-analyzer_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt install -f |
Проверка переменной после установки:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
cat /opt/evi-live/evi-live.conf | grep "extern_host" |
В консоли вы увидите:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
extern_host=192.168.50.15 # External or proxy address (ENV: EVILIVE_GLOBAL_EXTERN_HOST) |
Установка модуля Видеоаналитики
EVI Analytics — модуль видеоаналитики, предназначен для обнаружения, распознавания, подсчета, трекинга объектов согласно моделям.
| Примечание |
|---|
Рекомендуется обновить ядро системы перед установкой видеодрайвера. |
| Предупреждение |
|---|
| title | Системные требования для видеоаналитики |
|---|
|
Перед началом работы необходимо ознакомиться с требованиями к модулю Видеоалитики в разделе Системные требования Платформы EVI. |
Требования для модуля Видеоаналитика
| Предупреждение |
|---|
| title | Использование виртуализации |
|---|
|
Система видеоаналитики требует наличия видеокарты. Для работы в виртуальном окружении гипервизор должен поддерживать аппаратный проброс устройств PCI/PCI-E, включая видеокарту. Совместимость с виртуализацией не обеспечивает стабильной работы модуля видеоаналитики. |
Для работы модуля требуется дискретная видеокарта. Ниже приведена минимальная конфигурация для запуска:
| OS | GPU | SERIES | VRAM | DRIVER |
|---|
| Ubuntu 22.04 | NVIDIA | Quadro или RTX | 8 GB | 545 |
Пример установленных версий ядра и драйвера
Возможны проблемы установки драйвера из-за ядра Linux, ниже приведены примеры рабочих вариантов:
| OS | Kernel | Driver |
|---|
| Ubuntu 22.04.4 LTS | GNU/Linux 6.5.0-44-generic x86_64 | NVIDIA-SMI 545.29.06 |
| Ubuntu 22.04.4 LTS | GNU/Linux 6.5.0-45-generic x86_64 | NVIDIA-SMI 575.64.05 |
Ручная установка docker и драйвера
| Примечание |
|---|
|
Рекомендуем использовать доступный актуальный драйвер в репозитории OC. |
Для работы с видеокартой необходимо установить драйвер:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установить драйвер для видеокарты |
|---|
|
sudo apt install -yfqq nvidia-driver-575 |
Далее необходимо установить docker для работы с контейнером аналитики и nvidia-docker2 для работы с видеокартой:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка зависимостей |
|---|
| linenumbers | true |
|---|
|
sudo apt-get update
sudo apt install apt-transport-https ca-certificates curl software-properties-common |
| Блок кода |
|---|
| language | bash |
|---|
| title | Добавление репозитория docker |
|---|
| linenumbers | true |
|---|
|
curl https://get.docker.com | sh \
&& sudo systemctl --now enable docker
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list |
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка docker |
|---|
| linenumbers | true |
|---|
|
sudo apt-get update
sudo apt-get install docker-ce docker-compose nvidia-docker2 |
| Блок кода |
|---|
| language | bash |
|---|
| title | Перезапуск сервиса docker |
|---|
| linenumbers | true |
|---|
|
sudo systemctl restart docker |
Добавить пользователя в группу docker:
| Блок кода |
|---|
| language | bash |
|---|
| title | Добавить пользователя в группу docker |
|---|
| linenumbers | true |
|---|
|
sudo usermod -aG docker $(whoami) |
| Предупреждение |
|---|
| Обязательно требуется перезагрузка сервера. |
| Блок кода |
|---|
| language | bash |
|---|
| linenumbers | true |
|---|
|
sudo reboot |
Необходимо проверить наличие запущенного драйвера в системе после его установки:
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка работающего драйвера в системе |
|---|
| linenumbers | true |
|---|
|
nvidia-smi |
| Предупреждение |
|---|
Ошибка при выполнении команды nvidia-smi указывает на то, что видеодрайвер не смог запуститься и/или отсутствует дискретная видеокарта. Запуск видеоаналитики без рабочего драйвера NVIDIA невозможен. |
| Блок кода |
|---|
| language | bash |
|---|
| title | Пример вывода команды nvidia-smi |
|---|
| linenumbers | true |
|---|
|
+---------------| | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: NVIDIA-SMI 575.144.03 Driver Version: 575.144.03 CUDA Version: 12.4 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan GPU Temp GI Perf CI PIDPwr:Usage/Cap | Type Process name Memory-Usage | GPU-Util GPU MemoryCompute M. |
| ID ID | | Usage MIG M. |
|=========================================+========================+========================|
| 0 NVIDIA N/AGeForce RTX N/A3080 2144100 Off C| tritonserver 00000000:01:00.0 Off | N/A |
| 0% 41C P2 1296MiB |
| 0 113W N/A N/A 2144155/ 370W | 3902MiB / 10240MiB | C5% tritonserver Default |
| 1296MiB |
| 0 N/A N/A | 2144163 C tritonserver | 1296MiBN/A |
+-----------------------------------------+------------------------+------------------------+ |
Настройка доступа к базе данных для подключения контейнера
Перед началом настройки необходимо остановить сервисы EVI.
| Блок кода |
|---|
| language | bash |
|---|
| title | Остановите сервисы, которые работают с базой данных |
|---|
| linenumbers | true |
|---|
|
sudo systemctl stop evi-core.service evi-scud.service evi-live.service evi-archive.service evi-analyzer.service |
Необходимо открыть доступ для подключения контейнера аналитики к базе данных.
| Блок кода |
|---|
| language | bash |
|---|
| title | Отредактировать файл /etc/postgresql/17/main/pg_hba.conf |
|---|
| linenumbers | true |
|---|
|
/etc/postgresql/17/main/pg_hba.conf |
В раздел IPv4 local connections добавьте строку по примеру ниже и сохраните файл.
Так как контейнеры по умолчанию получают IP-адреса из подсети 172.16.0.0/12, необходимо указать его.
| Блок кода |
|---|
| language | bash |
|---|
| title | /etc/postgresql/17/main/pg_hba.conf |
|---|
| linenumbers | true |
|---|
|
# IPv4 local connections:
host all all+
+-----------------------------------------------------------------------------------------+
| Processes: 127.0.0.1/32 scram-sha-256
host all |
| GPU GI CI PID Type Process name all 172.16.0.0/12 md5 |
Откройте файл конфигурации базы данных. Уберите символ решётки (#), чтобы активировать параметр listen_addresses, и укажите в нем IP-адрес сервера. После этого сохраните изменения в файле.
| Блок кода |
|---|
| language | bash |
|---|
| title | Отредактировать файл /etc/postgresql/17/main/postgresql.conf |
|---|
| linenumbers | true |
|---|
|
/etc/postgresql/17/main/postgresql.conf |
| Блок кода |
|---|
| language | bash |
|---|
| title | Исходный файл /etc/postgresql/17/main/postgresql.conf |
|---|
| linenumbers | true |
|---|
|
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
GPU Memory |
| ID ID Usage |
|=========================================================================================|
| 0 N/A N/A 2144100 C tritonserver
# - Connection Settings -
#listen_addresses = 'localhost' # what IP address(es) to listen on; |
| Блок кода |
|---|
| language | bash |
|---|
| title | Пример отредактированного файла /etc/postgresql/17/main/postgresql.conf |
|---|
| linenumbers | true |
|---|
|
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
1296MiB |
| 0 N/A N/A 2144155 C tritonserver
# - Connection Settings -
listen_addresses = 'localhost, 192.168.1.10' 1296MiB |
| 0 N/A N/A 2144163 C tritonserver # what IP address(es) to listen on; |
Для применения изменений перезапустите сервис базы данных postgresql:
| Блок кода |
|---|
| language | bash |
|---|
| title | Перезапуск сервиса базы данных |
|---|
| linenumbers | true |
|---|
|
sudo systemctl restart postgresql |
| Блок кода |
|---|
| language | bash |
|---|
| title | Запустите сервисы evi |
|---|
| linenumbers | true |
|---|
|
sudo systemctl start evi-core.service evi-scud.service evi-live.service evi-archive.service evi-analyzer.service |
Загрузка образа и запуск контейнера evi-analytics
| Подсказка |
|---|
Образы аналитики имеют большой объем, поэтому их загрузка может занять некоторое время. |
После настройки доступа к базе данных необходимо загрузить на сервер аналитики скрипт evi-analytics_1.4.0.sh:
| Блок кода |
|---|
| language | bash |
|---|
| title | Загрузить скрипт evi-analytics_1.4.0_public.sh |
|---|
| linenumbers | true |
|---|
|
wget --no-check-certificate https://archive.eltex-co.ru/evi-raw/evi-1.4.0/evi-analytics_1.4.0.sh |
| Блок кода |
|---|
| language | bash |
|---|
| title | Запустить скрипт evi-analytics_1.4.0_public.sh |
|---|
| linenumbers | true |
|---|
|
bash evi-analytics_1.4.0.sh EFNRS_DB_HOST="IP-АДРЕС ВАШЕЙ БАЗЫ ДАННЫХ" |
| Блок кода |
|---|
| language | bash |
|---|
| title | Пример запуска |
|---|
| linenumbers | true |
|---|
|
bash evi-analytics_1.4.0.sh EFNRS_DB_HOST="192.168.1.10" |
Проверка работоспособности
| Блок кода |
|---|
|
docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}" |
| Информация |
|---|
| title | Пример успешно запущенных контейнеров |
|---|
|
CONTAINER ID NAMES STATUS f01deee7d6a5 user-triton1-1 Up 23 hours d70d9e7004ac user-triton3-1 Up 23 hours c011105320e9 user-triton2-1 Up 23 hours d17d6261648f user-evi-analytics-haproxy-1 Up 23 hours fa2db6812f3b user-evi-analytics-1 Up 23 hours |
...
1296MiB |
+-----------------------------------------------------------------------------------------+ |
Настройка доступа к базе данных для подключения контейнера
Перед началом настройки необходимо остановить сервисы EVI.
| Блок кода |
|---|
| language | bash |
|---|
| title | Остановите сервисы, которые работают с базой данных |
|---|
| linenumbers | true |
|---|
|
sudo systemctl stop evi-core.service evi-scud.service evi-live.service evi-archive.service evi-analyzer.service |
Необходимо открыть доступ для подключения контейнера аналитики к базе данных.
| Блок кода |
|---|
| language | bash |
|---|
| title | Отредактировать файл /etc/postgresql/17/main/pg_hba.conf |
|---|
| linenumbers | true |
|---|
|
/etc/postgresql/17/main/pg_hba.conf |
В раздел IPv4 local connections добавьте строку по примеру ниже и сохраните файл.
Так как контейнеры по умолчанию получают IP-адреса из подсети 172.16.0.0/12, необходимо указать его.
| Блок кода |
|---|
| language | bash |
|---|
| title | /etc/postgresql/17/main/pg_hba.conf |
|---|
| linenumbers | true |
|---|
|
# IPv4 local connections:
host all all 127.0.0.1/32 scram-sha-256
host all all 172.16.0.0/12 md5 |
Откройте файл конфигурации базы данных. Уберите символ решётки (#), чтобы активировать параметр listen_addresses, и укажите в нем IP-адрес сервера. После этого сохраните изменения в файле.
| Блок кода |
|---|
| language | bash |
|---|
| title | Отредактировать файл /etc/postgresql/17/main/postgresql.conf |
|---|
| linenumbers | true |
|---|
|
/etc/postgresql/17/main/postgresql.conf |
| Блок кода |
|---|
| language | bash |
|---|
| title | Исходный файл /etc/postgresql/17/main/postgresql.conf |
|---|
| linenumbers | true |
|---|
|
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
|
...
EVI Perimeter — объединение модулей (evi-live, evi-archive, evi-analyzer) видеонаблюдения, предназначенный для получения видеопотоков с камер и сохранения в архив.
...
evi-live
...
evi-archive
...
evi-analyzer
...
Требования для модуля Видеонаблюдение
Для работы модуля требуются камеры с поддержкой подключения по ссылке RTSP.
Подготовительные действия
В конфигурационном файле сервиса evi-live, который находится по пути /opt/evi-live/evi-live.conf, в параметре extern_host должен быть указан IP-адрес или доменное имя, доступное для пользователей в вашей локальной сети.
Иначе просмотр видео с камер будет невозможен.
| Примечание |
|---|
| title | Параметр extern_ip в конфигурации /opt/evi-live/evi-live.conf |
|---|
|
В случае установки доменного имени вместо IP-адреса может перестать работать видео в браузере Firefox. |
Чтобы автоматически выставить адрес в конфигурационном файле после установки выполните следующие действия в консоли сервера:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка IP-адреса для переменной окружения extern_host через переменную окружения |
|---|
|
export EVI_LIVE_EXTERN_HOST=$(ip -br -4 a show $(ip ro get fibmatch 0.0.0.1 | grep -o "dev [^ ]\+") | grep -o "[^ \.]\+\.[^/]\+") |
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка назначенного адреса |
|---|
|
echo $EVI_LIVE_EXTERN_HOST |
В консоли вы увидите IP-адрес сетевого интерфейса сервера, например 192.168.50.15.
Чтобы убедиться, что IP-адрес верный, выполните команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка назначенного адреса |
|---|
|
ip -br a |
Адрес должен соответствовать сетевому интерфейсу.
| Блок кода |
|---|
|
lo UNKNOWN 127.0.0.1/8 ::1/128
eno1 UP 192.168.50.15/24 metric 100 fe80::3eec:efff:fea0:9396/64 |
Можете приступать к установке видеонаблюдения. Переменная extern_host автоматически установится в конфигурационном файле.
Установка модуля Видеонаблюдения
Для установки модуля Видеонаблюдения выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo -E dpkg -i evi-live_1.4.*.deb evi-archive_1.4.*.deb evi-analyzer_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt install -f |
Проверка переменной после установки:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
cat /opt/evi-live/evi-live.conf | grep "extern_host" |
В консоли вы увидите:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
extern_host=192.168.50.15 # External or proxy address (ENV: EVILIVE_GLOBAL_EXTERN_HOST) |
Установка модуля СКУД
EVI Scud — модуль системы контроля и управления доступом, предназначен для организации пропускного режима в организации.
Требования для модуля СКУД
Для работы модуля требуется контроллер СКУД IPA-ER-020.
Версия прошивки контроллера должна быть не ниже 2.3.0 build 52.
Установка модуля СКУД
Для установки модуля СКУД выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo dpkg -i evi-scud_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt install -f |
Установка модуля web-интерфейса
EVI Core Web — графический web-интерфейс для управления системой.
Требования для модуля web-интерфейса
Для работы модуля web-интерфейса требуется установить web-сервер Angie.
Для установки web-сервера выполните следующие команды:
| Блок кода |
|---|
| title | Установка вспомогательных пакетов для подключения репозитория |
|---|
|
sudo apt install ca-certificates curl |
| Блок кода |
|---|
| title | Скачивание ключа для проверки пакетов |
|---|
|
sudo curl -o /etc/apt/trusted.gpg.d/angie-signing.gpg \
https://angie.software/keys/angie-signing.gpg |
| Блок кода |
|---|
| title | Подключение репозитория Angie |
|---|
|
echo "deb https://download.angie.software/angie/$(. /etc/os-release && echo "$ID/$VERSION_ID $VERSION_CODENAME") main" \
| sudo tee /etc/apt/sources.list.d/angie.list > /dev/null |
| Блок кода |
|---|
| title | Обновление индексов репозиториев |
|---|
|
sudo apt update |
| Блок кода |
|---|
| title | Установка пакета Angie |
|---|
|
sudo apt-get install -y angie |
Установка модуля web-интерфейса
Для установки модуля web-интерфейса выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo dpkg -i evi-core-web_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt install -f |
...
Установка часового пояса
При установке Ubuntu-22.04.5 не предлагается указать часовой пояс (по умолчанию устанавливается время UTC). Его нужно установить вручную (для корректной работы видеоархива, календарей доступа и т.д.), например:
| Блок кода |
|---|
|
sudo timedatectl set-timezone Asia/Novosibirsk |
| Подсказка |
|---|
| title | Как узнать имя своей timezone? |
|---|
|
На примере города Новосибирска: timedatectl list-timezones | grep "Novosibirsk" |
Обновление ОС
Перед началом установки необходимо обновить ОС:
| Блок кода |
|---|
|
sudo apt update && sudo apt upgrade -y |
Скачивание установочных файлов
| Блок кода |
|---|
| language | bash |
|---|
| title | Скачивание архива |
|---|
|
wget --no-check-certificate https://archive.eltex-co.ru/evi-raw/evi-1.4.1/evi-1.4.1_ubuntu-22.04.tar |
| Блок кода |
|---|
| language | bash |
|---|
| title | Извлечение файлов архива |
|---|
|
tar -xvf evi-1.4.1_ubuntu-22.04.tar |
...
postgresql-17
...
clickhouse-server
...
clickhouse-client
...
libpq5
...
# - Connection Settings -
#listen_addresses = 'localhost' # what IP address(es) to listen on; |
| Блок кода |
|---|
| language | bash |
|---|
| title | Пример отредактированного файла /etc/postgresql/17/main/postgresql.conf |
|---|
| linenumbers | true |
|---|
|
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
listen_addresses = 'localhost, 192.168.1.10' # what IP address(es) to listen on; |
Для применения изменений перезапустите сервис базы данных postgresql:
| Блок кода |
|---|
| language | bash |
|---|
| title | Перезапуск сервиса базы данных |
|---|
| linenumbers | true |
|---|
|
sudo systemctl restart postgresql |
| Блок кода |
|---|
| language | bash |
|---|
| title | Запустите сервисы evi |
|---|
| linenumbers | true |
|---|
|
sudo systemctl start evi-core.service evi-scud.service evi-live.service evi-archive.service evi-analyzer.service |
Загрузка образа и запуск контейнера evi-analytics
| Подсказка |
|---|
Образы аналитики имеют большой объем, поэтому их загрузка может занять некоторое время. |
После настройки доступа к базе данных необходимо загрузить на сервер аналитики скрипт evi-analytics_1.4.0.sh:
| Блок кода |
|---|
| language | bash |
|---|
| title | Загрузить скрипт evi-analytics_1.4.0_public.sh |
|---|
| linenumbers | true |
|---|
|
wget --no-check-certificate https://archive.eltex-co.ru/evi-raw/evi-1.4.0/evi-analytics_1.4.0.sh |
| Блок кода |
|---|
| language | bash |
|---|
| title | Запустить скрипт evi-analytics_1.4.0_public.sh |
|---|
| linenumbers | true |
|---|
|
bash evi-analytics_1.4.0.sh EFNRS_DB_HOST="IP-АДРЕС ВАШЕЙ БАЗЫ ДАННЫХ" |
| Блок кода |
|---|
| language | bash |
|---|
| title | Пример запуска |
|---|
| linenumbers | true |
|---|
|
bash evi-analytics_1.4.0.sh EFNRS_DB_HOST="192.168.1.10" |
Проверка работоспособности
| Блок кода |
|---|
|
docker ps --format "table {{.ID}}\t{{.Names}}\t{{.Status}}" |
| Информация |
|---|
| title | Пример успешно запущенных контейнеров |
|---|
|
CONTAINER ID NAMES STATUS f01deee7d6a5 user-triton1-1 Up 23 hours d70d9e7004ac user-triton3-1 Up 23 hours c011105320e9 user-triton2-1 Up 23 hours d17d6261648f user-evi-analytics-haproxy-1 Up 23 hours fa2db6812f3b user-evi-analytics-1 Up 23 hours |
Чек-лист установки
Проверка работоспособности
| Блок кода |
|---|
| language | bash |
|---|
| title | Проверка работоспособности |
|---|
|
sudo systemctl is-active evi-core.service evi-scud.service evi-live.service evi-archive.service evi-analyzer.service |
В выводе все компоненты должны быть активны:
| Блок кода |
|---|
| language | bash |
|---|
| title | Активность сервисов |
|---|
| linenumbers | true |
|---|
|
active
active
active
active
active |
База данных Postgresql
| Примечание |
|---|
Минимальная версия postgresql 17. Все сервисы используют 1 базу данных для работы. Рекомендуем размещать базу данных рядом с evi-core и evi-scud. |
Для установки postgresql 17 необходимо выполнить следующие команды в терминале сервера:
| Блок кода |
|---|
|
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg |
| Блок кода |
|---|
|
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' |
| Блок кода |
|---|
|
wget -qO - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --yes --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg |
| Блок кода |
|---|
|
sudo apt install -y postgresql-17 |
Создание базы данных core c пользователем core в postgresql.
| Предупреждение |
|---|
Если вы проводите миграцию баз данных, этот пункт не выполняется. |
Для создания базы данных необходимо выполнить следующие команды:
| Блок кода |
|---|
| title | Создать пользователя БД |
|---|
|
sudo -u postgres createuser --interactive |
Enter name of role to add: core
Shall the new role be a superuser? (y/n) y
| Блок кода |
|---|
| title | Переключиться на пользователя postgres |
|---|
|
sudo -u postgres psql |
| Блок кода |
|---|
| title | Создать БД с именем core |
|---|
|
CREATE DATABASE core; |
| Блок кода |
|---|
| title | Изменить пользователю core пароль на 'core' |
|---|
|
ALTER USER core WITH PASSWORD 'core'; |
| Блок кода |
|---|
| title | Выдать пользователю core права администратора БД |
|---|
|
ALTER USER core WITH SUPERUSER; |
| Блок кода |
|---|
| title | Выйти из пользователя postgres |
|---|
|
\quit |
База данных ClickHouse
Для установки ClickHouse необходимо выполнить следующие команды в терминале сервера:
| Блок кода |
|---|
|
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg |
| Блок кода |
|---|
|
curl -fsSL 'https://packages.clickhouse.com/rpm/lts/repodata/repomd.xml.key' | sudo gpg --dearmor -o /usr/share/keyrings/clickhouse-keyring.gpg |
| Блок кода |
|---|
|
ARCH=$(dpkg --print-architecture) |
| Блок кода |
|---|
|
echo "deb [signed-by=/usr/share/keyrings/clickhouse-keyring.gpg arch=${ARCH}] https://packages.clickhouse.com/deb stable main" | sudo tee /etc/apt/sources.list.d/clickhouse.list |
При установке clickhouse-server у вас запросят пароль для пользователя по умолчанию (Set up the password for the default user).
В документации EVI используется пароль по умолчанию core.
| Блок кода |
|---|
|
sudo apt-get install -y clickhouse-server clickhouse-client |
| Блок кода |
|---|
|
sudo service clickhouse-server start |
Создание пользователя core c паролем core в БД clickhouse:
| Блок кода |
|---|
|
clickhouse-client --user=default --password=core --query="CREATE USER core IDENTIFIED WITH sha256_password BY 'core'" --query="GRANT CURRENT GRANTS on *.* TO core WITH GRANT OPTION" |
Установка обязательных зависимостей
| Примечание |
|---|
Каждый из пакетов (evi-core, evi-scud, evi-live, evi-archive, evi-analyzer) требует наличие пакета libpq5 (>= 17.2). В случае установки сервисов на разные серверы, необходимо установить на каждый из них libpq5. |
| Блок кода |
|---|
|
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list' |
| Блок кода |
|---|
|
wget -qO - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --yes --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg |
| Блок кода |
|---|
|
sudo apt install libpq5 |
Установка модуля Ядра
Evi-core — ядро платформы предназначенное для конфигурирования модулей
Общие требования для модулей
Требования для ядра платформы
Минимальная конфигурация необходимая для запуска ядра платформы evi-core и модуля СКУД на одном сервере:
...
Установка модуля Ядра
Для установки ядра системы выполните следующую команду:
| Блок кода |
|---|
| language | bash |
|---|
| title | Установка пакетов |
|---|
|
sudo dpkg -i evi-core_1.4.*.deb |
| Блок кода |
|---|
| language | bash |
|---|
| title | Если установка завершится сообщением о неразрешенных зависимостях, воспользуйтесь командой |
|---|
|
sudo apt-get install -f |