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:
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
sexta-feira, 12 de janeiro de 2007
MRTG no FreeBSD sem snmp e gerando graficos de serviços
sexta-feira, janeiro 12, 2007
Bruno Moreira Zanelato
2 comentários:
ATÉ SERIA BOM SE FUNCIONA-SE
:p
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?
Postar um comentário