Previsão de problemas e tendências com Zabbix 3.0: Guia prático

Previsão de problemas e tendências com Zabbix 3.0: Guia prático

A partir da versão 3.0 do Zabbix dois novos recursos, o forecast e timeleft, permitem fazer previsões sobre análise de dados coletados e criar alertas que antecipem problemas em potenciais. São ótimos também para prever tendências e fazer capacity planning. Neste artigo apresento exemplos simples de como usá-lo.

A função forecast

O forecast (previsão) consiste em analisar dados passados e prever quando este comportamento se tornara um problema de fato, digamos que uma aplicação em seu servidor esta com algum tipo de anomalia e esta gerando arquivos de log que consomem muito espaço em disco, com base nos últimos dados coletados o zabbix consegue analisar e prever que daqui X horas o espaço em disco esgotara caso esse comportamento instável continue.

A desculpa de que não temos bola de cristal não é mais valida rsrsrs, vamos entender como analisar dados do passado para prever o comportamento futuro.

Na função forecast(#6,,1h) estamos prevendo o comportamento do item após uma hora analisando os 6 últimos valores coletados. No exemplo abaixo, é feito uma prospecção em uma hora sobre os últimos cinco itens coletados com o espaço em disco utilizado em uma partição:

 
{Template de disco:vfs.fs.size[{#FSNAME},free].forecast(#5,,1h)}

Onde:

Template de disco = nome do template
vfs.fs.size[{#FSNAME},free] = item do template
forecast = função
(#5,,1h)} = Dados a serem coletados/período de analise. Expressos em m(minutos), h(horas) ou d(dia).
< 10 = Condição da trigger:espaço em disco ocupado pela partição menor que 10%

Para testar a configuração acima, execute o comando abaixo para aumentar gradativamente o consumo do espaço em disco:

 
# dd if=/dev/zero of=/arquivo count=1 bs=100M

O consumo será incrementado em 100 MB a cada minuto. O intervalo de coleta do item também foi definido a cada minuto com base no crescimento das ultimas 5 coletas. Assim a trigger foi disparada alertando que em breve o disco estaria cheio caso o comportamento continuasse.

forecast

Desta forma,  a trigger foi disparada o dd incremental foi encerrado e como não houve mais aumento de tamanho no arquivo gerado o zabbix entendeu que o risco do disco estourar por falta de espaço estava descartado ao menos por enquanto.

 

Análise sobre um período

Seguindo o mesmo conceito usado para configurar a trigger acima podemos aplicar a análise sobre dados em coletados em um período de tempo.

No exemplo baixo analisaremos 2 horas no passado para prever com antecedência de 1 hora antes do disco ficar abaixo de 10% de armazenamento disponível:

 
{Template de disco:vfs.fs.size[{#FSNAME},free].forecast(2h,,1h)}

Podemos criar nossa trigger usando tanto o forecast (valor futuro do item após um determinado tempo de coleta) ou timeleft (tempo necessário para que um item alcance um determinado valor), em nosso exemplo não importa a função escolhida o resultado será o mesmo.

A função timeleft

Usaremos exatamente os mesmos parâmetros citados acima porem desta vez usaremos o timeleft, a função seria:

{Template de disco:vfs.fs.size[{#FSNAME},free].timeleft}

 

Existem alguns itens que são praticamente impossíveis de prever quando se tornaram um problema, como memória e cpu que podem estar operando em níveis aceitáveis e de uma hora para outra subir e “congelar” a maquina. Para outros itens mais previsíveis ou que possam ter um crescimento gradual a função forecast e timeleft se tornam muito úteis.

Lembrando que neste post usamos valores de teste, caso queira implantar o forecast em seu ambiente é recomendável ajustar os valores e a função para a necessidade de seu ambiente.

Anterior Descubra o PHPeste: Evento que une amantes da programação PHP
Próxima Congresso SAE BRASIL: 4Linux e a transição para a mobilidade inteligente

About author

André Ferreira
André Ferreira 2 posts

André Luis Ferreira dos Santos atua como Analista de Infraestrutura Linux e soluções FOSS (Free and Open Source Software) com foco em DevOps e gerencia de configurações, cursa Analise e Desenvolvimento de Sistemas no Centro Universitário IBTA. Detém expertise como instrutor de cursos voltados ao Sistema Operacional Linux, possui Certificação Zabbix, VSTP (VMWare) e LPIC2

View all posts by this author →

Você pode gostar também

DevOps

Guia completo para instalação do Gitea: Ferramenta open source de gerenciamento de código-fonte

O Gitea é uma ferramenta open source de Source Code Management – SCM, ou seja, gerenciamento de código-fonte, escrita em Go e que foi criada em novembro de 2016 além

Infraestrutura TI

Guia Completo: Gerenciamento de Disco e Partições Linux

Neste artigo, vamos falar sobre o gerenciamento de disco, uma das partes mais importantes da sua infraestrutura para que você não perca ou corrompa aqueles arquivos que guarda com carinho

Infraestrutura TI

Gerenciamento eficiente de discos em Linux com LVM: Guia passo a passo

O gerenciamento de discos em ambientes linux utilizando o LVM fornece uma visão de alto nível à estrutura de discos presentes em um sistema. Isso dá muito mais flexibilidade na