Implantação da plataforma sob a gestão do Orquestrador#

Diagrama de implantação da plataforma Sherpa RPA sob a gestão do Orquestrador mostra as opções de interação do Orquestrador com outros componentes da plataforma Sherpa RPA:

  • Servidor RDP com contas de usuários Unattended – Sherpa Coordinator Service + Sherpa Unattended Robot
  • Estação de trabalho do desenvolvedor (Windows) — Sherpa Designer + Sherpa Robot
  • Estação de trabalho do cliente (Windows) – Attended Robot
  • Estação de trabalho com navegador.

Sequência do processo#

1) O desenvolvedor do script de automação de processos de negócios utiliza o software de desktop Sherpa Designer e o Sherpa Robot local para criar e depurar o script de automação. Os scripts de automação prontos são transferidos para as estações de trabalho dos usuários ou robôs manualmente, copiando o arquivo de configuração do robô ou utilizando a função de publicação remota de uma nova versão do script do Sherpa Designer para o Sherpa Orchestrator.

2) O componente servidor Sherpa Orchestrator mantém a comunicação com os robôs em execução nas máquinas clientes, armazena as configurações dos robôs e versões dos scripts, variáveis globais compartilhadas e credenciais, logs e capturas de tela do funcionamento dos robôs, registros de auditoria do orquestrador, usuários, funções e inquilinos do próprio Orquestrador, licenças de todos os componentes da plataforma e estatísticas de execução dos scripts.

3) Usuários e administradores do Sherpa Orchestrator acessam recursos, configurações e estatísticas por meio do aplicativo web do orquestrador, disponível através de um navegador web. O Sherpa Orchestrator inclui um servidor web Nginx, um interpretador PHP e um banco de dados relacional (por padrão — MariaDB, opção — Postgre).

4) Usuários locais, se necessário, iniciam o Sherpa Attended Robot para executar scripts armazenados localmente. Durante a execução do script, o Sherpa Attended Robot pode enviar ao Orquestrador o status atual, tarefas, logs, valores de variáveis globais e credenciais ou receber dele tarefas, valores de variáveis globais e credenciais.

5) De acordo com um cronograma, chamada de API, comando do robô ou outro gatilho suportado, o Sherpa Orchestrator dá a tarefa ao Sherpa Coordinator Service do servidor terminal correspondente para criar uma conexão RDP com a conta local ou remota designada para o robô Unattended, sendo que em um único servidor terminal podem estar hospedadas e ativas simultaneamente várias dessas contas.

O acesso à conta do robô Unattended é feito com o login e senha fornecidos pelo Orquestrador.

Após o login na conta, é iniciado o respectivo instância do Sherpa Unattended Robot, que se conecta ao Orquestrador, recebe a tarefa de execução do script e o próprio script, armazenado no orquestrador.

Durante a execução do script, o Sherpa Unattended Robot pode enviar ao orquestrador o status atual, tarefas, logs, valores de variáveis globais e credenciais ou receber dele tarefas, valores de variáveis globais e credenciais, comandos para a finalização "suave" ou "dura" do script.

Após a conclusão da execução do script, o Sherpa Unattended Robot faz logoff de sua conta.

Em processos de negócios simples, o uso do Orquestrador não é obrigatório, pois as versões Attended dos Robôs podem ser usadas de forma autônoma. O potencial do Orquestrador se revela em processos de negócios que exigem o uso de vários robôs, bem como a organização de gerenciamento centralizado e interação entre eles.

Implantação do Orquestrador com alta disponibilidade#

O Orquestrador suporta implantação com alta disponibilidade, como demonstrado no diagrama abaixo. Para isso, ele utiliza duas bases de dados sincronizadas e balanceamento.

Para implementar este esquema de implantação, serão necessárias duas máquinas virtuais adicionais com administração de banco de dados, além de realizar todas as configurações do sistema dos bancos de dados (BD), e três IPs de uma mesma sub-rede (dois para os servidores de banco de dados e um livre). Em seguida, é necessário no docker-compose.yml definir as seguintes configurações:

  1. Para o contêiner orchestrator, alterar o DB_HOST no environment

    - "DB_HOST= endereço IP do host de balanceamento do BD"

  2. Para o contêiner orchestrator, comentar as seguintes linhas:

# depends_on:

# - orchestrator-db

Definir o endereço de balanceamento do BD nas configurações:

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

e

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