“Remoting” com o Magic xpi – Usando o “Local Agent” – Parte I

Veja nesta nova série de publicações, como utilizar o recurso de execução remota de componentes, através do Local Agent, com o Magic xpi.

 

Vamos dar início a uma pequena série de publicações, possivelmente 3 (1 a cada mês), mostrando como usar o Local Agent do Magic xpi e quais benefícios ele pode trazer.

Se você acompanha o Magic xpi desde os tempos em que ele chama-se iBOLT, deve recordar de um recurso que existia, chamado Remote Execution:

 

A ideia baseava-se na arquitetura de 2 ou mais servidores Magic xpi, em diferentes máquinas, executando o mesmo projeto.

Eram os servidores de performance e os peripherals.

Em qualquer dos fluxos existentes no projeto, era possível determinar que componentes “x” executariam em um servidor “A“, enquanto que componentes “y” executariam em um servidor “B“:

 

Os diferentes Magic xpis da arquitetura conversavam entre si, e cada um executava o seu componente do fluxo, na ordem estabelecida no desenho.

Isso permitia distribuir a execução de um determinado fluxo de integração em diferentes servidores, considerando por exemplo, que alguns recursos (base de dados, sistemas legados, …) poderiam não estar acessíveis ao servidor de integração (onde o Magic xpi estava instalado e executando).

 

Este recurso foi removido na versão 4.0 da plataforma, mas agora na versão 4.12 (64Bits) e posteriores, veio um novo recurso: o Local Agent.

Com ele, nós podemos executar componentes de um fluxo de projeto Magic xpi em máquinas que não possuem o Magic xpi 😉:

Basta existir nestes outros servidores o MS DotNet Framework e/ou o Java.

Isso traz de volta a possibilidade de distribuição de “executores” de componentes de um fluxo de integração em diferentes servidores, como a combinação de um ambiente cloud e um ambiente local (intranet), considerando novamente que alguns recursos (base de dados, sistemas legados, …) podem não estar acessíveis ao servidor de integração (onde o Magic xpi está instalado e executando).

 

Vamos entender como isso pode ser possível.

 

Inicialmente, este recurso não está disponível para todos os componentes e conectores da plataforma.  Ele vem sendo liberado de forma progressiva a alguns elementos da biblioteca do produto.

Na atual versão (4.13.1), quando este post está sendo escrito, ele pode ser utilizado com:

 

  • Conector SAP ERP (novos estão chegando em novas versões da plataforma)

 

Outro ponto a sempre ter em mente: o Local Agent é um recurso para uma 2a (ou 3a, ou 4a) máquina. Sempre precisa existir uma 1a máquina, que possua o Magic xpi.

 

Daqui em diante, nós iremos trabalhar nesta demonstração com duas máquinas distintas, para exemplificar esta arquitetura:

Uma será o “SERVIDOR A“, de nome FZDELL e ip 192.168.56.1 (Win10 64Bits).

A outra, o “SERVIDOR B“, de nome MSBJACWIN764 e ip 192.168.56.56 (Win7 64Bits).

*Nota: por conveniência da série de postagens, as duas máquinas (A e B) estão na mesma rede. Mas isso não é pré-requisito. De fato, elas só precisam conseguir se enxergarem.

 

Preparando o Servidor “A” – FZDELL

Este servidor, será a máquina que conterá o Magic xpi . Nada de especial e diferente precisa ser feito aqui. Apenas a instalação e configuração habitual da plataforma, para execução de um ou mais projetos de integração.

 

Preparando o Servidor “B” – MSBJACWIN764

Este servidor, será a máquina que executará alguns componentes dos fluxos dos projetos, sem ter o Magic xpi.

Nela então, precisamos instalar e configurar o Local Agent.

Para tanto, são necessárias estas ferramentas:

 

  • Microsoft Visual 2015-2019 C++ Redistributable (x86 e x64)

Pode baixar deste endereço: https://support.microsoft.com/en-us/topic/the-latest-supported-visual-c-downloads-2647da03-1eea-4433-9aff-95f26a218cc0

  • Mosquitto MQTT Broker (x64)

Pode baixar deste endereço: https://mosquitto.org/download/

É uma ferramenta simples de envio de mensagens, por meio da qual você recebe as mensagens e as publica para todos os clientes. Também é um protocolo de rede flexível que pode ser conectado a vários dispositivos com redes de largura de banda alta ou limitada.

  • MinIO (Server / Client)

Pode baixar deste endereço: https://min.io/download

É um software de armazenamento do lado do servidor, ele pode lidar com dados não estruturados, como fotos, vídeos, arquivos de log, backups e imagens de contêiner com atualmente o tamanho máximo de até 5 TB por objeto.

  • Apache Tomcat9

Pode baixar deste endereço: https://tomcat.apache.org/index.html

  • Win OpenSSL 1_1_1e (x86 e x64)

Pode baixar deste endereço: http://slproweb.com/products/Win32OpenSSL.html

  • MS DotNet Framework 4.62 ou >

Pode baixar deste endereço: https://dotnet.microsoft.com/download/dotnet-framework

  • Java 8 SDK (x86 e x64)

Pode baixar deste endereço: https://cn.azul.com/downloads/?version=java-8-lts&package=jdk&show-old-builds=true

  • NSSM – Non-Sucking Service Manager

Pode baixar deste endereço: https://nssm.cc/download

  • Magic xpi Local Agent

Ele vem junto no pacote de instalação da plataforma (4.12 em diante), numa pasta chamada “LocalAgent“.

 

*Nota: Lembre-se: no momento em que estiver lendo esta publicação, os endereços acima podem ter sido alterados pelos respectivos fabricantes, sem prévio aviso.

 

Na parte II da série, iremos mostrar como instalar e configurar todos estes componentes que formam a infraestrutura do Local Agent do Magic xpi.

Aguardem …

 

Manoel Frederico Silva – Gerente de Tecnologia e Evangelista MAGIC – Magic Brasil
Manoel Frederico Silva – Evangelista MAGIC – Magic Brasil

 

Para receber os artigos do Blog Magic Brasil em primeira mão no seu email, registre-se aqui

Deixe um comentário

O seu endereço de e-mail não será publicado.