Saltar a contenido

Session Manager

Es posible configurar el Session Manager para gestionar entornos de ejecución a nivel empresarial. Esta funcionalidad es especialmente útil para empresas que tienen múltiples Runners y desean distribuir las tareas de automatización entre diferentes hosts, de manera automática y eficiente.

Contexto

Una empresa que tiene 5 Runners en el Orquestador BotCity puede distribuirlos de diversas formas.

Suponiendo que la empresa tenga dos máquinas remotas (host) para ejecutar sus automatizaciones, la distribución puede hacerse de la siguiente manera:

  • Primer Host: Remote-1
    • Runners Asociados:
      • Runner-Desktop-1
      • Runner-BG-1
      • Runner-BG-2
  • Segundo Host: Remote-2
    • Runners Asociados:
      • Runner-Desktop-2
      • Runner-BG-3

Cada host tiene un conjunto de Runners asociados, que son responsables de ejecutar las tareas de automatización, siendo solo un Runner que controla pantalla por máquina y el resto ejecutan procesos en segundo plano, para no interferir en manipulaciones en pantalla.

El Session Manager es el componente que gestiona la asignación de estas tareas entre los Runners disponibles en los hosts.

Session Manager

El Session Manager puede ser alojado en una máquina dedicada o en una máquina de usuario. Lo importante es que esta máquina esté disponible para monitorear constantemente la cola de tareas del Orquestador BotCity, ya que el disparador de gestión de los hosts es una nueva tarea creada en la cola.

La máquina también debe poder acceder a los hosts donde están instalados los Runners vía RDP, y tener comunicación habilitada con el Orquestador BotCity vía HTTPS (Puerto 443).

Sugerencia de configuración de entorno

Para un entorno dedicado solo a la ejecución del Session Manager:

  • SO: Linux
  • RAM: 2GB

Atención a posibles adecuaciones de requisitos referentes a comunicación en red u otros recursos que desee agregar.

Configuración del Session Manager

A partir del contexto anterior, vamos a configurar el Session Manager para gestionar los Runners asociados a los hosts.

Paso 1: Descarga del Session Manager

El Session Manager forma parte del SDK de BotCity y puede descargarse directamente desde el Orquestador, seleccionando el sistema operativo deseado. Este ejemplo sigue el uso del sistema Windows, pero el proceso es similar para otros sistemas operativos.

Descarga

Para más detalles sobre cómo descargar e instalar el SDK, consulte la documentación completa en Instalación del SDK BotCity.

Paso 2: Acceso al Session Manager

Al instalar, el Session Manager estará disponible entre las herramientas del SDK BotCity.

En el terminal, navegue hasta la carpeta de instalación y utilice el comando para verificar la visibilidad del Session Manager:

dir
terminal-comando-dir

Debería ver el ejecutable del Session Manager listado, como session-manager.exe o session-manager.

Paso 3: Configuración del Session Manager - Host

La configuración se realiza mediante comandos en el terminal, el primero a utilizar es para agregar un host:

SessionManager host add

En el contexto tenemos dos hosts, así que vamos a agregar ambos, pasando la siguiente información:

  • Primer Host:

    • Label for the host: Remote-1
    • Choose the protocol (rdp, ec2): rdp
    • Username: admin
    • Password: Pass123
    • Repeat for confirmation: Pass123
    • Hostname: 10.30.85.56
    • Width: 1600
    • Height: 900
    • Port [3389]: 3389
  • Segundo Host:

    • Label for the host: Remote-2
    • Choose the protocol (rdp, ec2): rdp
    • Username: administrator
    • Password: 123pass
    • Repeat for confirmation: 123pass
    • Hostname: 172.24.70.36
    • Width: 1600
    • Height: 900
    • Port [3389]: 3389

Paso 4: Configuración del Session Manager - Runner

Con los hosts agregados, el siguiente paso es adjuntar los Runners a cada host. Para seguir el contexto, vamos a asociar:

  • Runner-Desktop-1, Runner-BG-1, Runner-BG-2 a Remote-1
  • Runner-Desktop-2, Runner-BG-3 a Remote-2.

Para ello, utilizamos el comando:

SessionManager runner attach

Completando la información según el contexto:

  • Runner-Desktop-1:
    • Host label: Remote-1
    • Runner label: Runner-Desktop-1
    • Path to SDK: C:\Users\admin\BotCity\Runner-Desktop-1
  • Runner-BG-1:
    • Host label: Remote-1
    • Runner label: Runner-BG-1
    • Path to SDK: C:\Users\admin\BotCity\Runner-BG-1
  • Runner-BG-2:
    • Host label: Remote-1
    • Runner label: Runner-BG-2
    • Path to SDK: C:\Users\admin\BotCity\Runner-BG-2
  • Runner-Desktop-2:
    • Host label: Remote-2
    • Runner label: Runner-Desktop-2
    • Path to SDK: C:\Users\administrator\BotCity\Runner-Desktop-2
  • Runner-BG-3:
    • Host label: Remote-2
    • Runner label: Runner-BG-3
    • Path to SDK: C:\Users\administrator\BotCity\Runner-BG-3

Paso 5: Verificación de la Configuración

Para verificar si la configuración se realizó correctamente, utilice el comando:

SessionManager list all

Este comando lista todos los hosts y Runners asociados, permitiendo confirmar si todo está como se espera.

!tip "Verificación"

Paso 6: Iniciar el Session Manager

Con la configuración finalizada, el siguiente paso es iniciar el Session Manager para que comience a monitorear la cola de tareas del Orquestador BotCity y gestionar los Runners.

Para iniciar el Session Manager, utilice el comando:

SessionManager run local

Revise los logs sm_audit.log y sm_out.log en la carpeta log, en el lugar de instalación del Session Manager, para verificar que todo esté funcionando correctamente.

Orquestador BotCity

Una vez que el Session Manager esté ejecutándose, comenzará a monitorear la cola de tareas del Orquestador BotCity.

Para funcionar correctamente, es necesario que las Automatizaciones en el Orquestador estén dirigidas a los Runners adjuntos a los hosts configurados en el Session Manager.

Automatizaciones

Para hacer esta verificación, acceda al Orquestador BotCity, navegue hasta la sección de Automatizaciones y seleccione la automatización deseada.

En el campo Runners Vinculados debe estar seleccionado uno o más Runners adjuntos en las configuraciones del Session Manager.

automatizaciones-runners-vinculados

Tareas

En este momento, al crear una nueva tarea, el Session Manager accederá automáticamente a uno de los hosts configurados, iniciará el Runner adjunto y ejecutará la automatización.

Al finalizar, y no habiendo más tareas en cola, el Session Manager se desconectará del host, liberándolo para futuras ejecuciones.

Documentación Completa

Consulte la documentación completa del Session Manager, accediendo a otras funciones y configuraciones en: Session Manager - BotCity Docs.