::: não importante Este é um trabalho em progresso. :::
É muito importante que o Zabbix esteja ajustado apropriadamente para a sua melhor performance.
Definições gerais de hardware:
Muitos parâmetros podem ser ajustados para obter o desempenho ideal.
Para obter o melhor desempenho (ou seja, quando os pesquisadores não competem com sincronizadores de histórico para recursos comuns no cache de configuração) é recomendado para manter um número baixo de pesquisas de histórico, pesquisas de opinião, inacessíveis pollers, pollers Java, pollers ODBC no servidor Zabbix e torná-los o mais livres possível delegando toda a votação para proxies Zabbix.
IniciarPollers
Regra geral - mantenha o valor deste parâmetro o mais baixo possível. Cada instância adicional de zabbix_server adiciona sobrecarga conhecida, ao mesmo tempo tempo, o paralelismo é aumentado. O número ideal de instâncias é alcançado quando a fila de itens, em média, contém um número mínimo de parâmetros (idealmente, 0 a qualquer momento). Este valor pode ser monitorado usando verificação interna zabbix[fila].
Consulte a seção "Veja também" na parte inferior do esta página para descobrir como configurar a contagem ideal de zabbix processos.
StartHistoryPollers
Este valor deve ser mantido o mais baixo possível para evitar conexões ao banco de dados. Cada sondador de histórico requer uma conexão com o banco de dados.
Veja também: Processo do servidor tipos
Nível de depuração
O valor ideal é 3.
DBSocket
Somente MySQL. Recomenda-se usar DBSocket para conexão com o base de dados. Essa é a maneira mais rápida e segura.
Esta é provavelmente a parte mais importante do ajuste do Zabbix. Zabbix depende muito da disponibilidade e desempenho do mecanismo de banco de dados.
Problemas relacionados ao desempenho do frontend podem ser diagnosticados usando o frontend modo de depuração.
Como os processos do Zabbix 2.2 alteram suas linhas de comando para exibir atividade e estatísticas significativas, como:
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: sincronização de configuração [configuração sincronizada em 0,041169 seg, inativo 60 seg]
zabbix22 4588 4584 0 14:55 ? 00:00:00 zabbix_server: db watchdog [configuração de alertas sincronizados em 0,018748 seg, inativo 60 seg]
zabbix22 4608 4584 0 14:55 ? 00:00:00 zabbix_server: timer #1 [atualizado 0 hosts, suprimido 0 eventos em 0,000472 seg, inativo 59 seg]
zabbix22 4637 4584 0 14:55 ? 00:00:01 zabbix_server: histórico sincronizador #3 [processado 0 valores, 0 acionadores em 0,000036 seg, inativo 1 seg]
zabbix22 4657 4584 0 14:55 ? 00:00:00 zabbix_server: vmware collector #1 [atualizado 0, removido 0 serviços VMware em 0,000004 seg, inativo 5 seg]
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: sincronização de configuração [configuração sincronizada 15251 bytes em 0,111861 seg, inativo 60 seg]
zabbix22 4674 4670 0 14:55 ? 00:00:00 zabbix_proxy: remetente de pulsação [enviando mensagem de pulsação com sucesso em 0,013643 seg, inativo 30 seg]
zabbix22 4688 4670 0 14:55 ? 00:00:00 zabbix_proxy: icmp pinger #1 [obteve 1 valor em 1,811128 seg, inativo 5 seg]
zabbix22 4690 4670 0 14:55 ? 00:00:00 zabbix_proxy: governanta [excluiu 9870 registros em 0,233491 seg, ocioso 3599 seg]
zabbix22 4701 4670 0 14:55 ? 00:00:08 zabbix_proxy: http poller #2 [obteve 1 valor em 0,024105 seg, inativo 1 seg]
zabbix22 4707 4670 0 14:55 ? 00:00:00 zabbix_proxy: sincronizador de histórico nº 4 [processado 0 valores, 0 acionadores em 0,000039 seg, inativo 1 seg]
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: coletor [ocioso 1 segundo]
zabbix22 4740 4738 0 14:55 ? 00:00:00 zabbix_agentd: ouvinte #1 [aguardando conexão]
zabbix22 4741 4738 0 14:55 ? 00:00:00 zabbix_agentd: listener #2 [processando solicitação]
O processo principal é uma exceção. Em vez da atividade atual, o linha de comando original é mostrada. Isso ajuda a distinguir os processos sistemas com várias instâncias do Zabbix.
Esse recurso não é implementado para o Microsoft Windows.
Se o nível de registro estiver definido como DebugLevel=4, essas atividades e mensagens de estatísticas também são gravadas no arquivo de log.
Em sistemas Linux o comando ps
pode ser usado junto com o comando watch
para observar como o Zabbix está se saindo. Por exemplo, para executar o comando ps
5 vezes por segundo para ver as atividades do processo:
Para mostrar apenas os processos de proxy e agente do Zabbix:
Para mostrar apenas os processos do sincronizador de histórico:
O comando ps
produz uma saída ampla (aproximadamente 190 colunas) como algumas mensagens de atividade são longas. Se o seu terminal tiver menos de 190 colunas de texto que você pode tentar
para exibir apenas linhas de comando sem UID, PID, hora de início etc.
O comando top
também pode ser usado para observar o desempenho do Zabbix. Pressionar a tecla 'c' em 'top' mostra os processos com suas linhas de comando. Dentro nossos testes no Linux top
e atop
exibiram corretamente as alterações atividades dos processos Zabbix, mas htop
não estava exibindo mudanças Atividades.
Se o comando watch
não estiver instalado, um efeito semelhante pode ser obtido com
Se o comando watch
não estiver disponível, pode-se tentar
Por padrão, o comando ps
não mostra as atividades em mudança. Um opção é usar /usr/ucb/ps
em vez disso. Se o comando watch
não for instalado, uma lista atualizada periodicamente de processos pode ser mostrada com
No Solaris 11:
/usr/ucb/ps
não é instalado por padrão. Você pode precisar instalar pacote ucb, por exemplo compatibilidade de instalação do pacote/ucb
,sleep
aceita não apenas segundos inteiros, mas também frações de segundo (por exemplo, sono 0,2
).