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:
-
Atenda aos pré-requisitos.
-
Baixe um pacote de instalação do agente privado.
-
Execute o instalador do agente privado.
-
Configure e inicie o agente privado.
Pré-requisitos
Você deve ter o seguinte:
-
Um host que atenda aos requisitos do sistema.
-
O nome da sua organização Harmony, e o nome de usuário e a senha da conta Harmony.
-
O nome e o ID de um grupo de agentes privados.
-
Uma conta com privilégios de root.
Os seguintes itens são opcionais:
-
Adicionar um agente no Console de Gerenciamento. Se você não tiver nenhum agente privado não registrado 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, seu número de porta e os detalhes da conta do administrador do banco de dados.
Os seguintes itens são recomendados:
- Leia e aplique os conselhos no guia de configuração de ajuste de desempenho.
Baixar
Para baixar o software do agente privado, acesse 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 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.
Installer
Execute os seguintes comandos para o tipo de instalador baixado:
dpkg --install <PATH>/jitterbit-agent_<VERSION>_amd64.deb
update-alternatives --install /usr/bin/python python /usr/bin/python2 1
yum install <PATH>/jitterbit-agent-<VERSION>.x86_64.rpm
-
Faça login como um usuário não-root com privilégios sudo.
-
Instale os pacotes necessários:
sudo dnf install -y unzipNota
Isso pode já estar instalado em seu sistema, dependendo de como foi configurado.
-
Crie o usuário
jitterbit:Como usuário não-rootsudo useradd --user-group jitterbit --base-dir /opt --groups wheel sudo passwd jitterbit -
Saia do shell do usuário não-root.
-
Faça login como
jitterbit. -
Crie um arquivo de serviço
systemdpara o usuário:Como jitterbitmkdir -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 -
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 jitterbitsystemctl --user daemon-reload systemctl --user enable jitterbit.service loginctl enable-linger -
Configure o ambiente do shell:
Como jitterbitmkdir -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 -
(Opcional) Verifique o ambiente:
Como jitterbitenv | grep jitterbitA 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/jitterbitImportante
Os valores destacados são importantes, especialmente
JITTERBIT_HOME, que deve sempre ser/opt/jitterbit. -
Descompacte o arquivo tar baixado:
Como jitterbittar -C /opt -xf <CAMINHO>/jitterbit-agent-<VERSÃO>.x86_64.tar<CAMINHO>: O caminho para o arquivo.tarbaixado, em um diretório com permissões de leitura para o usuáriojitterbit.
-
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:
-
Execute este comando:
Como rootjitterbit-configComo rootjitterbit-configComo jitterbitjitterbit-configNo 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]: -
(Opcional) Para permitir que o agente se comunique via um servidor proxy, adicione as opções necessárias.
-
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.
-
Execute este comando:
Como rootjitterbit restartComo rootjitterbit restartComo jitterbitjitterbit restart
Upgrade
As versões do agente privado usam versionamento semântico, expresso na forma X.Y, onde X é o número da versão principal e Y é o número da versão secundária. Existem dois tipos de upgrades:
-
Principal: Quando você atualiza de 10.x → 11.x, ou de 11.x → 12.x, isso é considerado um upgrade de versão principal. Nesses casos, você deve parar e reiniciar o agente e aguardar a sincronização completa dos ambientes ser concluída. Durante uma sincronização completa, o ambiente é bloqueado e não pode processar operações. Se os projetos no ambiente forem grandes, isso pode levar algum tempo.
-
Menor: Quando você atualiza de 10.x → 10.y, 11.x → 11.y, ou 12.x → 12.y, é uma atualização de versão menor. Nesses casos, você só precisa parar e reiniciar o agente.
Atualizações de
.debe.rpmde 11.48 e anteriores para 11.49+ incluem atualizações de conector necessáriasAtualizações de agentes privados 11.48 e anteriores para 11.49 e posteriores incluem uma atualização necessária para Connector SDK-baseados conectores.
Você será solicitado a aceitar isso durante o processo de atualização. Atualizações feitas com
silent_installdefinido e instalações não-root do Redhat aceitam automaticamente este pré-requisito.
Atualizações de 11.x para 12.x
Atualizações de plugins são necessárias para usar os plugins Multipart Pipeline ou AWS S3 Create em agentes 12.x. Conectores personalizados do Connector SDK também podem precisar de atualizações.
Atualizações de plugins para agentes privados 12.x
Se você usar qualquer um dos seguintes plugins, deve substituir quaisquer usos existentes dos plugins incompatíveis pelas novas versões necessárias para 12.x, ou as operações que utilizam esses plugins começarão a falhar quando você atualizar o agente:
| Nome do plugin | Versões incompatíveis | Versão necessária |
|---|---|---|
| Jitterbit Multipart Pipeline Plugin (obsoleto) | 1.0.9.0 1.0.8.0 |
1.0.10.0 |
| Jitterbit AWS S3 Create (obsoleto) | 1.0.1.0 1.0.0.0 |
1.0.2.0 |
As versões de plugin necessárias são compatíveis com agentes 11.x, portanto, você pode atualizar os plugins antes da atualização do agente. Para atualizar um plugin, siga estas etapas:
- Associe a nova versão do plugin ao grupo de agentes privados na página Personalizações > Plugins do Console de Gerenciamento.
- Desassocie o plugin incompatível da atividade em seus projetos do Studio ou Design Studio.
- Atribua a nova versão compatível.
- Teste e implante a operação.
Verificação de conectores personalizados para agentes privados 12.x
Conectores personalizados criados por terceiros usando o Connector SDK podem precisar de alterações para serem compatíveis com agentes privados 12.x. É importante verificar a compatibilidade do conector personalizado antes de atualizar os agentes privados para 12.x.
Instruções de atualização
Para atualizar um agente privado no Linux, siga estas etapas:
-
Baixe um pacote de instalador.
-
Se o agente ainda estiver processando operações, pause o dreno.
Ou, se você tiver certeza de que nada está sendo executado no agente, pare o dreno.
-
Monitore o arquivo de log do agente. Continue quando todas as operações tiverem sido concluídas.
-
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 -
Execute o seguinte comando para o tipo de instalador baixado:
Como rootdpkg --install <PATH>/jitterbit-agent_<VERSION>_amd64.debComo rootyum upgrade <PATH>/jitterbit-agent-<VERSION>.x86_64.rpm
tar -C /opt -xf /<CAMINHO>/jitterbit-agent-<VERSÃO>.x86_64.tar
-
<CAMINHO>: O caminho para o arquivo.tarbaixado, em um diretório com permissões de leitura para o usuáriojitterbit. -
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 -
Se você tiver arquivos de backup
.crtou.keyque não estão em/opt/jitterbit/apache/conf/, copie-os para esse local. -
(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.
-
Reinicie o agente:
Como rootjitterbit restartComo rootjitterbit restartComo jitterbitjitterbit restart -
(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 ...
Esta 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 estes passos:
-
Pare o agente.
-
(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 -
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 rootapt-get remove --autoremove jitterbit-agent userdel --remove --force jitterbitComo rootyum remove jitterbit-agent userdel --remove --force jitterbitComo 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 jitterbit command. 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 de arquivos .tar não-root, é necessário adicionar um script de sistema para iniciar o agente ou iniciá-lo manualmente.
Nota
Pode levar vários minutos para que um agente privado complete a sincronização e esteja em status de execução.
Para iniciar um agente privado no Linux, execute este comando:
jitterbit start
jitterbit start
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), momento em que são marcadas como canceladas. Se as operações forem operações agendadas, elas são recriadas automaticamente em outro agente no grupo (no caso de múltiplos grupos de agentes), ou definidas para serem recriadas no agente quando ele retomar (no caso de grupos de agentes únicos). -
Parada forçada: o agente rejeita novas operações, termina as operações em execução e as marca como canceladas. Se as operações forem operações agendadas, elas são recriadas automaticamente em outro agente no grupo (no caso de múltiplos grupos de agentes), ou definidas para serem recriadas no agente quando ele retomar (no caso de grupos de agentes únicos).
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:
jitterbit-utils --drain-pause
jitterbit-utils --drain-pause
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 rootjitterbit-utils --drain-stopComo rootjitterbit-utils --drain-stopComo jitterbitjitterbit-utils --drain-stop
Parada forçada
Para forçar a parada de um agente privado no Linux, execute este comando:
jitterbit stop
jitterbit stop
jitterbit stop
Aviso
Forçar a parada de 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 rootjitterbit statusComo rootjitterbit statusAs jitterbitjitterbit status
Solucionar Problemas
Essas seções na página de Solução de Problemas podem ajudar ao solucionar instalações de agentes privados no Linux: