sexta-feira, 12 de janeiro de 2007

MRTG no FreeBSD sem snmp e gerando graficos de serviços

freebsd.gif

Bom..a muito tempo eu tava querendo fazer isto no FreeBSD, pois no Linux eu ja tinha conseguido fazer seguindo aquele tutorial da BR-Linux

Mas na versão linux é bem mais facil..pois eu buscava as informações diretamente do device "/dev/proc/net" quando eu precisava fazer graficos de utilização da placa de rede, mas ..e no FreeBSD ?! como eu faria ?!

Depois de muito ..muito procurar acabei achando uma solução, usando ipfw + count + mrtg + scripts

Vamos botar a mão na massa:mrtg-graf.gif

Primeiro vamos instalar o mrtg

cd /usr/ports/net-mgmt/mrtg

make install clean

Agora vamos criar as regras do ipfw

Vamos supor que eu quero saber o quanto o meu squid esta consumindo de banda na minha placa de rede:

/sbin/ipfw add 800 count tcp from any 3128 to any via em0 # In
/sbin/ipfw add 801 count tcp from any to any 3128 via em0 # Out

Criamos as regras de count...agora sabemos que tudo o que passar será contado, sendo assim vamos configurar o mrtg e os scripts.

Vamos chamar este script de squid.sh, e eu vou salvar este script em /home/admin/squid.sh

!/bin/sh
in=`/sbin/ipfw show 800 | /usr/bin/awk '{print $3}'`
out=`/sbin/ipfw show 801 | /usr/bin/awk '{print $3}'`
echo $in
echo $out
echo 0
echo -n 0

Bem simples né....vc pode perceber que nós colocamos no script exatamente o numero as regras de count que criamos com o ipfw

Agora vamos criar um arquivo chamado mrtg.conf

WorkDir: /usr/local/www/data-dist/banda/mrtg/

Target[em0]: `/home/admin/squid.sh em0`
Title[em00]:"Tr\xe1fego na placa de rede - em0"
MaxBytes[em0]:1400000
PageTop[em0]: <h1>Tr\xe1fego de dados na placa de rede</h1>
Options[em0]: growright,bits,noinfo

Este script chama o squid.sh e na primeira linha ele indicar o path do meu webserver para onde ele vai jogar os graficos

Agora vamos adicionar esta linha no crontab

vi /etc/crontab

Adicione esta linha

*/2 * * * * root /usr/local/bin/mrtg /home/admin/mrtg.conf

Isto quer dizer que de 2 em 2 minutos..ele vai atualizar os graficos

Agora pra visualizar o conteudo faça

http://localhost/banda/mrtg/em0.html

Espero ter ajudado

Bruno Moreira Zanelato

bzanelato@gmail.com

2 comentários:

TEX disse...

ATÉ SERIA BOM SE FUNCIONA-SE
:p

andrei disse...

Opá tudo bem?
Cara só uma dúvida, quanto regra de count, quanto mais passar os dias, mais bites na interface vão ter passado, assim não teriamos um grafico sempre crescente?
Até agora não entendi como isso pode funcionar para gerar picos e baixas dos acessos se as regras sempre vão contabilizar a mais. Pode me explicar para tirar essa minha dúvida?

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Powered by Blogger | Printable Coupons