4 Proxy
Overview
O proxy Zabbix é um processo que pode coletar dados de monitoramento de um ou mais dispositivos monitorados e enviar as informações para o servidor Zabbix, essencialmente funcionando em nome do servidor. Todos os dados coletados são armazenados em buffer localmente e depois transferidos para o servidor Zabbix ao qual o proxy pertence.
Implantar um proxy é opcional, mas pode ser muito benéfico para distribuir a carga de um único servidor Zabbix. Se apenas proxies coletarem os dados, o processamento no servidor se torna menos exigente em termos de CPU e I/O de disco.
Um proxy Zabbix é a solução ideal para monitoramento centralizado de locais remotos, filiais e redes sem administradores locais.
O proxy Zabbix requer um banco de dados separado.
Note que os bancos de dados suportados pelo proxy Zabbix são SQLite, MySQL e PostgreSQL. Usar Oracle é por sua conta e risco e pode conter algumas limitações, como, por exemplo, nos valores de retorno return values das regras de descoberta de baixo nível.
Consulte também: Using proxies in a distributed environment
Proxy rodando
Se instalado como pacote
Se instalado como pacote, o proxy do Zabbix é executado como um processo daemon. O proxy pode ser iniciado executando:
systemctl start zabbix-proxy
Isso funcionará na maioria dos sistemas GNU/Linux. Em outros sistemas, você pode precisar executar:
/etc/init.d/zabbix-proxy start
Da mesma forma, para parar, reiniciar ou visualizar o status do proxy do Zabbix, use os seguintes comandos:
systemctl stop zabbix-proxy
systemctl restart zabbix-proxy
systemctl status zabbix-proxy
Inicialização manualmente
Se o método acima não funcionar, você precisará iniciá-lo manualmente. Encontre o caminho para o binário zabbix_proxy e execute:
zabbix_proxy
Você pode usar os seguintes parâmetros de linha de comando com o proxy do Zabbix:
-c --config <file> path to the configuration file
-f --foreground run Zabbix proxy in foreground
-R --runtime-control <option> perform administrative functions
-h --help give this help
-V --version display version number
Exemplos de execução do proxy do Zabbix com parâmetros de linha de comando:
zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf
zabbix_proxy --help
zabbix_proxy -V
Controle de execução
Opções de controle de execução:
| Opção | Descrição | Alvo |
|---|---|---|
| config_cache_reload | Recarregar o cache de configuração. Ignorado se o cache estiver sendo carregado no momento. O proxy Zabbix ativo se conectará ao servidor Zabbix e solicitará os dados de configuração. |
|
| diaginfo[=<section>] | Coletar informações de diagnóstico no arquivo de log do proxy. | historycache - estatísticas do cache de histórico preprocessing - estatísticas do gerenciador de pré-processamento locks - lista de mutexes (vazia em sistemas BSD) |
| snmp_cache_reload | Recarregar o cache SNMP, limpar as propriedades SNMP (tempo do motor, inicializações do motor, ID do motor, credenciais) para todos os hosts. | |
| housekeeper_execute | Iniciar o procedimento de limpeza (housekeeping). Ignorado se o procedimento já estiver em andamento. | |
| log_level_increase[=<target>] | Aumentar o nível de log, afetando todos os processos se o alvo não for especificado. Não suportado em sistemas BSD. |
process type - Todos os processos do tipo especificado (ex.: poller) Veja todos os tipos proxy process types. process type,N - Tipo de processo e número (ex.: poller,3) pid - Identificador de processo (1 a 65535). Para valores maiores, especifique o alvo como 'process type,N'. |
| log_level_decrease[=<target>] | Reduzir o nível de log, afetando todos os processos se o alvo não for especificado. | |
| Não suportado em sistemas BSD. | ^ | |
| prof_enable[=<target>] | Ativar profiling. Afeta todos os processos se o alvo não for especificado. A criação de perfis habilitada fornece detalhes de todos os rwlocks/mutexes por nome de função. Suportado desde o Zabbix 6.0.13. |
process type - Todos os processos do tipo especificado (ex.: history syncer) Veja todos os tipos de processos proxy process types. process type,N - Tipo de processo e número (ex.: history syncer,1) pid - Identificador de processo (1 a 65535). Para valores maiores, especifique o alvo como 'process type,N'. scope - rwlock, mutex, processing podem ser usados com o tipo e número do processo (ex.: history syncer,1,processing) ou para todos os processos do tipo (ex.: history syncer,rwlock). |
| prof_disable[=<target>] | Desativar profiling. Afeta todos os processos se o alvo não for especificado. Suportado desde o Zabbix 6.0.13. |
process type - Todos os processos do tipo especificado (ex.: history syncer) Veja todos os tipos de processos proxy process types. process type,N - Tipo de processo e número (ex.: history syncer,1) pid - Identificador de processo (1 a 65535). Para valores maiores, especifique o alvo como 'process type,N'. |
Exemplo de uso do controle em tempo de execução para recarregar o cache de configuração do proxy:
zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R config_cache_reload
Exemplos de uso do controle em tempo de execução para coletar informações de diagnóstico:
Gather all available diagnostic information in the proxy log file:
zabbix_proxy -R diaginfo
Gather history cache statistics in the proxy log file:
zabbix_proxy -R diaginfo=historycache
Exemplo de uso do controle em tempo de execução para recarregar o cache SNMP:
zabbix_proxy -R snmp_cache_reload
Exemplo de uso do controle em tempo de execução para acionar a execução do housekeeping:
zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R housekeeper_execute
Exemplos de uso do controle em tempo de execução para alterar o nível de log:
Increase log level of all processes:
zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase
Increase log level of second poller process:
zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=poller,2
Increase log level of process with PID 1234:
zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=1234
Decrease log level of all http poller processes:
zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_decrease="http poller"
Usuário do processo
O proxy do Zabbix foi projetado para ser executado como um usuário não-root. Ele será executado como qualquer usuário não-root que o iniciar. Assim, você pode executar o proxy como qualquer usuário não-root sem problemas.
Se você tentar executá-lo como 'root', ele será alterado para o usuário 'zabbix', que deve estar presente no seu sistema. Você só pode executar o proxy como 'root' se modificar o parâmetro 'AllowRoot' no arquivo de configuração do proxy, conforme necessário.
Arquivo de configuração
Consulte as opções do arquivo de configuração configuration file para obter detalhes sobre como configurar o zabbix_proxy.
Tipos de processos do Proxy
availability manager- processo para atualizações de disponibilidade de hostsconfiguration syncer- processo para gerenciar o cache de dados de configuração na memóriadata sender- remetente de dados do proxydiscoverer- processo para descoberta de dispositivosheartbeat sender- remetente de heartbeat do proxyhistory poller- processo para lidar com verificações calculadas, agregadas e internas que exigem conexão com o banco de dadoshistory syncer- escritor do banco de dados de históricohousekeeper- processo para remoção de dados históricos antigoshttp poller- poller para monitoramento webicmp pinger- poller para verificações de icmppingipmi manager- gerente de poller IPMIipmi poller- poller para verificações IPMIjava poller- poller para verificações Javaodbc poller- poller para verificações ODBCpoller- poller normal para verificações passivaspreprocessing manager- gerente de tarefas de pré-processamentopreprocessing worker- processo para pré-processamento de dadosself-monitoring- processo para coleta de estatísticas internas do servidorsnmp trapper- trapper para traps SNMPtask manager- processo para execução remota de tarefas solicitadas por outros componentes (por exemplo, fechar problema, reconhecer problema, verificar valor de item agora, funcionalidade de comando remoto)trapper- trapper para verificações ativas, traps e comunicação do proxyunreachable poller- poller para dispositivos inalcançáveisvmware collector- coletor de dados VMware responsável pela coleta de dados dos serviços VMware
O arquivo de log do proxy pode ser usado para observar esses tipos de processos.
Vários tipos de processos do proxy Zabbix podem ser monitorados usando o item interno zabbix[process,<type>,<mode>,<state>] item.
Plataformas suportadas
O proxy Zabbix é executado na mesma lista de supported platforms que o servidor Zabbix.
Localidade
Observe que o proxy requer uma localidade (locale) em UTF-8 para que alguns itens textuais possam ser interpretados corretamente. A maioria dos sistemas modernos do tipo Unix já utiliza UTF-8 como padrão; no entanto, em alguns sistemas, pode ser necessário configurá-lo especificamente.