Развертывание платформы под управлением Оркестратора

Диаграмма развертывания платформы Sherpa RPA под управлением Оркестратора показывает варианты взаимодействия Оркестратора с другими компонентами платформы Sherpa RPA:

  • RDP сервер с учетными записями Unattended-пользователей – Sherpa Coordinator Service + Sherpa Unattended Robot

  • Рабочее место разработчика (Windows) — Sherpa Designer + Sherpa Robot

  • Клиентское рабочее место (Windows) – Attended Robot

  • Рабочее место с браузером.

Последовательность процесса

1) Разработчик сценария роботизации бизнес-процесса с помощью десктопного ПО Sherpa Designer и локального Sherpa Robot создаёт и отлаживает сценарий роботизации. Готовые сценарии роботизации передаются на рабочие места пользователей или роботов вручную путём копирования конфигурационного файла робота либо с помощью функции удаленной публикации новой версии сценария из Sherpa Designer в Sherpa Orchestrator.

2) Серверный компонент Sherpa Orchestrator поддерживает связь с роботами, запущенными на клиентских машинах, хранит конфигурации роботов и версии сценариев, общие глобальные переменные и учетные данные, логи и скриншоты работы роботов, журналы аудита оркестратора, пользователей, роли и тенанты самого Оркестратора, лицензии всех компонентов платформы и статистику исполнения сценариев.

3) Пользователи и администраторы Sherpa Orchestrator получают доступ к ресурсам, настройкам и статистике с помощью веб-приложения оркестратора, доступного через веб-браузер. Sherpa Orchestrator включает в себя веб-сервер Nginx, интерпретатор PHP и реляционную базу данных (по умолчанию — MariaDB, опция — Postgre).

4) Локальные пользователи по необходимости запускают Sherpa Attended Robot на исполнение хранящихся локально сценариев. В процессе исполнения сценария Sherpa Attended Robot может передавать Оркестратору текущий статус, задачи, логи, значения глобальных переменных и учетных данных или получать от него задачи, значения глобальных переменных и учетных данных.

5) По расписанию, вызову API, команде робота либо по другому поддерживаемому триггеру Sherpa Orchestrator даёт задание Sherpa Coordinator Service соответствующего терминального сервера создать RDP-подключение к локальной или удаленной учетной записи, выделенной для Unattended-робота, при этом на одном терминальном сервере может быть размещено и одновременно активно несколько таких учетных записей.

Вход в учётную запись Unattended-робота производится с предоставленными Оркестратором логином и паролем.

После входа в учетной записи запускается соответствующий экземпляр Sherpa Unattended Robot, подключается к Оркестратору, получает задание на выполнение сценария и сам сценарий, хранящийся в оркестраторе.

В процессе исполнения сценария Sherpa Unattended Robot может передавать оркестратору текущий статус, задачи, логи, значения глобальных переменных и учетных данных или получать от него задачи, значения глобальных переменных и учетных данных, команды для «мягкого» или «жесткого» завершения сценария.

После завершения исполнения сценария Sherpa Unattended Robot выполняет logoff из своей учетной записи.

В простых бизнес-процессах использование Оркестратора не обязательно, так как Attended версии Роботов могут использоваться автономно. Потенциал Оркестратора раскрывается в бизнес-процессах, которые требуют использования нескольких роботов, а также организации централизованного управления и взаимодействия между ними.

Отказоустойчивое развертывание Оркестратора

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

Для реализации этой схемы развертывания понадобятся две дополнительные виртуальные машины с администрированием баз данных, и осуществить все системные настройки баз данных (БД), а также три IP из одной подсети (два – для серверов баз данных и один свободный). Затем необходимо в docker-compose.yml прописать следующие настройки:

  1. Для контейнера orchestrator в environment исправить DB_HOST

- "DB_HOST= ip адрес хоста балансировки БД"

  1. Для контейнера orchestrator закомментировать следующие строки:

# depends_on:

# - orchestrator-db

Прописать адрес балансировки БД в конфигах:

/opt/SherpaOrchestrator/backend/config/config.ini

и

/opt/SherpaOrchestrator/backend/config/phinx.php

Last updated