Skip to content

Instalar o Agente ETL ​

Tipo
Como fazer
Para
Engenharia de dados
Na tela
HorusETL › Configurar Agentes ETL › Novo Agente ETL

O Agente ETL é o programa que executa os seus Dataflows. Você o cria no Lumo, recebe um token e instala o serviço numa máquina que enxergue os bancos de origem. O papel do Agente no caminho do dado está em Como o HorusETL funciona.

Antes de começar ​

  • Escolha a máquina. Ela precisa alcançar os bancos que os Dataflows vão ler e ter saída HTTPS para os endereços de Rede e segurança. Nenhuma porta de entrada é necessária.
  • Para o tamanho da máquina, use 2 vCPU, 4 GB de RAM e 10 GB livres em disco. Os outros perfis estão em Dimensionar o Agente ETL.
  • No Windows, instale o .NET Desktop Runtime 8, versão x64. Ele inclui o .NET Runtime que o serviço usa e o que o Configurador, a janela do token, precisa para abrir. Em Linux ou servidor, tenha o Docker com o Docker Compose.

Criar o Agente no Lumo ​

  1. No HorusETL, abra Configurar Agentes ETL › Novo Agente ETL. Abre a tela Criar novo Agente ETL.
  2. Em Descrição do Agente ETL:, escreva onde ele vai rodar, por exemplo Servidor ERP matriz.
  3. Em Agendamentos Simultâneos:, deixe o valor sugerido. Num Agente que atende um Tenant só, os agendamentos rodam um de cada vez de qualquer jeito.
  4. Clique em Salvar.

A tela mostra o Token do Agente ETL: borrado. Clique no olho, Visualizar Token, para ver, ou em Copiar Token para copiar. O token fica disponível nessa tela sempre que você precisar dele de novo.

Instalar no Windows ​

No card Instalar o Agente ETL, aba Windows:

  1. Clique em Baixar instalador (.msi) e rode o instalador na máquina escolhida.
  2. Quando o instalador pedir, cole o token.
  3. Ao final da instalação o serviço sobe sozinho, e a Situação do agente: muda para Online.

Instalar com Docker ​

No card Instalar o Agente ETL, aba Docker (Linux/servidor), copie o docker-compose.yml. Ele já vem com o seu token:

yaml
services:
  horus-etl:
    image: horusbi/etl:latest
    container_name: horus-etl
    restart: unless-stopped
    environment:
      TOKEN: "<seu token>"
      TZ: "America/Sao_Paulo"
    volumes:
      - ./horus-etl-data:/data

Salve o arquivo numa pasta da máquina e rode, nessa pasta:

bash
docker compose up -d

Em até um minuto, a Situação do agente: muda para Online. A pasta horus-etl-data guarda a versão do Agente que o container baixa ao iniciar; mantenha o volume para que o Agente suba mesmo se o download falhar.

Fuso do container ​

O Agente confere a Janela de Horário entre dos agendamentos no relógio da máquina onde roda. Sem a linha TZ, o container fica em UTC, e uma janela de 06:00 a 20:00 roda três horas antes no horário de Brasília. America/Sao_Paulo é o horário de Brasília; em outro fuso, use o nome dele, como America/Cuiaba ou America/Manaus. Depois de mudar a linha, rode docker compose up -d de novo para recriar o container.

No Windows, o Agente usa o fuso configurado no sistema. O que depende do fuso em cada gatilho está em Agendar um Dataflow.

Usar o token de um Agente que já roda ​

Um Agente ETL pode atender vários Tenants. Para que um Agente já instalado para outro Tenant passe a rodar também os Dataflows deste, não instale nada: na tela de Agente novo, clique em Vincular Agente ETL já existente, cole o token dele em Token do Agente ETL e clique em Vincular. Se o token já está ligado a este Tenant, o Lumo recusa com "Token já vinculado com esse tenant!".

Se der errado ​

O instalador falha ou o Configurador não abre. Ver Problemas com o Agente ETL no Windows, que traz o comando que grava o log da instalação.

A situação continua Offline. O serviço não está rodando ou não alcança backend.horusbi.com.br na porta 443. Confira o serviço no Windows ou docker compose logs no Docker, e a saída para os endereços de Rede e segurança.

Aparece "Múltiplas Réplicas Detectadas!". O mesmo token está conectado de mais de uma máquina ao mesmo tempo, o que deixa o comportamento das cargas imprevisível. A tela lista cada instância com MAC e versão. Desligue as que sobram, ou crie um Agente para cada máquina.

O Agente fica online, mas o Dataflow não conecta no banco. A máquina não enxerga o banco. Teste a conexão em Conexões; ver Problemas.

Relacionado ​

Pelo Lumo CLI

Este recurso também pode ser criado e versionado em YAML. Veja a referência de agent.