Перейти к содержанию

Дополнительные возможности#

Применение дополнительных возможностей доступно как на этапе установки, так и после установки Системы. При внесении изменений после полной установки Системы для их применения необходимо полностью перезапустить Систему.

Дополнительное лицензирование и активация функционала детекции пешеходов и животных#

Детекторы людей и животных лицензируются отдельно. Данная лицензия может быть подключена в любой момент времени – во время установки системы или после.

Для получения лицензии необходимо направить запрос сотруднику VisionLabs. Сотрудник VisionLabs отправит письмо с файлом лицензии.

Данный файл необходимо загрузить в директорию /cars-installer_v.*.*.*/extras/license_files.

После этого необходимо открыть файл «.env» и в параметре STREAM_LICENSE_FILE указать обновленное название файла лицензии.

При загрузке файла лицензии в любую другую директорию необходимо поменять весь путь до файла в данном параметре.

После добавления лицензии необходимо активировать данный функционал. В файле «.env» следует установить значения «1» для параметров ENABLE_BODY_DETECTOR и ENABLE_ANIMAL_DETECTOR.

Запуск CARS Stream с поддержкой GPU#

Для каждого CARS Stream предусмотрена возможность выбора режима запуска: с поддержкой GPU или без (т. е. с использованием CPU). По умолчанию CARS Stream запускается с использованием CPU.

Для того, чтобы изменить данную настройку, необходимо выполнить следующие действия.

Зайдите в корень инсталлятора:

cd /cars-installer_v.*.*.*

Откройте файл «.env»:

nano .env

И измените значение для параметра STREAM_PLATFORM на «gpu».

После этого сохраните изменения, закройте файл «.env» и откройте файл «docker-compose.yml»:

nano docker-compose.yml

И раскомментируйте следующую строки в секции Stream:

    #deploy:
    #  resources:
    #    reservations:
    #      devices:
    #        - driver: nvidia
    #          #count: all
        #          device_ids: ['${STREAM_GPU1}']
    #          capabilities: [gpu]  

Где:

  • Параметр #count: all активирует запуск на всех видеокартах. По умолчанию закомментирован;
  • Параметр device_ids: ['${STREAM_GPU1}'] передается из файла «.env», где необходимо указать используемую видеокарту.

В случае использования нескольких экземпляров CARS Stream, выбор режима запуска следует провести для каждой копии. Для необходимо изменить параметр STREAM_PLATFORM для каждой копии CARS Stream, а также указать номер используемой видеокарты в параметре STREAM_GPU.

Аналогичные настройки можно воспроизвести для подсистемы CARS API.

Использование протокола HTTPS и генерация ключей шифрования#

В LUNA CARS существует возможность использовать зашифрованное соединение при помощи сертификата SSL и протокола HTTPS.

Для этого необходимо открывать интерфейс системы, используя порт, указанный в значении параметра ANALYTICS_FRONTEND_SSL_PORT.

По умолчанию значение данного параметра – 443. Таким образом, система доступна по адресу:

https://<IP_address>:443

Значение параметра может быть изменено при необходимости, в таком случае должен использоваться номер порта, заданный вручную.

В системе по умолчанию добавлен файл, содержащий приватный ключ SSL.

Для генерации нового ключа шифрования необходимо выполнить следующие шаги:

1․ Перейдите в директорию /extras:

cd cars-installer_v.*.*.*/extras

2․ Запустите скрипт генерации ключа шифрования:

./nginx_cert_gen.sh

Выполните действия, требуемые в рамках выполнения скрипта.

После выполнения будет сгенерирован новый ключ шифрования.

Сервис мониторинга Grafana#

Комплект поставки LUNA CARS включает сервис Grafana, который не является обязательным для установки и служит для визуализации, мониторинга и анализа данных подсистем LUNA CARS.

Сервис Grafana работает совместно со следующими дополнительными компонентами:

  • cAdvisor — анализирует и предоставляет данные об использовании ресурсов и производительности запущенных контейнеров (см. подробнее https://github.com/google/cadvisor);
  • prometheus — записывает метрики в базу данных (см. подробнее https://prometheus.io/);
  • nodeexporter — измеряет различные ресурсы машины, такие как память, диск и загрузка процессора (см. подробнее https://github.com/prometheus/node_exporter).

Настройка и установка#

Перед началом установки убедитесь что docker и docker-compose установлены см. Установка Docker и Docker compose.

Убедитесь что на целевом сервере не заняты порты которые использует сервис:

ss -ltn

Таблица 1. Список используемых портов

Порт Сервис К порту обращается
3000 grafana Пользователь(UI)
9090 prometheus grafana
9080 cadvisor prometheus
9100 nodeexporter prometheus

Если в списке есть занятые порты, отредактируйте файл .env указав доступные порты. Для этого перейдите в рабочую директорию

cd cars-installer_v.*.*.*/extras/monitor

Откройте файл .env и отредактируйте нужные порты

nano .env docker-compose.yml

Для установки сервиса Grafana выполните следующие шаги:

1․ Перейдите в рабочую директорию

cd cars-installer_v.*.*.*/extras/monitor

2․ Запустите скрипт start_all.sh и дождитесь его завершения

./start_all.sh

Дополнительная информация по конфигурации сервиса Grafana описана в файле README.md

Запуск#

После полной установки, для входа в веб-интерфейс необходимо открыть в браузере следующий адрес:

http://ip_adress:3000

Указан порт по умолчанию, порт задается в переменной GRAFANA_PORT в конфигурационном файле «.env».

Система предложит войти в аккаунт (Рисунок 11)

Страница входа Grafana

Для авторизации в Grafana используйте следующие данные:

  • Логин – admin;
  • Пароль – PASSWORD.

Указан пароль по умолчанию, пароль задается в переменной GRAFANA_PASSWORD в конфигурационном файле «.env».

Работа с Grafana#

Добавление приборной панели#

Для мониторинга данных необходимо добавить приборную панель и настроить её.

Воспользуемся существующей приборной панелью, специально подготовленной для мониторинга ресурсов LUNA CARS. Для этого импортируем json файл настроек.

1․ В интерфейсе Grafana перейдите в раздел "Import" во вкладке "Create" (Рисунок 12).

Раздел Import

2․ Скопируйте содержимое файла настроек "/cars-installer_v.*.*.*/extras/monitor/dashboards/new.json" и вставьте в поле Import via panel json на странице "Import" (Рисунок 13).

Импортирование файла настроек new.json

3․ Нажмите кнопку "Load" в нижней части окна. При необходимости измените имя приборной панели в поле Name и нажмите кнопку "Import" (Рисунок 14).

Опции приборной панели

Откроется страница с приборной панелью (Рисунок 15).

Общий вид приборной панели

Для получения подробной информации о администрировании Grafana обратитесь к документации на странице: https://grafana.com/docs/grafana/latest/

Редактирование приборной панели#

Редактирование существующих элементов:

1․ Для редактирования существующих элементов(панелей) на общей приборной панели необходимо выбрать пункт "Edit" в выпадающем меню у нужного элемента (Рисунок 16).

Редактирование элементов на приборной панели

2․ Измените существующий или добавьте новый запрос во вкладке "Query" в формате PromQL (Рисунок 17).

Вкладка Query при редактировании элемента

Добавление новых элементов:

1․ Для добавления новых элементов(панелей) на общую приборную панель необходимо нажать кнопку "Add panel" в верхней части сервиса (Рисунок 18).

2․ В появившемся окне нажмите кнопку "Add a new panel".

Добавление элементов на приборную панель

3․ Введите запрос во вкладке "Query" в формате PromQL (Рисунок 19).

Вкладка Query при добавлении нового элемента

Query формируется с помощью языка запросов Prometheus который называется PromQL. Для получения подробной информации обратитесь к документации на странице: https://prometheus.io/docs/prometheus/latest/querying/basics/