Установка Агента без инсталлятора
Last updated
Last updated
Раздел предназначен для опытных пользователей и содержит инструкцию для тонкой настройки машины робота.
Производится в соответствии с инструкцией Установка PowerShell-7.1.3 под Windows.
Создаем переменную окружения из PowerShell:
Проверить настройку переменных можно через System Properties ➝ Advanced по кнопке Environment Variables:
Копируем файлы из дистрибутива Агента через PowerShell:
Проверяем, что файлы скопировались в папку C:\Primo\Agent
:
Создаем службу из PowerShell:
Отображение службы Primo.Orchestrator.Agent среди всех служб:
Редактируем конфигурационный файл C:\Primo\Agent\appsettings.ProdWin.json
– указываем IP-адрес Оркестратора, TenantId Агента и пользователя из тенанта*. Для дефолтного тенанта null.
* Встроенная учетная запись agent из тенанта по умолчанию. Для шифрования пароля используется программа шифрования паролей PasswordEncryptor.zip из комплекта поставки Оркестратора.
Запускаем службу:
Служба должна работать под Local System account:
Открываем порты для HTTP-сервера Агента (5002) и роботов (8000-9000) – по этим портам к ним обращается сервер Оркестратора.
В PowerSchell выполняем команды:
Проверяем, что сервис Агента (Primo.Agent) запущен - для этого просматриваем статус службы в Services.
Проверяем доступность машины Оркестратора с машины робота. В браузере на машине робота вводим адрес:
и убеждаемся, что открывается страница авторизации:
Возможно настроить машину робота для 2-х альтернативных способов удержания RDP-сессий (требуется для работы робота с рабочим столом).
Два варианта работы по удержанию RDP-сессии отображены на схеме:
Для этого нужно файл restore_console.bat
из комплекта поставки разместить в корне диска C:\
. Закрывать RDP-сессию необходимо при помощи запуска этого файла из cmd. Для автоматизации этого запуска, чтобы он проводился автоматически при отключении пользователя от сессии, можно создать Windows Task на событие «On disconnect on user session».
На основе импорта из файла RDP-Disconnector.xml
нужно создать Windows Task:
Проверяем свойства создаваемой Windows Task «RDP-Disconnector»:
Windows Task «RDP-Disconnector» должна работать под локальным администратором:
Проверяем наличие созданной Windows Task «RDP-Disconnector»:
Для этого используется дополнительный сервис.
Сначала заводятся пользователи для RDP-сессий, например, user1 и user2:
Пользователи желательно должны входить в группу Administrators:
Если пользователи не входят в группу Administrators, то обязательно (!) должны входить в группы Users и Remote Desktop Users.
Добавленные пользователи должны быть зарегистрированы для машины робота (имя пользователя/пароль, и т.д.) в Оркестраторе:
В Оркестраторе для RDP-пользователя должны быть настроены параметры безопасности подключения:
Параметры RDP-подключения:
NegotiateSecurityLayer – true
EnableCredSspSupport – true
DesktopWidth – Разрешение экрана по ширине (1920).
DesktopHeight – Разрешение экрана по высоте (880).
ColorDepth – Цветопередача (32).
К машине робота должны быть разрешены RDP-подключения:
Также должны быть настроены параметры подключения, открыт порт для RDP (порт должен быть открыт и в случае единственного пользователя):
Если используется сервер удаленных рабочих столов, то необходимо его настроить. Запустить оснастку gpedit.msc (Win+R) :
На вкладке Security:
На вкладке Connections:
Блокировка экрана пользователя должна быть отключена. Локально, или через групповые политики AD:
Сервис RDP-подключений запускается на внешней машине, например, на машине с WebApi. На одну сессию сервис расходует порядка 100 Мб памяти.
RDP-сессии запускаются автоматически при старте роботов. Этот процесс требует некоторого времени, в течение которого робот должен подождать открытия. Эти параметры задаются в конфиге WebApi:
Продолжительность ожидания запуска RDP-сессии:
Настройку машины робота можно выполнить посредством PowerShell-скрипта PrimoWorker.ps1
, который входит в комплект поставки Оркестратора.
В скрипте нужно установить значения переменных в секции Input. Все необходимые комментарии содержатся в самом скрипте.
Необходимо разрешить выполнение неподписанного скрипта, выполнив перед его запуском в PowerShell команду:
Запускаем скрипт PrimoWorker.ps1
и дожидаемся окончания его выполнения. Проверяем настройку машины робота.