Skip to Content

Установка Агента Оркестратора

Установка PowerShell Core

Производится в соответствии с инструкцией Установка PowerShell-7.1.3 под Windows.

Установка Агента Оркестратора

Создаем переменную окружения из PowerShell:

[System.Environment]::SetEnvironmentVariable('ASPNETCORE_ENVIRONMENT', 'ProdWin', [System.EnvironmentVariableTarget]::Machine)

Проверить настройку переменных можно через System Properties ➝ Advanced по кнопке Environment Variables:

alt

alt

Копируем файлы из дистрибутива Агента через PowerShell:

$InstallPath = "C:\Install" Expand-Archive -LiteralPath "$InstallPath\Agent.zip" -DestinationPath 'C:\Primo\Agent'

Проверяем, что файлы скопировались в папку C:\Primo\Agent:

alt

Создаем службу из PowerShell:

New-Service -Name "Primo.Orchestrator.Agent" -BinaryPathName "C:\Primo\Agent\Primo.Orchestrator.Agent.exe" -Description "Primo.Orchestrator.Agent" -DisplayName "Primo.Orchestrator.Agent" -StartupType Automatic

Отображение службы Primo.Orchestrator.Agent среди всех служб:

alt

Редактируем конфигурационный файл C:\Primo\Agent\appsettings.ProdWin.json, если требуется поменять TenantId.

alt

TenantId – тенант Агента (для дефолтного тенанта null).

С версии 24.8 в Агенте Оркестратора появился новый параметр в конфигурационном файле:

"Agent": { ... "RemoveInactiveTsPortsPeriodSec": 60 // 0 - to disable ... }

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

Запускаем службу через оснастку Services или через командную строку:

alt

Служба должна работать под Local System account:

alt

Настройка брандмауэра Windows

Открываем порт для HTTP-сервера Агента (5002) - по нему к машине робота обращается сервер Оркестратора.

В PowerShell выполняем команду:

New-NetFirewallRule -Name "Primo Agent (5002)" -DisplayName "Primo Agent (5002)" -Profile "Private, Domain, Public" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 5002

Проверка настройки машины робота

Проверяем, что сервис Агента (Primo.Agent) запущен - для этого просматриваем статус службы в Services.

Проверяем доступность машины Оркестратора с машины робота. В браузере на машине робота вводим адрес:

https://<IP-адрес-машины-Оркестратора>:44392/login

и убеждаемся, что открывается страница авторизации:

alt

Проверяем, что работают (если не выключены в конфигурационном файле, секция Performance, параметр Enabled) метрики производительности на главной странице:

alt

и в логе нет связанных с ними ошибок. Если в логе есть ошибка счетчиков производительности Windows, сходная с представленной ниже:

alt

нужно настроить работу счетчиков средствами ОС:

Удержание RDP-сессий

Возможно настроить машину робота для 2-х альтернативных способов удержания RDP-сессий (требуется для работы робота с рабочим столом).

Два варианта работы по удержанию RDP-сессии отображены на схеме:

alt

Удержание многих RDP-сессий за счет внешних RDP-подключений

Для этого используется сервис RDP2.

Сначала заводятся пользователи для RDP-сессий, например, user1 и user2:

alt

Пользователи желательно должны входить в группу Administrators:

alt

Если пользователи не входят в группу Administrators, то обязательно (!) должны входить в группы Users и Remote Desktop Users.

Добавленные пользователи должны быть зарегистрированы для машины робота (имя пользователя/пароль, и т.д.) в Оркестраторе:

alt

В Оркестраторе для RDP-пользователя должны быть настроены параметры безопасности подключения:

alt

Параметры RDP-подключения:

  1. AuthenticationLevel – 1
  2. NegotiateSecurityLayer – true
  3. EnableCredSspSupport – true
  4. DesktopWidth – Разрешение экрана по ширине (1920).
  5. DesktopHeight – Разрешение экрана по высоте (880).
  6. ColorDepth – Цветопередача (32).

К машине робота должны быть разрешены RDP-подключения:

alt

Также должны быть настроены параметры подключения, открыт порт для RDP (порт должен быть открыт и в случае единственного пользователя):

alt

Если используется сервер удаленных рабочих столов, то необходимо его настроить. Запустить оснастку gpedit.msc (Win+R) :

alt

На вкладке Security:

alt

На вкладке Connections:

alt

Блокировка экрана пользователя должна быть отключена. Локально или через групповые политики AD:

alt

Сервис RDP-подключений запускается на внешней машине, например, на машине с WebApi. На одну сессию сервис расходует порядка 400 Мб памяти.

RDP-сессии запускаются автоматически при старте роботов. Этот процесс требует некоторого времени, в течение которого робот должен подождать открытия. Эти параметры задаются в конфигурационном файле WebApi, в секции RobotStart:AttemptsKeepRDPSessionLevels:

alt

Если в RPA-проекте (zip-архив) присутствуют файлы с кириллицей в наименовании, то для корректной распаковки архива перед запуском робота необходимо чтобы в конфигурационном файле службы Агента был настроен параметр ProjectZipEncoding. Наиболее востребованные значения: utf-8 (для Windows), cp866 (для Linux) и null (кодировка по умолчанию в ОС).

alt