Установка Primo.AI.Api.MachineInfo
Размещаем файлы компонента
- Подключаемся к серверу по SSH с пользователем с правами root.
- Создаем, если отсутствует, папку
/app/Primo.AI/Api.MachineInfo:sudo mkdir -p /app/Primo.AI/Api.MachineInfo - Разархивируем
Api.MachineInfo-linux.zipв/app/Primo.AI/Api.MachineInfo:sudo unzip /srv/samba/shared/install/distr/Api.MachineInfo-linux.zip -d /app/Primo.AI/Api.MachineInfo - Устанавливаем владельца папки с инсталляцией:
sudo chown -R primo:primo-ai /app/Primo.AI/Api.MachineInfo
Создаем и настраиваем службу
- Копируем файл службы из комплекта поставки в
/etc/systemd/system:sudo cp /app/Primo.AI/Api.MachineInfo/Primo.AI.Api.MachineInfo.service /etc/systemd/system/Primo.AI.Api.MachineInfo.service - Перезагружаем systemctl:
sudo systemctl daemon-reload - Помещаем службу в автозапуск:
sudo systemctl enable /etc/systemd/system/Primo.AI.Api.MachineInfo.service
Даем права на запуск
-
Назначаем права:
sudo chmod -R 770 /app/Primo.AI/Api.MachineInfo/Primo.AI.Api.MachineInfo -
Проверяем выполнение команды:
sudo lsblk --nodeps -no serial /dev/sdaЕсли команда выполнится с ошибкой, находим вместо
/dev/sdaдругое блочное устройство (диск) и прописываем его в конфигурационном файле:
Настройка службы
Открываем порт:
sudo ufw allow 5051/tcpВспомогательные компоненты
Устанавливаем пакет cpuid:
sudo unzip /srv/samba/shared/install/distr/{distribution}/cpuid.zip -d /srv/samba/shared/install/distr/{distribution}/cpuidsudo dpkg -i /srv/samba/shared/install/distr/{distribution}/cpuid/*.debНастройка Primo RPA AI Server для работы с MachineInfo
Вернитесь к этому пункту после настройки остальных компонентов Api.
Открываем в редакторе файл конфигурации Primo.AI.Api:
sudo nano /app/Primo.AI/Api/volumes/conf/Api/appsettings.ProdLinux.json-
Если используется один сервер с MachineInfo, то прописываем ссылку на него:

Параметр Timeout – время ответа, после которого сервис считается недоступным. По умолчанию равен 4 сек.
-
Если используется кластер MachineInfo, или MachineInfo используется в геокластере, то прописываем ссылки на все узлы кластера:

Порядок узлов имеет значение. В момент генерации запроса на лицензию должны быть доступны все узлы. Узлы нельзя скрывать за балансировщиком нагрузки (load balancer).
Указанные выше URL должны быть доступны изнутри контейнера server_api. Например, для bridge-сети (конфигурация сети задается в docker-compose-файле сервера) адрес хоста – 172.17.0.1.
После перенастройки Primo.AI.Api, перезапустите контейнер server_api:
docker restart server_apiСинхронизация времени
- Проверьте время командой
date:
datedocker exec server_api dateВывод должен быть одинаковым.
- Если временная зона отличается:
- Установите временную зону компонентов Api в Docker:
sudo sed -i 's|TIMEZONE=Xxxxxxxxxx|TIMEZONE=Yyyyyyyyyy|g' /app/Primo.AI/Api/.env- Установите временную зону машины-хоста:
sudo timedatectl set-timezone Yyyyyyyyyy- Перезапустите компоненты Api:
docker compose -f /app/Primo.AI/Api/docker-compose.yaml down && docker compose -f /app/Primo.AI/Api/docker-compose.yaml up -d && \ sudo systemctl restart Primo.AI.Api.MachineInfo
Запускаем службу
- Запускаем службу:
sudo systemctl start Primo.AI.Api.MachineInfo - Проверяем состояние службы:
systemctl status Primo.AI.Api.MachineInfo