O agent 2 do Zabbix é uma nova geração do agent do Zabbix e pode ser usado no lugar do agent do Zabbix.
Os parâmetros suportados pelo arquivo de configuração do agent 2 do Zabbix (zabbix_agent2.conf) estão listados nesta seção.
Os parâmetros são listados sem informações adicionais. Clique no parâmetro para ver os detalhes completos.
| Parâmetro | Descrição |
|---|---|
| Alias | Define um alias para uma chave de item. |
| AllowKey | Permite a execução das chaves de item que correspondem a um padrão. |
| BufferSend | Não mantenha dados no buffer por mais de N segundos. |
| BufferSize | O número máximo de valores no buffer de memória. |
| ControlSocket | O socket de controle, usado para enviar comandos em tempo de execução com a opção '-R'. |
| DebugLevel | O nível de debug. |
| DenyKey | Nega a execução das chaves de item que correspondem a um padrão. |
| EnablePersistentBuffer | Habilita o uso de armazenamento persistente local para itens ativos. |
| ForceActiveChecksOnStart | Executa verificações ativas imediatamente após a reinicialização para a primeira configuração recebida. |
| HeartbeatFrequency | A frequência das mensagens de heartbeat em segundos. |
| HostInterface | Um parâmetro opcional que define a interface do host. |
| HostInterfaceItem | Um parâmetro opcional que define um item usado para obter a interface do host. |
| HostMetadata | Um parâmetro opcional que define os metadados do host. |
| HostMetadataItem | Um parâmetro opcional que define um item do agent do Zabbix usado para obter os metadados do host. |
| Hostname | Um parâmetro opcional que define o nome do host. |
| HostnameItem | Um parâmetro opcional que define um item do agent do Zabbix usado para obter o nome do host. |
| Include | Você pode incluir arquivos individuais ou todos os arquivos em um diretório no arquivo de configuração. |
| ListenIP | Uma lista de endereços IP separados por vírgula nos quais o agent deve escutar. |
| ListenPort | O agent irá escutar neste porto por conexões do server. |
| LogFile | O nome do arquivo de log. |
| LogFileSize | O tamanho máximo do arquivo de log. |
| LogType | O tipo de saída do log. |
| PersistentBufferFile | O arquivo onde o agent 2 do Zabbix deve manter o banco de dados SQLite. |
| PersistentBufferPeriod | O período de tempo pelo qual os dados devem ser armazenados quando não houver conexão com o server ou proxy. |
| PidFile | O nome do arquivo PID. |
| Plugins.<PluginName>.System.Capacity | O limite de verificações por plugin que podem ser executadas ao mesmo tempo. |
| Plugins.Log.MaxLinesPerSecond | O número máximo de novas linhas que o agent enviará por segundo para o server ou proxy do Zabbix ao processar verificações ativas 'log' e 'logrt'. |
| Plugins.SystemRun.LogRemoteCommands | Habilita o registro dos comandos de shell executados como avisos. |
| PluginSocket | O caminho para o socket UNIX para comunicações de plugin carregáveis. |
| PluginTimeout | O tempo limite para conexões com plugins carregáveis, em segundos. |
| RefreshActiveChecks | Com que frequência a lista de verificações ativas é atualizada. |
| Server | Uma lista de endereços IP separados por vírgula, opcionalmente na notação CIDR, ou nomes DNS de servers e proxies do Zabbix. |
| ServerActive | O endereço do server/proxy do Zabbix ou configuração de cluster para obter verificações ativas. |
| SourceIP | O endereço IP de origem. |
| StatusPort | Se definido, o agent irá escutar neste porto por solicitações de status HTTP (http://localhost:<port>/status). |
| Timeout | Especifica quanto tempo esperar (em segundos) para estabelecer conexão e trocar dados com o proxy ou server do Zabbix. |
| TLSAccept | Quais conexões de entrada aceitar. |
| TLSCAFile | O caminho completo de um arquivo contendo os certificados da(s) CA(s) de nível superior para verificação do certificado do par, usado para comunicações criptografadas entre componentes do Zabbix. |
| TLSCertFile | O caminho completo de um arquivo contendo o certificado do agent ou cadeia de certificados, usado para comunicações criptografadas entre componentes do Zabbix. |
| TLSCipherAll | A string de cifra do OpenSSL (TLS 1.2). Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado e PSK. |
| TLSCipherAll13 | A string de cifra do OpenSSL (TLS 1.3) para OpenSSL 1.1.1 ou mais recente. Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado e PSK. |
| TLSCipherCert | A string de cifra do OpenSSL (TLS 1.2). Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado. |
| TLSCipherCert13 | A string de cifra do OpenSSL (TLS 1.3) para OpenSSL 1.1.1 ou mais recente. Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado. |
| TLSCipherPSK | A string de cifra do OpenSSL (TLS 1.2). Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em PSK. |
| TLSCipherPSK13 | A string de cifra do OpenSSL (TLS 1.3) para OpenSSL 1.1.1 ou mais recente. Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em PSK. |
| TLSConnect | Como o agent deve se conectar ao server ou proxy do Zabbix. |
| TLSCRLFile | O caminho completo de um arquivo contendo certificados revogados. Este parâmetro é usado para comunicações criptografadas entre componentes do Zabbix. |
| TLSKeyFile | O caminho completo de um arquivo contendo a chave privada do agent, usado para comunicações criptografadas entre componentes do Zabbix. |
| TLSPSKFile | O caminho completo de um arquivo contendo a chave pré-compartilhada do agent, usado para comunicações criptografadas com o server do Zabbix. |
| TLSPSKIdentity | A string de identidade da chave pré-compartilhada, usada para comunicações criptografadas com o server do Zabbix. |
| TLSServerCertIssuer | O emissor do certificado do server (proxy) permitido. |
| TLSServerCertSubject | O assunto do certificado do server (proxy) permitido. |
| UnsafeUserParameters | Permite que todos os caracteres sejam passados em argumentos para parâmetros definidos pelo usuário. |
| UserParameter | Um parâmetro definido pelo usuário para monitorar. |
| UserParameterDir | O caminho de pesquisa padrão para comandos UserParameter. |
Todos os parâmetros são não obrigatórios, a menos que explicitamente declarado que o parâmetro é obrigatório.
Observe que:
Define um alias para uma chave de item. Pode ser usado para substituir uma chave de item longa e complexa por uma mais curta e simples.
Vários parâmetros Alias podem estar presentes. Não são permitidos vários parâmetros com a mesma chave Alias.
Chaves Alias diferentes podem referenciar a mesma chave de item.
Aliases podem ser usados em HostMetadataItem, mas não no parâmetro HostnameItem.
Exemplo 1: Recuperando o ID do usuário 'zabbix'.
Agora a chave abreviada zabbix.userid pode ser usada para recuperar dados.
Exemplo 2: Obtendo a utilização da CPU com parâmetros padrão e personalizados.
Isso permite usar a chave cpu.util para obter a porcentagem de utilização da CPU com parâmetros padrão, bem como usar cpu.util[all, idle, avg15] para obter dados específicos sobre a utilização da CPU.
Exemplo 3: Executando várias regras de descoberta de baixo nível processando os mesmos itens de descoberta.
Agora é possível configurar várias regras de descoberta usando vfs.fs.discovery com parâmetros diferentes para cada regra, por exemplo, vfs.fs.discovery[foo], vfs.fs.discovery[bar], etc.
Permite a execução das chaves de item que correspondam a um padrão. O padrão de chave é uma expressão curinga que suporta o caractere "*" para corresponder a qualquer número de quaisquer caracteres.
Múltiplas regras de correspondência de chave podem ser definidas em combinação com DenyKey. Os parâmetros são processados um por um de acordo com sua ordem de aparição. Veja também: Restringindo verificações do agent.
O intervalo de tempo em segundos que determina com que frequência os valores são enviados do buffer para o Zabbix server. Observe que, se o buffer estiver cheio, os dados serão enviados antes.
Padrão: 5
Intervalo: 1-3600
O número máximo de valores no buffer de memória. O agent enviará todos os dados coletados para o Zabbix server ou proxy se o buffer estiver cheio. Este parâmetro só deve ser usado se o buffer persistente estiver desabilitado (EnablePersistentBuffer=0).
Padrão: 1000
Intervalo: 2-65535
O socket de controle, usado para enviar comandos em tempo de execução com a opção '-R'.
Padrão: /tmp/agent.sock
Especifica o nível de debug:
0 - informações básicas sobre o início e a parada dos processos do Zabbix
1 - informações críticas;
2 - informações de erro;
3 - avisos;
4 - para depuração (gera muitas informações);
5 - depuração estendida (gera ainda mais informações).
Padrão: 3
Intervalo: 0-5
Nega a execução das keys de item que correspondam a um padrão. O padrão da key é uma expressão curinga que suporta o caractere "*" para corresponder a qualquer número de caracteres.
Várias regras de correspondência de key podem ser definidas em combinação com AllowKey. Os parâmetros são processados um a um de acordo com a ordem de aparição. Veja também: Restringindo verificações do agent.
Habilita o uso de armazenamento persistente local para items ativos. Se o armazenamento persistente estiver desabilitado, o buffer de memória será usado.
Padrão: 0
Valores: 0 - desabilitado, 1 - habilitado
Executa verificações ativas imediatamente após a reinicialização para a primeira configuração recebida. Também disponível como um parâmetro de configuração por plugin, por exemplo: Plugins.Uptime.System.ForceActiveChecksOnStart=1
Padrão: 0
Valores: 0 - desabilitado, 1 - habilitado
A frequência das mensagens de heartbeat em segundos. Usado para monitorar a disponibilidade de verificações ativas.
0 - mensagens de heartbeat desabilitadas.
Padrão: 60
Intervalo: 0-3600
Um parâmetro opcional que define a interface do host (endereço IP ou nome DNS) usada durante o processo de autoregistro do host. Esse valor será usado para preencher a interface no host recém-criado e permite configurar explicitamente o endereço IP ou DNS. Para mais detalhes, consulte Usando DNS como interface padrão.
Se não for definido, o valor será obtido de HostInterfaceItem.
O agent emitirá um erro e não iniciará se o valor ultrapassar o limite de 255 caracteres.
Intervalo: 0-255 caracteres
Um parâmetro opcional que define um item usado para determinar a interface do host (endereço IP ou nome DNS) durante o processo de autoregistro do host. Este valor é usado apenas se HostInterface não estiver definido. Para mais detalhes, consulte Usando DNS como interface padrão.
Durante uma solicitação de autoregistro, o agent registrará uma mensagem de aviso se o valor retornado pelo item especificado exceder o limite de 255 caracteres.
O item system.run[] é suportado independentemente das configurações AllowKey/DenyKey.
Um parâmetro opcional que define os metadados usados para identificar ou distinguir o host durante o processo de autoregistro do host. HostMetadata permite distinguir entre hosts além do hostname.
Se não for definido, o valor será adquirido de HostMetadataItem.
O agent emitirá um erro e não iniciará se o valor especificado ultrapassar o limite de 2034 bytes ou for uma string não UTF-8. Quando um parâmetro espera um endereço IP ou nome DNS, valores que são UTF-8 válidos, mas não são IPs ou nomes DNS válidos, também serão rejeitados e relatados como inválidos.
Intervalo: 0-2034 bytes
Um parâmetro opcional que define um item do agent Zabbix usado para obter os metadados do host. Esta opção só é usada quando HostMetadata não está definido.
O valor de HostMetadataItem é obtido em cada tentativa de autoregistro e é usado apenas no processo de autoregistro do host. HostMetadataItem permite distinguir entre hosts além do nome do host.
Parâmetros de usuário e aliases são suportados. O item system.run[] é suportado independentemente das configurações AllowKey/DenyKey.
Durante uma solicitação de autoregistro, o agent registrará uma mensagem de aviso se o valor retornado pelo item especificado ultrapassar o limite de 65535 pontos de código UTF-8. O valor retornado pelo item deve ser uma string UTF-8, caso contrário, será ignorado. Quando um parâmetro espera um endereço IP ou nome DNS, valores que são UTF-8 válidos, mas não são IPs ou nomes DNS válidos, também serão rejeitados e relatados como inválidos.
Uma lista de nomes de host exclusivos, sensíveis a maiúsculas e minúsculas, separados por vírgulas. Obrigatório para verificações ativas e deve corresponder aos nomes de host configurados no server. O valor é obtido de HostnameItem se não for definido.
Caracteres permitidos: alfanuméricos, '.', ' ', '_' e '-'. Comprimento máximo: 128 caracteres por nome de host, 2048 caracteres para toda a linha.
Padrão: Definido por HostnameItem
Um parâmetro opcional que define um item usado para obter o nome do host. Esta opção só é usada quando Hostname não está definido. Parâmetros de usuário ou aliases não são suportados, mas o item system.run[] é suportado independentemente dos valores AllowKey/DenyKey.
Padrão: system.hostname
Você pode incluir arquivos individuais ou todos os arquivos em um diretório no arquivo de configuração. Durante a instalação, o Zabbix criará o diretório de inclusão em /usr/local/etc, a menos que seja modificado durante o tempo de compilação. O caminho pode ser relativo à localização do arquivo zabbix_agent2.conf.
Para incluir apenas arquivos relevantes no diretório especificado, o caractere curinga asterisco é suportado para correspondência de padrões.
Veja notas especiais sobre limitações.
Exemplo:
Uma lista de endereços IP separados por vírgula nos quais o agent deve escutar. O primeiro endereço IP é enviado ao Zabbix server, se conectando a ele, para recuperar a lista de verificações ativas.
Padrão: 0.0.0.0
O agent irá escutar nesta porta por conexões do server.
Padrão: 10050
Intervalo: 1024-32767
O nome do arquivo de log.
Padrão: /tmp/zabbix_agent2.log
Obrigatório: Sim, se LogType estiver definido como file; caso contrário, não
O tamanho máximo de um arquivo de log em MB.
0 - desabilita a rotação automática de log.
Nota: Se o limite de tamanho do arquivo de log for atingido e a rotação do arquivo falhar, por qualquer motivo, o arquivo de log existente é truncado e iniciado novamente.
Padrão: 1
Intervalo: 0-1024
O tipo de saída do log:
file - grava o log no arquivo especificado pelo parâmetro LogFile;
system - grava o log no syslog;
console - grava o log na saída padrão
Padrão: file
O arquivo onde o agent Zabbix 2 deve manter o banco de dados SQLite. Deve ser um nome de arquivo completo. Este parâmetro só é usado se o buffer persistente estiver habilitado (EnablePersistentBuffer=1).
O período de tempo pelo qual os dados devem ser armazenados quando não houver conexão com o server ou proxy. Os dados mais antigos serão perdidos. Os dados de log serão preservados. Este parâmetro só é usado se o buffer persistente estiver ativado (EnablePersistentBuffer=1).
Padrão: 1h
Intervalo: 1m-365d
O nome do arquivo PID.
Padrão: /tmp/zabbix_agent2.pid
O limite de verificações por plugin <PluginName> que podem ser executadas ao mesmo tempo.
Padrão: 1000 Intervalo: 1-1000
O número máximo de novas linhas que o agent enviará por segundo para o Zabbix server ou proxy ao processar verificações ativas 'log' e 'logrt'. O valor fornecido será substituído pelo parâmetro 'maxlines', fornecido na chave do item 'log' e 'logrt'.
Nota: O Zabbix processará 10 vezes mais novas linhas do que definido em MaxLinesPerSecond para buscar a string necessária nos itens de log.
Padrão: 20
Intervalo: 1-1000
Habilita o registro dos comandos shell executados como avisos. Os comandos serão registrados apenas se executados remotamente. Entradas de log não serão criadas se system.run[] for executado localmente pelos parâmetros HostMetadataItem, HostInterfaceItem ou HostnameItem.
Padrão: 0
Valores: 0 - desabilitado, 1 - habilitado
O caminho para o socket UNIX para comunicações de plugin carregáveis.
Padrão: /tmp/agent.plugin.sock
O tempo limite para conexões com plugins carregáveis, em segundos.
Padrão: Timeout
Intervalo: 1-30
Com que frequência a lista de verificações ativas é atualizada, em segundos. Observe que, após falhar ao atualizar as verificações ativas, a próxima atualização será tentada em 60 segundos.
Padrão: 5
Intervalo: 1-86400
Uma lista de endereços IP separados por vírgula, opcionalmente na notação CIDR, ou nomes DNS de servers ou proxies Zabbix. Conexões recebidas serão aceitas apenas dos hosts listados aqui. Se o suporte a IPv6 estiver habilitado, então '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' são tratados igualmente e '::/0' permitirá qualquer endereço IPv4 ou IPv6. '0.0.0.0/0' pode ser usado para permitir qualquer endereço IPv4. Espaços são permitidos. Se este parâmetro não for especificado, desabilita as verificações passivas e o agent não irá escutar em nenhuma porta TCP.
Exemplo:
O endereço do Zabbix server/proxy ou configuração de cluster para obter verificações ativas. O endereço do server/proxy é um endereço IP ou nome DNS e porta opcional separada por dois pontos.
A configuração de cluster é um ou mais endereços de server separados por ponto e vírgula. Vários Zabbix servers/clusters e Zabbix proxies podem ser especificados, separados por vírgula. Não deve ser especificado mais de um Zabbix proxy de cada Zabbix server/cluster. Se um Zabbix proxy for especificado, o Zabbix server/cluster para esse proxy não deve ser especificado.
Vários endereços separados por vírgula podem ser fornecidos para usar vários Zabbix servers independentes em paralelo. Espaços são permitidos.
Se a porta não for especificada, a porta padrão será usada.
Endereços IPv6 devem ser colocados entre colchetes se a porta para esse host for especificada. Se a porta não for especificada, os colchetes para endereços IPv6 são opcionais.
Se este parâmetro não for especificado, as verificações ativas serão desativadas.
Exemplo para Zabbix proxy:
Exemplo para múltiplos servers:
Exemplo para alta disponibilidade:
Exemplo para alta disponibilidade com dois clusters e um server:
ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domainO endereço IP de origem para:
Se definido, o agent irá escutar nesta porta por requisições de status HTTP (http://localhost:<port>/status).
Intervalo: 1024-32767
Especifica quanto tempo esperar (em segundos) para estabelecer conexão e trocar dados com o proxy ou server Zabbix.
Este parâmetro define a duração de várias operações, incluindo:
vfs.*;Padrão: 3
Intervalo: 1-30
As conexões de entrada a serem aceitas. Usado para verificações passivas. Vários valores podem ser especificados, separados por vírgula:
unencrypted - aceita conexões sem criptografia (padrão)
psk - aceita conexões com TLS e uma chave pré-compartilhada (PSK)
cert - aceita conexões com TLS e um certificado
Obrigatório: sim, se os parâmetros de certificado TLS ou PSK forem definidos (mesmo para conexão unencrypted); caso contrário, não
O caminho completo do arquivo contendo o(s) certificado(s) da(s) CA(s) de nível superior para verificação do certificado do par, usado para comunicações criptografadas entre os componentes do Zabbix.
O caminho completo do arquivo que contém o certificado do agent ou cadeia de certificados, usado para comunicações criptografadas com os componentes do Zabbix.
A string de cifra do OpenSSL (TLS 1.2). Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado e PSK.
Exemplo:
A string de cifra do OpenSSL (TLS 1.3) para OpenSSL 1.1.1 ou mais recente. Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado e PSK.
Exemplo:
A string de cifra do OpenSSL (TLS 1.2). Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado.
Exemplo:
Observe que este parâmetro não pode ser usado junto com TLSAccept=cert,psk; para conexão por certificado (TLSConnect=cert) use TLSCipherAll em vez disso.
A string de cifra do OpenSSL (TLS 1.3) para OpenSSL 1.1.1 ou mais recente. Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em certificado.
Observe que este parâmetro não pode ser usado junto com TLSAccept=cert,psk; para conexão por certificado (TLSConnect=cert) use TLSCipherAll13.
A string de cifra do OpenSSL (TLS 1.2). Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em PSK.
Exemplo:
A string de cifra do OpenSSL (TLS 1.3) para OpenSSL 1.1.1 ou mais recente. Substitui os critérios padrão de seleção de ciphersuite para criptografia baseada em PSK.
Exemplo:
Como o agent deve se conectar ao Zabbix server ou proxy. Usado para verificações ativas. Apenas um valor pode ser especificado:
unencrypted - conectar sem criptografia (padrão)
psk - conectar usando TLS e uma chave pré-compartilhada (PSK)
cert - conectar usando TLS e um certificado
Obrigatório: sim, se os parâmetros de certificado TLS ou PSK forem definidos (mesmo para conexão unencrypted); caso contrário, não
O caminho completo do arquivo contendo certificados revogados. Este parâmetro é usado para comunicações criptografadas entre componentes do Zabbix.
O caminho completo do arquivo contendo a chave privada do agent, usada para comunicações criptografadas entre os componentes do Zabbix.
O caminho completo do arquivo contendo a chave pré-compartilhada do agent, usada para comunicações criptografadas com o Zabbix server.
A string de identidade da chave pré-compartilhada, usada para comunicações criptografadas com o Zabbix server.
O emissor do certificado do servidor (proxy) permitido.
O assunto do certificado do servidor (proxy) permitido.
Permitir que todos os caracteres sejam passados como argumentos para parâmetros definidos pelo usuário. Os seguintes caracteres não são permitidos: \ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
Além disso, caracteres de nova linha não são permitidos.
Padrão: 0
Valores: 0 - não permitir, 1 - permitir
Um parâmetro definido pelo usuário para monitoramento. Podem haver vários parâmetros definidos pelo usuário.
Formato: UserParameter=<chave>,<comando shell>
Observe que o comando shell não deve retornar uma string vazia ou apenas EOL. Comandos shell podem ter caminhos relativos, se o parâmetro UserParameterDir for especificado.
Exemplo:
O caminho de pesquisa padrão para comandos UserParameter. Se usado, o agent mudará seu diretório de trabalho para o especificado aqui antes de executar um comando. Assim, os comandos UserParameter podem ter um prefixo relativo ./ em vez de um caminho completo.
Apenas uma entrada é permitida.
Exemplo: