Você está visualizando a documentação da versão de desenvolvimento, que pode estar incompleta.
Esta página foi traduzida automaticamente. Se você notar um erro, selecione-o e pressione Ctrl+Enter para reportá-lo aos editores.

3 Agent 2

Visão geral

O agent 2 do Zabbix é uma nova geração do agent do Zabbix, escrito em Go (com algum código C reutilizado do agent do Zabbix). Ele foi projetado para:

  • Reduzir o número de conexões TCP.
  • Fornecer melhor concorrência de verificações.
  • Ser facilmente extensível com plugins, que fornecem verificações simples com código mínimo e suportam verificações complexas consistindo em scripts de longa duração e coleta de dados independente com relatórios periódicos.
  • Funcionar como um substituto para o agent do Zabbix, suportando todos os recursos anteriores.
Checagens passivas e ativas

O agent Zabbix 2 suporta checagens passivas e ativas, assim como o agent Zabbix. Além disso, as checagens ativas do agent Zabbix 2 suportam intervalos flexíveis/agendados e concorrência de checagens dentro de um único server ativo.

Por padrão, após uma reinicialização, o agent Zabbix 2 agendará a primeira coleta de dados para checagens ativas em um tempo condicionalmente aleatório dentro do intervalo de atualização do item para evitar picos no uso de recursos. Para executar checagens ativas que não possuem Agendamento intervalo de atualização imediatamente após a reinicialização do agent, defina o parâmetro ForceActiveChecksOnStart (nível global) ou Plugins.<Plugin name>.System.ForceActiveChecksOnStart (afeta apenas checagens de plugin específicas) no arquivo de configuração. O parâmetro em nível de plugin, se definido, substituirá o parâmetro global.

Verificação de concorrência

As verificações de diferentes plugins podem ser executadas simultaneamente. O número de verificações simultâneas dentro de um plugin é limitado pela configuração de capacidade do plugin. Cada plugin pode ter uma configuração de capacidade codificada (1000 por padrão) que pode ser reduzida usando a configuração Plugins.<PluginName>.System.Capacity=N no parâmetro de configuração Plugins.

Plataformas suportadas

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

Agent 2 em sistemas UNIX-like

O agent 2 do Zabbix em sistemas UNIX-like é executado no host que está sendo monitorado.

Instalação

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

  • Pacotes Zabbix - selecione o componente Agent 2 (após selecionar sua versão do Zabbix, distribuição do SO e versão do SO) e siga as instruções fornecidas.
  • Fontes do Zabbix - baixe os arquivos fonte e compile o agent Zabbix configurando as fontes com a opção --enable-agent2. Observe que um ambiente Go configurado com uma versão Go suportada é necessário para compilar o agent Zabbix 2.
Se instalado como pacote

O Zabbix agent 2 é executado como um processo em primeiro plano e depende de um gerenciador de serviços externo (por exemplo, systemd) para execução em segundo plano; O Zabbix agent 2 não possui suporte interno à execução como daemon no Linux.

O agent pode ser iniciado executando:

systemctl start zabbix-agent2

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

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

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

zabbix_agent2

Agent 2 em sistemas Windows

O agent 2 do Zabbix é executado como um processo independente; no entanto, também pode ser executado como um serviço do Windows.

Instalação

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

As capacidades de monitoramento do agent Zabbix 2 podem ser estendidas com plugins. Enquanto os plugins embutidos estão disponíveis por padrão, plugins carregáveis no Windows devem ser instalados separadamente. Para mais informações, consulte Plugins carregáveis.

Consulte a página Agent Zabbix no Microsoft Windows para detalhes adicionais sobre como instalar o agent Zabbix 2 (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 2:

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 que não seja o padrão.
No UNIX, o padrão é /usr/local/etc/zabbix_agent2.conf ou conforme definido pelas variáveis de tempo de compilação --sysconfdir ou --prefix
No Windows, o padrão é C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf
-f --foreground Executa o Zabbix agent em primeiro plano (padrão: true).
-p --print Imprime os items conhecidos e sai.
Nota: Para retornar também os resultados de parâmetros de usuário, você deve especificar o arquivo de configuração (caso não esteja no local padrão).
-t --test <item key> Testa o item especificado e sai.
Nota: Para retornar também os resultados de parâmetros de usuário, você deve especificar o arquivo de configuração (caso não esteja no local padrão).
-T --test-config Valida o arquivo de configuração e sai.
-h --help Imprime informações de ajuda e sai.
-v --verbose Imprime informações de depuração. Use esta opção com as opções -p e -t.
-V --version Imprime a versão do agent e informações de licença.
-R --runtime-control <option> Executa funções administrativas. Veja controle em tempo de execução.
Somente agent Windows
-m --multiple-agents Usa múltiplas 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 Hostname do arquivo de configuração especificado.
-S --startup-type <value> Define o tipo de inicialização do serviço Zabbix agent para Windows. Valores permitidos:
automatic - (padrão) inicia o serviço automaticamente na inicialização do Windows;
delayed - atrasa o início do serviço após a conclusão da inicialização dos serviços iniciados automaticamente;
manual - inicia o serviço manualmente (por um usuário ou aplicativo);
disabled - desativa o serviço, para que não possa ser 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 agent para Windows como serviço.
-d --uninstall Desinstala o serviço Zabbix agent para Windows.
-s --start Inicia o serviço Zabbix agent para Windows.
-x --stop Para o serviço Zabbix agent para Windows.

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

  • imprime todos os items internos do agent com valores
  • testa um parâmetro de usuário com a chave "mysql.ping" definida no arquivo de configuração especificado
  • instala um serviço "Zabbix Agent" para Windows usando o caminho padrão para o arquivo de configuração C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf
  • modifica o tipo de inicialização de um serviço "Zabbix Agent" já instalado para Windows usando o arquivo de configuração zabbix_agent2.conf localizado na mesma pasta que o executável do agent
zabbix_agent2 --print
       zabbix_agent2 -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
       zabbix_agent2.exe -i
       zabbix_agent2.exe -c zabbix_agent2.conf -S delayed
Controle em tempo de execução

O controle em tempo de execução fornece algumas opções para controle remoto.

Opção Descrição
log_level_increase Aumenta o nível de log.
log_level_decrease Diminui o nível de log.
metrics Lista as métricas disponíveis.
version Exibe a versão do agent.
userparameter_reload Recarrega os valores das opções UserParameter e Include do arquivo de configuração atual.
help Exibe informações de ajuda sobre o controle em tempo de execução.

Exemplos:

  • aumentando o nível de log para o agent 2
  • imprimindo as opções de controle em tempo de execução
zabbix_agent2 -R log_level_increase
       zabbix_agent2 -R help

Arquivo de configuração

Os parâmetros de configuração do agent 2 são em sua maioria compatíveis com o agent do Zabbix, com algumas exceções.

Novos parâmetros Descrição
ControlSocket O caminho do socket de controle em tempo de execução. O agent 2 usa um socket de controle para comandos em tempo de execução.
EnablePersistentBuffer,
PersistentBufferFile,
PersistentBufferPeriod
Esses parâmetros são usados para configurar o armazenamento persistente no agent 2 para itens ativos.
ForceActiveChecksOnStart Determina se o agent deve realizar verificações ativas imediatamente após a reinicialização ou distribuí-las uniformemente ao longo do tempo.
Plugins Plugins podem ter seus próprios parâmetros, no formato Plugins.<Nome do Plugin>.<Parâmetro>=<valor>. Um parâmetro comum de plugin é System.Capacity, que define o limite de verificações que podem ser executadas ao mesmo tempo.
StatusPort A porta em que o agent 2 ficará ouvindo para solicitações de status HTTP e exibição de uma lista de plugins configurados e alguns parâmetros internos
Parâmetros removidos Descrição
AllowRoot, User Não suportado porque a execução como daemon não é suportada.
LoadModule, LoadModulePath Módulos carregáveis não são suportados.
StartAgents Este parâmetro era usado no agent do Zabbix para aumentar a concorrência de verificações passivas ou desativá-las. No Agent 2, a concorrência é configurada no nível do plugin e pode ser limitada por uma configuração de capacidade. Já a desativação de verificações passivas não é suportada atualmente.
HostInterface, HostInterfaceItem Ainda não suportado.

Para mais detalhes, consulte as opções do arquivo de configuração para zabbix_agent2.

Códigos de saída

O agent Zabbix 2 também pode ser compilado com versões mais antigas do OpenSSL (1.0.1, 1.0.2).

Neste caso, o Zabbix fornece mutexes para bloqueio no OpenSSL. Se um bloqueio de mutex ou desbloqueio falhar, uma mensagem de erro é impressa no fluxo de erro padrão (STDERR) e o Agent 2 sai com o código de retorno 2 ou 3, respectivamente.