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#
A sequência a seguir descreve como um cenário passa do desenvolvimento à execução por um Robô Attended ou Unattended.
O desenvolvedor cria um cenário no Sherpa Designer e o depura com um Sherpa Robot local. O cenário concluído é transferido para uma estação do Usuário ou Robô pela cópia do arquivo de configuração, ou publicado do Sherpa Designer no Sherpa Orchestrator.
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 Contas do próprio Orquestrador, licenças de todos os componentes da plataforma e estatísticas de execução dos scripts.
Usuários e administradores abrem a interface web do Sherpa Orchestrator em um navegador para gerenciar recursos, configurar o sistema e consultar estatísticas. A instalação do servidor inclui Nginx, PHP e um banco relacional: MariaDB por padrão ou PostgreSQL.
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.
Ao iniciar por agendamento, chamada de API, comando do Robô ou outra condição compatível, o Sherpa Orchestrator envia uma tarefa ao Sherpa Coordinator Service no servidor de terminais. O serviço cria uma conexão RDP com a conta local ou remota do Robô Unattended. Várias contas podem funcionar simultaneamente em um servidor de terminais.
O acesso à conta do robô Unattended é feito com o login e senha fornecidos pelo Orquestrador.
Após o login na conta, é iniciada a respectiva 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.
Robôs Attended executam cenários locais de forma autônoma. O Sherpa Orchestrator fornece o gerenciamento centralizado de vários Robôs e sua interação.
Conexão com um banco de dados externo#
Esta seção descreve a conexão da aplicação a um banco preparado por um administrador. Para um banco de alta disponibilidade, o administrador define a topologia, a replicação, o balanceamento e a alternância entre servidores. A quantidade de máquinas virtuais e endereços IP depende da solução escolhida e é acordada no projeto da instalação.
Na distribuição Docker do Sherpa Orchestrator 5.9.4, os parâmetros de conexão são definidos em /opt/SherpaOrchestrator/.env. O administrador de banco de dados deve preparar previamente um endereço de conexão acessível, um banco de dados e as credenciais. Ao alterar o endereço de uma instalação existente, o banco de dados de destino deve conter os dados dessa instalação.
Para configurar a conexão, é necessário realizar as seguintes etapas:
Definir em
.envos parâmetros do sistema de banco de dados selecionado:Sistema de banco de dados Seleção do sistema Endereço de conexão Parâmetros de conexão MariaDB DB_ENGINE=mysqlMYSQL_HOST— endereço do servidor ou balanceador do BDMYSQL_PORT,MYSQL_USER,MYSQL_PASSWORD,MYSQL_DBPostgreSQL DB_ENGINE=pgsqlPOSTGRES_HOST— endereço do servidor ou cluster de BDPOSTGRES_PORT,POSTGRES_USER,POSTGRES_PASSWORD,POSTGRES_DBNAME,POSTGRES_SCHEMA_NAMEO endereço deve estar acessível a partir do contêiner
orchestrator. Preserve os parâmetros existentes do banco de arquivo ao configurar a conexão com o banco principal.A partir de
/opt/SherpaOrchestrator, recriar o contêiner da aplicação para aplicar as variáveis de ambiente. A aplicação ficará indisponível enquanto o contêiner estiver sendo recriado:docker compose up -d --no-deps --force-recreate orchestratorVerificar se a aplicação inicia sem erros de conexão com o BD:
docker compose logs --tail=100 orchestratorApós a inicialização, a interface web do Orquestrador deve abrir. Se a conexão falhar, é necessário verificar o endereço, a porta, a acessibilidade do BD a partir do contêiner e as permissões da conta.
O contêiner orchestrator recebe os parâmetros por meio de env_file: .env. No arquivo padrão docker-compose.client.yml, ele não tem uma dependência depends_on do BD. Para configurar o endereço do BD, não é necessário adicionar DB_HOST, comentar essa dependência nem editar manualmente backend/config/config.ini e backend/config/phinx.php.