Ir para o conteúdo

Agentes privados Jitterbit no Linux

Introdução

Esta página mostra como instalar e executar um agente privado no Linux. A seção Solução de Problemas fornece uma lista de problemas comuns e suas soluções.

Instalar

Para instalar um agente privado, siga estas etapas:

  1. Atenda aos pré-requisitos.

  2. Baixe um pacote de instalação do agente privado.

  3. Execute o instalador do agente privado.

  4. Configure e inicie o agente privado.

Pré-requisitos

Você deve ter o seguinte:

Os seguintes itens são opcionais:

  • Adicionar um agente no Console de Gerenciamento. Se você não tiver agentes privados não registrados no grupo de agentes, um será criado automaticamente com um nome que inclui o nome do host e o endereço IP.

  • Um servidor de banco de dados PostgreSQL é instalado automaticamente. Para usar o seu próprio, você deve configurá-lo antes de instalar o agente privado e saber seu nome ou endereço IP, número da porta e os detalhes da conta do administrador do banco de dados.

Os seguintes itens são recomendados:

Baixar

Para baixar o software do agente privado, vá para a página Downloads do Portal Harmony.

Dica

Se você já adicionou um agente na página Agentes do Console de Gerenciamento, clique no ícone Baixar Agente Jitterbit do agente.

Baixe um dos seguintes pacotes do agente privado para Linux:

  • Linux Debian (x64): O arquivo de pacote .deb, para instalação no Debian ou Ubuntu Linux como root.

  • Linux RPM: O arquivo de pacote .rpm, para instalação no Red Hat Linux como root.

  • Linux Redhat Não-Raiz (x64): O arquivo .tar, para instalação no Red Hat Linux como um usuário não-root.

Instalador

Execute os seguintes comandos para o tipo de instalador baixado:

Como root
dpkg --install <PATH>/jitterbit-agent_<VERSION>_amd64.deb
update-alternatives --install /usr/bin/python python /usr/bin/python2 1
Como root
yum install <PATH>/jitterbit-agent-<VERSION>.x86_64.rpm
  1. Faça login como um usuário não-root com privilégios sudo.

  2. Instale os pacotes necessários:

    sudo dnf install -y unzip
    

    Nota

    Isso pode já estar instalado em seu sistema, dependendo de como foi configurado.

  3. Crie o usuário jitterbit:

    Como usuário não-root
    sudo useradd --user-group jitterbit --base-dir /opt --groups wheel
    sudo passwd jitterbit
    
  4. Saia do shell do usuário não-root.

  5. Faça login como jitterbit.

  6. Crie um arquivo de serviço systemd para o usuário:

    Como jitterbit
    mkdir -p $HOME/.config/systemd/user
    cat > $HOME/.config/systemd/user/jitterbit.service <<EOF
    [Unit]
    Description=Jitterbit private agent
    Documentation=https://docs.jitterbit.com/agent/linux/
    After=default.target
    
    [Service]
    Type=forking
    Environment=JITTERBIT_HOME=/opt/jitterbit
    Environment=PG_HOME=\${JITTERBIT_HOME}/pgsql
    Environment=PG_DATA=\${JITTERBIT_HOME}/DataInterchange/pgsql/data
    Environment=LD_LIBRARY_PATH=\${JITTERBIT_HOME}/lib:\${JITTERBIT_HOME}/psql/lib
    Environment=PATH=\${JITTERBIT_HOME}/bin:\${JITTERBIT_HOME}/pgsql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    ExecStart=/opt/jitterbit/bin/jitterbit start
    ExecStop=/opt/jitterbit/bin/jitterbit stop
    TimeoutSec=600
    
    [Install]
    WantedBy=default.target
    EOF
    
  7. Recarregue o daemon systemd, habilite o serviço e permita que os serviços do systemd sejam executados quando o usuário não estiver logado:

    Como jitterbit
    systemctl --user daemon-reload
    systemctl --user enable jitterbit.service
    loginctl enable-linger
    
  8. Configure o ambiente do shell:

    Como jitterbit
    mkdir -p $HOME/.bashrc.d
    cat >> $HOME/.bashrc.d/jitterbit <<EOF
    export JITTERBIT_HOME=/opt/jitterbit
    export ODBCINI=\${JITTERBIT_HOME}/odbcinst.ini
    export ODBCSYSINI=\${JITTERBIT_HOME}
    export PG_HOME=\${JITTERBIT_HOME}/pgsql
    export PG_DATA=\${JITTERBIT_HOME}/DataInterchange/pgsql/data
    export LD_LIBRARY_PATH=\${JITTERBIT_HOME}/lib:\${JITTERBIT_HOME}/psql/lib
    export PATH=\${JITTERBIT_HOME}/bin:\${JITTERBIT_HOME}/pgsql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    EOF
    . ./.bashrc
    
  9. (Opcional) Verifique o ambiente:

    Como jitterbit
    env | grep jitterbit
    

    A saída deve ser parecida com isto:

    PWD=/opt/jitterbit
    LOGNAME=jitterbit
    HOME=/opt/jitterbit
    PG_HOME=/opt/jitterbit/pgsql
    PG_DATA=/opt/jitterbit/DataInterchange/pgsql/data
    JITTERBIT_HOME=/opt/jitterbit
    ODBCINI=/opt/jitterbit/odbcinst.ini
    USER=jitterbit
    LD_LIBRARY_PATH=/opt/jitterbit/lib:/opt/jitterbit/psql/lib
    ODBCSYSINI=/opt/jitterbit
    PATH=/opt/jitterbit/bin:/opt/jitterbit/pgsql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    MAIL=/var/spool/mail/jitterbit
    

    Importante

    Os valores destacados são importantes, especialmente JITTERBIT_HOME, que deve sempre ser /opt/jitterbit.

  10. Descompacte o arquivo tar baixado:

    Como jitterbit
    tar -C /opt -xf <PATH>/jitterbit-agent-<VERSION>.x86_64.tar
    
    • <PATH>: O caminho para o arquivo .tar baixado, em um diretório com permissões de leitura para o usuário jitterbit.
  11. Execute o instalador:

    Como jitterbit
    $HOME/scripts/install.sh
    

Importante

Você deve agora configurar o agente privado.

Configure

Para configurar, registrar e reiniciar um agente privado no Linux, siga estas etapas:

  1. Execute este comando:

    Como root
    jitterbit-config
    
    Como root
    jitterbit-config
    
    Como jitterbit
    jitterbit-config
    

    No seguinte prompt, digite y:

    Aviso: esta ferramenta requer privilégios de root.
    Dica: Use sudo ou faça login como usuário root.
    Você deseja continuar como o usuário atual? [y/n]:
    
  2. (Opcional) Para permitir que o agente se comunique via um servidor proxy, adicione as opções necessárias.

  3. Quando solicitado, insira seu nome de usuário e senha da conta Harmony, e selecione as opções correspondentes à sua organização, grupo de agentes e agente.

  4. Execute este comando:

    Como root
    jitterbit restart
    
    Como root
    jitterbit restart
    
    Como jitterbit
    jitterbit restart
    

Upgrade

Você deve parar e reiniciar um agente para atualizações de versão menores (11.x para 11.y, ou 10.x para 10.y) e de versão principal (10 para 11). Atualizações de versão principal também requerem uma desinstalação completa e reinstalação, e uma sincronização completa dos ambientes.

Atualizações de .deb e .rpm de 11.48 e anteriores para 11.49+ incluem atualizações necessárias do conector

Atualizações de agentes privados 11.48 e anteriores para 11.49 e posteriores incluem uma atualização necessária para todos os conectores.

Você será solicitado a aceitar isso durante o processo de atualização. Se não aceitar, a atualização não poderá prosseguir. Atualizações feitas com silent_install definido e instalações não-root do Redhat aceitam automaticamente esse pré-requisito.

Se você tiver dois ou mais agentes em um grupo de agentes, atualize-os um de cada vez, para que seus projetos de integração sempre tenham pelo menos um agente para processar operações. Se houver apenas um agente no grupo, as operações ficam na fila em Status Pendente até que o agente esteja online e pronto para processá-las.

Para atualizar um agente privado no Linux, siga estas etapas:

  1. Baixe um pacote de instalador.

  2. Se o agente ainda estiver processando operações, drain pause ele.

    Ou, se você tiver certeza de que nada está sendo executado no agente, drain stop ele.

  3. Monitore o arquivo de log do agente. Continue quando todas as operações tiverem sido concluídas.

  4. Faça cópias de backup dos seguintes arquivos:

    Localização Arquivo
    /opt/jitterbit/ jitterbit.conf
    /opt/jitterbit/ JdbcDrivers.conf
    /opt/jitterbit/Resources/ jitterbit-agent-config.properties
    /opt/jitterbit/apache/conf/ httpd.conf
    /opt/jitterbit/apache/conf/ *.crt
    /opt/jitterbit/apache/conf/ *.key
    /opt/jitterbit/apache/conf/extra/ *.conf
    /opt/jitterbit/jre/lib/security/ cacerts
  5. Execute o seguinte comando para o tipo de instalador baixado:

    Como root
    dpkg --install <PATH>/jitterbit-agent_<VERSION>_amd64.deb
    
    Como root
    yum upgrade <PATH>/jitterbit-agent-<VERSION>.x86_64.rpm
    
    Como jitterbit
    tar -C /opt -xf /<PATH>/jitterbit-agent-<VERSION>.x86_64.tar
    
    • <PATH>: O caminho para o arquivo .tar baixado, em um diretório com permissões de leitura para o usuário jitterbit.
  6. Compare os seguintes arquivos com suas cópias de backup e restaure quaisquer configurações alteradas:

    Localização Arquivo
    /opt/jitterbit/ jitterbit.conf
    /opt/jitterbit/ JdbcDrivers.conf
    /opt/jitterbit/Resources/ jitterbit-agent-config.properties
    /opt/jitterbit/apache/conf/ httpd.conf
    /opt/jitterbit/apache/conf/extra/ *.conf
    /opt/jitterbit/jre/lib/security/ cacerts
  7. Se você tiver arquivos de backup .crt ou .key que não estão em /opt/jitterbit/apache/conf/, copie-os para esse local.

  8. (Opcional) Durante o período de sincronização do ambiente, os agentes não aceitarão operações de projeto de integração para processamento. Você pode minimizar o impacto desse tempo de inatividade com uma abordagem de atualização contínua.

    Para fazer isso, abra o arquivo jitterbit-agent-config.properties para edição e adicione ou defina a propriedade agent.starting.standby=true. (Isso mantém o agente no status Iniciando e impede que ele processe operações até que o valor da propriedade seja definido como false.)

  9. Reinicie o agente:

    Como root
    jitterbit restart
    
    Como root
    jitterbit restart
    
    Como jitterbit
    jitterbit restart
    
  10. (Opcional) Se você estiver fazendo uma atualização contínua com o valor da propriedade agent.starting.standby=true, e antes de atualizar outro agente no mesmo grupo, monitore o arquivo de log do agente para a seguinte mensagem:

    Sincronização do agente para o ambiente <123456> e ID do grupo de agentes <987654> concluída em ...
    

    Essa mensagem indica que o agente completou a sincronização do ambiente. Quando ela aparecer, edite jitterbit-agent-config.properties novamente, delete a propriedade agent.starting.standby (ou defina como false), e então reinicie o agente.

Desinstalar

Para desinstalar um agente privado no Linux, siga estas etapas:

  1. Parar o agente.

  2. (Opcional) Faça cópias de backup dos seguintes arquivos:

    Localização Arquivo
    /opt/jitterbit/ jitterbit.conf
    /opt/jitterbit/ JdbcDrivers.conf
    /opt/jitterbit/Resources/ jitterbit-agent-config.properties
    /opt/jitterbit/apache/conf/ httpd.conf
    /opt/jitterbit/apache/conf/ *.crt
    /opt/jitterbit/apache/conf/ *.key
    /opt/jitterbit/apache/conf/extra/ *.conf
    /opt/jitterbit/jre/lib/security/ cacerts
  3. Para remover os arquivos de instalação (incluindo PostgreSQL e seu diretório de dados), o arquivo de inicialização do serviço e a conta de usuário jitterbit, execute estes comandos:

    Como root
    apt-get remove --autoremove jitterbit-agent
    userdel --remove --force jitterbit
    
    Como root
    yum remove jitterbit-agent
    userdel --remove --force jitterbit
    
    Como um usuário não-root diferente de 'jitterbit'
    sudo userdel --remove --force jitterbit
    

Gerenciar

Você pode iniciar, parar e mostrar o status de um agente privado com o comando jitterbit. Você também pode usar o Console de Gerenciamento para parar um agente remotamente, mas só pode reiniciá-lo novamente em um terminal no host. Exceto para instalações não-root, você também pode reiniciar o agente reiniciando o host.

Nota

Agentes iniciados com registro automático podem se desregistrar automaticamente quando parados.

Iniciar

Agentes privados instalados a partir de um arquivo de pacote .deb ou .rpm iniciam automaticamente com o host. Para instalações não-root de arquivos .tar, você deve adicionar um script de sistema para iniciar o agente ou iniciá-lo manualmente.

Nota

Pode levar vários minutos para um agente privado completar a sincronização e estar em status de execução.

Para iniciar um agente privado no Linux, execute este comando:

Como root
jitterbit start
Como root
jitterbit start
Como jitterbit
jitterbit start

Parar

Existem três maneiras de parar um agente privado, cada uma com diferenças na forma como as operações em execução são tratadas:

  • Pausa de drenagem: o agente rejeita novas operações e permite que as operações em execução continuem até a conclusão.

  • Parada de drenagem: o agente rejeita novas operações e permite que as operações em execução continuem até a conclusão por um período definido pelo parâmetro agent.drainstop.api.wait (por padrão, 180 segundos).

  • Parada forçada: o agente rejeita novas operações e termina operações em execução.

    Cuidado

    Parar forçadamente um agente privado pode resultar em perda de dados.

Pausa de drenagem

Para pausar a drenagem de um agente privado no Linux, execute o seguinte comando:

Como root
jitterbit-utils --drain-pause
Como root
jitterbit-utils --drain-pause
Como jitterbit
jitterbit-utils --drain-pause

No Console de Gerenciamento, o status é exibido como Parando.

Para retomar um agente pausado no Linux, use o comando Iniciar.

Parada de drenagem

Para parar a drenagem de um agente privado no Linux, use uma das seguintes opções:

  • No menu do Portal Harmony, selecione Console de Gerenciamento > Agentes. Na coluna Ação do agente a ser parado, selecione Ação > Parada de Drenagem, e clique em OK na caixa de diálogo de confirmação.

  • Execute o seguinte comando:

    Como root
    jitterbit-utils --drain-stop
    
    Como root
    jitterbit-utils --drain-stop
    
    Como jitterbit
    jitterbit-utils --drain-stop
    

Parada forçada

Para parar forçadamente um agente privado no Linux, execute este comando:

Como root
jitterbit stop
Como root
jitterbit stop
Como jitterbit
jitterbit stop

Warning

Parar forçadamente um agente privado pode resultar em perda de dados.

Status

Para ver o status do agente, use uma das seguintes opções:

  • No menu do Portal Harmony, selecione Console de Gerenciamento > Agentes.

  • Execute este comando:

    Como root
    jitterbit status
    
    Como root
    jitterbit status
    
    Como jitterbit
    jitterbit status
    

Solução de Problemas

Estas seções na página de Solução de Problemas podem ajudar ao solucionar instalações de agentes privados no Linux: