Realizando monitoramento em interconexões com Speedtest-mini e Zabbix.
Nota: O Speedtest Mini foi descontinuado pela OOKLA . Os arquivos para download não estão mais disponíveis.
Recentemente apareceu uma demanda interessante, monitorar uma interconexão que foi recém contratada para interligar matriz a filial, foi contratado um link de 5mb full. Surgiu uma dúvida, como ter certeza que este provedor está entregando a velocidade contratada? Já que é um link utilizado apenas para trafego interno.
Para esta demanda podemos utiliza o Mini Speedtest ( http://www.speedtest.net/pt/mini.php), assim teremos um servidor Speed Test interno na nossa infra, desta forma seria possível obter por exemplo a velocidade do entre o seu Zabbix server e um Zabbix proxy. Com base neste senário estarei demonstrando como pode ser feita esta configuração.
Ambiente Utilizado.
Hyper-V
Ubuntu Server 14.04
Zabbix-server 3.0.4
Zabbix-proxy 3.0.4
Acesse seu Zabbix-Proxy.
Realize o download dos pacotes do speedteste mini.
Instale alguns pré-requisitos, sendo eles apenas para rodar um simples serviço HTTP.
apt-get install php5 php5-mysql php5-mcrypt php5-gd libapache2-mod-php5 zip unzip
Aguarde o termino e instale o apache.
apt-get install apache2
Extraia agora o arquivo mini.zip
unzip mini.zip
Copie a pasta extraída para o diretório do apache. Um ponto importante a ressaltar é que diretório padrão do apache no ubuntu/debian é /var/www/ ou /var/www/html/.
cp -R mini /var/www/
Renomeie o arquivo index-php.html para index.html.
cd /var/www/html
mv mini/index-php.html mini/index.html
Reinicie o processo do apache.
service apache2 restart
Basta neste momento acessar através do navegador a página web.
IPouNome/mini/
Pronto. Seu mini servidor do speedtest está instalado e configurado. Agora podemos utilizar o speedtest-cli para testar a velocidade entre do Zabbix server e o proxy. Informe o parâmetro “-mini” e depois o endereço do servidor onde o serviço está instalado.
speedtest-cli — mini http://IP_ou_Nome/mini
Caso não tenha o speedtest-cli instalado e configurado com o Zabbix, tenho um post ensinando como realizar o processo.
Artigo Userparameter: Utilizando speedtest-cli junto ao Zabbix
Precisaremos criar a tarefa para executar o speedtest-cli e o userparameter para coletar os resultados. Nesse laboratório fiz o processo de configuração direto no Zabbix Server. Caso tenha alguma dúvida, consulte o processo do link acima.
Agende via Crontab para a tarefa ser rodada a cada determinado tempo, como estou fazendo via laboratório, coloquei a cada 10 min, porem lembre que é um teste de Download e Upload, não é recomendado que seja efetuado várias vezes ao dia.
Salve o arquivo e pronto, agora será realizado o teste a cada 10 minutos e os resultados serão salvos em /tmp/filial1.txt
Crie o userparameter dentro do arquivo /etc/zabbix/zabbbix_agent.conf
UserParameter=filialup[*],cat /tmp/filial1.txt | grep “Upload:” | cut -d “ “ -f2
UserParameter=filialdown[*],cat /tmp/filial1.txt | grep “Download:” | cut -d “ “ -f2
Reinicie seu zabbix-agente.
Crie Dois itens do tipo Zabbix Agente, um para consulta do Userparameter filialup(upload) e outro para filialdown(download). Conforme as duas imagens abaixo.
Download:
Upload:
Basta neste momento aguardar a coleta.
Este é um processo simples para que você possa realizar o monitoramento de suas interconexões, lembre-se de utilizar com moderação. Todos os testes foram feitos em ambiente de teste e controlado.
Teve alguma duvida ou possui uma sugestão para um artigo? Nos deixe um comentários.
Obs:
Originally published at https://www.bernardolankheet.com.br on November 1, 2016.