agent

Visão geral

O Zabbix agent é implantado em um alvo de monitoramento para monitorar ativamente recursos e aplicativos locais (discos rígidos, memória, estatísticas do processador etc.).

O agent coleta informações operacionais localmente e envia os dados ao Zabbix server para processamento posterior. Em caso de falhas (como um disco rígido ficando cheio ou um processo de serviço travado), o Zabbix server pode alertar ativamente os administradores da máquina específica que relatou a falha.

Os Zabbix agents são altamente eficientes devido ao uso de chamadas nativas do sistema para coletar informações estatísticas.

É possível executar várias instâncias do agent em um host.

Veja também:

Verificações passivas e ativas

Os agents do Zabbix podem executar verificações passivas e ativas:

  • Verificações passivas - o agent do Zabbix responde a uma solicitação do Zabbix server (ou proxy). Por exemplo, o server solicita dados (por exemplo, uso de CPU), e o agent retorna o resultado.
  • Verificações ativas - o agent do Zabbix coleta e envia dados sem aguardar uma solicitação do Zabbix server (ou proxy). Primeiro, ele recupera uma lista de itens de monitoramento do server (uso de CPU, memória disponível etc.), depois coleta os dados necessários e envia periodicamente novos valores de volta para ele.

O tipo de verificação do agent é configurado selecionando o respectivo item type de monitoramento. O agent do Zabbix processa itens do tipo Zabbix agent ou Zabbix agent (active).

Plataformas suportadas

Para as plataformas suportadas, consulte a página Requisitos.

Agent em sistemas Unix-like

O Zabbix agent em sistemas Unix-like é executado no host monitorado.

Instalação

O agent Zabbix pode ser instalado em sistemas baseados em Linux usando um dos seguintes métodos:

  • Pacotes Zabbix - selecione o componente Agent (após selecionar sua versão do Zabbix, distribuição do SO e versão do SO) e siga as instruções fornecidas.
  • Fontes Zabbix - baixe os arquivos fonte e compile o agent Zabbix configurando as fontes com a opção --enable-agent.

Em geral, agents Zabbix de 32 bits funcionarão em sistemas de 64 bits, mas podem falhar em alguns casos.

Binários pré-compilados do agent Zabbix estão disponíveis para download para macOS, IBM AIX, FreeBSD, OpenBSD e Solaris. Binários legados, compatíveis com a versão atual do server/proxy Zabbix, estão disponíveis para NetBSD e HP-UX.

Se instalado como pacote

O agent do Zabbix é executado como um processo daemon. O agent pode ser iniciado executando:

systemctl start zabbix-agent

Isso funcionará na maioria dos sistemas GNU/Linux. Em outros sistemas, pode ser necessário executar:

/etc/init.d/zabbix-agent start

Para parar, reiniciar ou verificar o status do agent do Zabbix, use os seguintes comandos:

systemctl stop zabbix-agent
systemctl restart zabbix-agent
systemctl status zabbix-agent
Iniciar manualmente

Você pode iniciar o agent do Zabbix localizando o binário zabbix_agentd e executando-o diretamente; por exemplo:

zabbix_agentd

Agent em sistemas Windows

O agent do Zabbix no Windows é executado como um serviço do Windows.

Instalação

O Zabbix agent pode ser instalado no Windows usando um dos seguintes métodos:

Consulte a página Zabbix agent no Microsoft Windows para obter detalhes adicionais sobre a instalação do Zabbix agent (a partir de um arquivo ZIP) como um serviço do Windows.

Opções

Os seguintes parâmetros de linha de comando podem ser usados com o Zabbix agent:

Parâmetro Descrição
agent UNIX e Windows
-c --config <config-file> Caminho para o arquivo de configuração.
Você pode usar esta opção para especificar um arquivo de configuração diferente do arquivo padrão.
-f --foreground Executa o Zabbix agent em primeiro plano (padrão: true).
-p --print Exibe os items conhecidos e encerra.
Observe que, para retornar também os resultados de parâmetros de usuário, você deve especificar o arquivo de configuração (se ele não estiver no local padrão).
-t --test <item key> Testa o item especificado e encerra.
Observe que, para retornar também os resultados de parâmetros de usuário, você deve especificar o arquivo de configuração (se ele não estiver no local padrão).
-T --test-config Valida o arquivo de configuração e encerra.
-h --help Exibe informações de ajuda.
-V --version Exibe o número da versão.
Somente agent UNIX
-R --runtime-control <option> Executa funções administrativas. Consulte controle em tempo de execução.
Somente agent Windows
-m --multiple-agents Usa várias instâncias do agent (com as opções -i, -d, -s, -x).
Para distinguir os nomes dos serviços das instâncias, cada nome de serviço incluirá o valor de Hostname do arquivo de configuração especificado.
-S --startup-type <value> Define o tipo de inicialização do serviço do Zabbix Windows agent. Valores permitidos:
automatic - (padrão) inicia o serviço automaticamente na inicialização do Windows;
delayed - atrasa a inicialização do serviço até que os serviços iniciados automaticamente tenham concluído a inicialização (disponível no Windows Server 2008/Vista e versões posteriores);
manual - inicia o serviço manualmente (por um usuário ou aplicativo);
disabled - desabilita o serviço, impedindo que ele seja iniciado por um usuário ou aplicativo.
Você pode usar esta opção junto com a opção -i ou separadamente para modificar o tipo de inicialização de um serviço já instalado.
-i --install Instala o Zabbix Windows agent como serviço.
-d --uninstall Desinstala o serviço do Zabbix Windows agent.
-s --start Inicia o serviço do Zabbix Windows agent.
-x --stop Interrompe o serviço do Zabbix Windows agent.

Exemplos específicos de uso dos parâmetros de linha de comando:

  • Exibir todos os items integrados do agent com seus valores.
  • Testar um parâmetro de usuário com a chave mysql.ping definida no arquivo de configuração especificado.
  • Instalar um serviço do Zabbix Agent para Windows usando o caminho padrão para o arquivo de configuração.
  • Instalar um serviço do Zabbix Agent [Hostname] para Windows usando o arquivo de configuração localizado na mesma pasta que o executável do agent e tornar o nome do serviço exclusivo, estendendo-o com o valor de Hostname do arquivo de configuração.
  • Modificar o tipo de inicialização de um serviço do Zabbix Agent para Windows instalado usando o arquivo de configuração localizado na mesma pasta que o executável do agent.
zabbix_agentd --print
zabbix_agentd -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agentd.exe -i
zabbix_agentd.exe -i -m -c zabbix_agentd.conf
zabbix_agentd.exe -c zabbix_agentd.conf -S delayed
Controle em tempo de execução

Com as opções de controle em tempo de execução, você pode alterar o nível de log dos processos do agent.

Opção Descrição Destino
log_level_increase[=<target>] Aumenta o nível de log.
Se o destino não for especificado, todos os processos serão afetados.
O destino pode ser especificado como:
tipo de processo - todos os processos do tipo especificado (por exemplo, listener)
Consulte todos os tipos de processo do agent.
tipo de processo,N - tipo e número do processo (por exemplo, listener,3)
pid - identificador do processo (1 a 65535). Para valores maiores, especifique o destino como 'tipo de processo,N'.
log_level_decrease[=<target>] Diminui o nível de log.
Se o destino não for especificado, todos os processos serão afetados.
userparameter_reload Recarrega os valores das opções UserParameter e Include do arquivo de configuração atual.

Exemplos:

  • Aumentar o nível de log de todos os processos
  • Aumentar o nível de log do terceiro processo listener
  • Aumentar o nível de log do processo com PID 1234
  • Diminuir o nível de log de todos os processos de verificação ativa
zabbix_agentd -R log_level_increase
zabbix_agentd -R log_level_increase=listener,3
zabbix_agentd -R log_level_increase=1234
zabbix_agentd -R log_level_decrease="active checks"

O controle em tempo de execução não é compatível com OpenBSD, NetBSD e Windows.

Tipos de processo do agent

Os tipos de processo do agent são os seguintes:

  • active checks - processo para executar verificações ativas;
  • collector - processo para coleta de dados;
  • listener - processo para escutar verificações passivas.

O arquivo de log do agent pode ser usado para observar esses tipos de processo.

O arquivo de log do agent é criado com permissões de leitura e gravação apenas para o proprietário do arquivo. Além disso, o arquivo pode ser lido pelo grupo do proprietário. Todas as outras permissões são negadas.

Executar como usuário

O Zabbix agent no UNIX foi projetado para ser executado como um usuário não root. Ele será executado com o usuário não root que o iniciou. Portanto, você pode executar o agent como qualquer usuário não root sem problemas.

Se você tentar executá-lo como 'root', ele mudará para o usuário 'zabbix', definido no código, que deve estar presente no seu sistema. Você só poderá executar o agent como 'root' se modificar o parâmetro AllowRoot no arquivo de configuração do agent adequadamente.

Arquivo de configuração

O caminho padrão para o arquivo de configuração depende do sistema operacional e do método de instalação do Zabbix:

  • No UNIX, o padrão é:
    • Para instalação a partir do código-fonte: /usr/local/etc/zabbix_agentd.conf, ou conforme definido pelas variáveis de compilação --sysconfdir ou --prefix.
    • Para instalação a partir de pacotes e do appliance: /etc/zabbix/zabbix_agentd.conf.
  • No Windows, o padrão é C:\Program Files\Zabbix Agent\zabbix_agentd.conf.

Se uma única instância do agent estiver em execução em um host, ela poderá usar o arquivo de configuração padrão ou um arquivo de configuração especificado na linha de comando. No caso de várias instâncias, cada instância do agent deverá ter seu próprio arquivo de configuração (uma das instâncias poderá usar o arquivo de configuração padrão).

Para obter detalhes sobre a configuração do Zabbix agent, consulte as opções do arquivo de configuração do Zabbix agent para Unix ou do Zabbix agent para Windows.

Localidade

Observe que o agent requer uma localidade UTF-8 para que alguns itens textuais do agent possam retornar o conteúdo esperado. A maioria dos sistemas Unix-like modernos tem uma localidade UTF-8 como padrão; no entanto, há alguns sistemas em que isso pode precisar ser definido especificamente.

Código de saída

O Zabbix agent retorna 0 em caso de saída bem-sucedida e 1 em caso de falha.