Despliegue de la plataforma gestionada por Orquestador#
Diagrama de despliegue de la plataforma Sherpa RPA gestionada por Orquestador muestra las opciones de interacción del Orquestador con otros componentes de la plataforma Sherpa RPA:
- Servidor RDP con cuentas de usuarios Unattended – Sherpa Coordinator Service + Sherpa Unattended Robot
- Estación de trabajo del desarrollador (Windows) — Sherpa Designer + Sherpa Robot
- Estación de trabajo del cliente (Windows) – Attended Robot
- Estación de trabajo con navegador.
Secuencia del proceso#
La siguiente secuencia describe cómo un escenario pasa del desarrollo a la ejecución por un Robot Attended o Unattended.
El desarrollador crea un escenario en Sherpa Designer y lo depura con un Sherpa Robot local. El escenario terminado se transfiere a una estación del Usuario o Robot copiando el archivo de configuración, o se publica desde Sherpa Designer en Sherpa Orchestrator.
El componente servidor Sherpa Orchestrator mantiene la comunicación con los robots que se ejecutan en las máquinas cliente, almacena las configuraciones de los robots y las versiones de los scripts, variables globales compartidas y credenciales, registros y capturas de pantalla del trabajo de los robots, registros de auditoría del orquestador, Usuarios, Roles y Cuentas del propio Orquestador, licencias de todos los componentes de la plataforma y estadísticas de ejecución de scripts.
Los Usuarios y administradores abren la interfaz web de Sherpa Orchestrator en un navegador para gestionar recursos, configurar el sistema y consultar estadísticas. La instalación del servidor incluye Nginx, PHP y una base relacional: MariaDB de forma predeterminada o PostgreSQL.
Los usuarios locales inician Sherpa Attended Robot según sea necesario para ejecutar scripts almacenados localmente. Durante la ejecución del script, Sherpa Attended Robot puede enviar al Orquestador el estado actual, tareas, registros, valores de variables globales y credenciales o recibir de él tareas, valores de variables globales y credenciales.
Al iniciarse por una programación, llamada API, comando del Robot u otra condición compatible, Sherpa Orchestrator envía una tarea a Sherpa Coordinator Service en el servidor de terminales. El servicio crea una conexión RDP con la cuenta local o remota del Robot Unattended. Varias cuentas pueden funcionar simultáneamente en un servidor de terminales.
El acceso a la cuenta del robot Unattended se realiza con el nombre de usuario y la contraseña proporcionados por el Orquestador.
Después de iniciar sesión en la cuenta, se inicia la instancia correspondiente de Sherpa Unattended Robot, se conecta al Orquestador, recibe la tarea para ejecutar el script y el propio script, que se almacena en el orquestador.
Durante la ejecución del script, Sherpa Unattended Robot puede enviar al orquestador el estado actual, tareas, registros, valores de variables globales y credenciales o recibir de él tareas, valores de variables globales y credenciales, comandos para finalizar el script de forma "suave" o "dura".
Después de completar la ejecución del script, Sherpa Unattended Robot realiza logoff de su cuenta.
Los Robots Attended ejecutan escenarios locales de forma autónoma. Sherpa Orchestrator proporciona la gestión centralizada de varios Robots y su interacción.
Conexión a una base de datos externa#
Esta sección describe la conexión de la aplicación a una base preparada por un administrador. Para una base de alta disponibilidad, el administrador define la topología, la replicación, el balanceo y la conmutación entre servidores. La cantidad de máquinas virtuales y direcciones IP depende de la solución elegida y se acuerda al diseñar la instalación.
En la distribución Docker de Sherpa Orchestrator 5.9.4, los parámetros de conexión se definen en /opt/SherpaOrchestrator/.env. El administrador de bases de datos debe preparar de antemano una dirección de conexión accesible, una base de datos y las credenciales. Al cambiar la dirección de una instalación existente, la base de datos de destino debe contener los datos de esa instalación.
Para configurar la conexión, se deben realizar los siguientes pasos:
Definir en
.envlos parámetros del sistema de bases de datos seleccionado:Sistema de bases de datos Selección del sistema Dirección de conexión Parámetros de conexión MariaDB DB_ENGINE=mysqlMYSQL_HOST— dirección del servidor o balanceador de BDMYSQL_PORT,MYSQL_USER,MYSQL_PASSWORD,MYSQL_DBPostgreSQL DB_ENGINE=pgsqlPOSTGRES_HOST— dirección del servidor o clúster de BDPOSTGRES_PORT,POSTGRES_USER,POSTGRES_PASSWORD,POSTGRES_DBNAME,POSTGRES_SCHEMA_NAMELa dirección debe ser accesible desde el contenedor
orchestrator. Conserve sin cambios los parámetros de la base de archivo al configurar la conexión con la base principal.Desde
/opt/SherpaOrchestrator, recrear el contenedor de la aplicación para aplicar las variables de entorno. La aplicación no estará disponible mientras se recrea el contenedor:docker compose up -d --no-deps --force-recreate orchestratorComprobar que la aplicación se inicia sin errores de conexión a la BD:
docker compose logs --tail=100 orchestratorTras el inicio, debe abrirse la interfaz web del Orquestador. Si falla la conexión, se deben comprobar la dirección, el puerto, la accesibilidad de la BD desde el contenedor y los permisos de la cuenta.
El contenedor orchestrator recibe los parámetros mediante env_file: .env. En el archivo estándar docker-compose.client.yml no tiene una dependencia depends_on de la BD. Para configurar la dirección de la BD, no es necesario agregar DB_HOST, comentar esa dependencia ni modificar manualmente backend/config/config.ini y backend/config/phinx.php.