Este manual é um trabalho em progresso.
É muito importante que o Zabbix esteja ajustado apropriadamente para a sua melhor performance.
Definições gerais de hardware:
Vários parâmetros de configuração do Zabbix podem ser otimizados para melhorar a performance.
StartPollers
Regra geral - mantenha este parâmetro no menor valor possível, cada instância adicional do Zabbix Server adiciona seu próprio 'overhead', ao mesmo tempo, o paralelismo é aumentado. O melhor número de instâncias é obtido quando a fila, na média, contêm o mínimo de parâmetros (idealmente 0 em algum momento). Este valor pode ser monitorado pelas verificações internas do Zabbix zabbix[queue]
.
Consulte a seção "Veja também" ao final desta página para maiores informações sobre como otimizar a quantidade de processos do Zabbix.
DebugLevel
O melhor valor é 3.
DBSocket
Apenas para MySQL. É recomendado utilizar DBSocket para se conectar ao banco, é a forma mais rápida e mais segura.
Esta é, provavelmente, a This is probably the most important part of Zabbix tuning. Zabbix heavily depends on the availability and performance of database engine.
max(3600)
será calculada de forma significativamente mais lenta que max(60)
.O Zabbix 2.2 introduziu uma nova característica, os processos mudam suas linhas de comando para exibir a atividade atual:
UID PID PPID C STIME TTY TIME CMD
zabbix22 4584 1 0 14:55 ? 00:00:00 zabbix_server -c /home/zabbix22/zabbix_server.conf
zabbix22 4587 4584 0 14:55 ? 00:00:00 zabbix_server: configuration syncer [synced configuration in 0.041169 sec, idle 60 sec]
zabbix22 4588 4584 0 14:55 ? 00:00:00 zabbix_server: db watchdog [synced alerts config in 0.018748 sec, idle 60 sec]
zabbix22 4608 4584 0 14:55 ? 00:00:00 zabbix_server: timer #1 [processed 3 triggers, 0 events in 0.007867 sec, 0 maint.periods in 0.005677 sec, idle 30 sec]
zabbix22 4609 4584 0 14:55 ? 00:00:00 zabbix_server: timer #2 [processed 2 triggers, 0 events in 0.004209 sec, idle 30 sec]
zabbix22 4637 4584 0 14:55 ? 00:00:01 zabbix_server: history syncer #4 [synced 35 items in 0.166198 sec, idle 5 sec]
zabbix22 4657 4584 0 14:55 ? 00:00:00 zabbix_server: vmware collector #1 [updated 0, removed 0 VMware services in 0.000004 sec, idle 5 sec]
zabbix22 4670 1 0 14:55 ? 00:00:00 zabbix_proxy -c /home/zabbix22/zabbix_proxy.conf
zabbix22 4673 4670 0 14:55 ? 00:00:00 zabbix_proxy: configuration syncer [synced config 15251 bytes in 0.111861 sec, idle 60 sec]
zabbix22 4674 4670 0 14:55 ? 00:00:00 zabbix_proxy: heartbeat sender [sending heartbeat message success in 0.013643 sec, idle 30 sec]
zabbix22 4688 4670 0 14:55 ? 00:00:00 zabbix_proxy: icmp pinger #1 [got 1 values in 1.811128 sec, idle 5 sec]
zabbix22 4690 4670 0 14:55 ? 00:00:00 zabbix_proxy: housekeeper [deleted 9870 records in 0.233491 sec, idle 3599 sec]
zabbix22 4701 4670 0 14:55 ? 00:00:08 zabbix_proxy: http poller #2 [got 1 values in 0.024105 sec, idle 1 sec]
zabbix22 4707 4670 0 14:55 ? 00:00:00 zabbix_proxy: history syncer #4 [synced 22 items in 0.008565 sec, idle 5 sec]
zabbix22 4738 1 0 14:55 ? 00:00:00 zabbix_agentd -c /home/zabbix22/zabbix_agentd.conf
zabbix22 4739 4738 0 14:55 ? 00:00:00 zabbix_agentd: collector [idle 1 sec]
zabbix22 4740 4738 0 14:55 ? 00:00:00 zabbix_agentd: listener #1 [waiting for connection]
zabbix22 4741 4738 0 14:55 ? 00:00:00 zabbix_agentd: listener #2 [processing request]
O processo principal é uma exceção. A sua atividade atual não é apresentada para facilitar sua identificação entre as múltiplas instâncias.
Esta funcionalidade não é implementada no Windows.
Se o nível de log for definido apra DebugLevel=4 estas atividades e mensagens de estatísticas serão gravadas no log.
Em ambientes Linux o comando ps
pode ser utilizado em conjunto com o ocmando watch
para observar como o Zabbix está indo. Por exemplo, para rodar o comando ps
5 vezes por segundo para ver as atividades dos processos:
Para mostrar apenas os processos do Zabbix Proxy/Agent:
Para mostrar apenas o processo de sincronismo do histórico:
O comando ps
produz uma saída longa (aproximadamente 190 colunas), algumas mensagens de ativiades serão longas. Se o seu terminal for menor que 190 colunas de texto você pode tentar
para exibir apenas as linhas de comando sem UID, PID, start time etc.
O comando top
também pode ser utilizado para observar a performance do Zabbix. Pressionando a tecla 'c' no top
exibe os processos com seus comandos. Em nossos testes o top
e atop
apresentam corretamente as mudanças de atividades nos processos do Zabbix mas o htop
não mostrou as atividades.
Se o comando watch
não estive instalado pode-se conseguir efeito similar com o comando abaixo
Se o comando watch
não estiver disponível, pode-se tentar
Por padrão o comando ps
não mostra as mudanças de atividades. Uma opção é usar o /usr/ucb/ps
em seu lugar. Se o comando watch
não estiver instalado, a periodicidade de atualização da lista de processos pode ser vista com
No Solaris 11, o comando sleep
aceita frações de 1 segundo (e.g. sleep 0.2
).