O MRTG - Multi Router Traffic Grapher - é uma ferramenta que gera gráficos indicativos do consumo de banda em redes. Os gráficos, no formato PNG, são inseridos em relatórios HTML, e são atualizados constantemente, mostrando as condições dos enlaces de rede de uma forma bastante clara e atualizada. O MRTG é desenvolvido em Perl e C. Seu site oficial é http://people.ee.ethz.ch/~oetiker/webtools/mrtg. Além da função original do MRTG, que é monitorar roteadores através do protocolo SNMP (Simple Network Management Protocol), ele também pode ser utilizado para monitorar diversos outros sistemas, como servidores de e-mail, Squid, servidores web, condições do tempo, temperatura etc. Basta que se tenha alguma fonte de dados para que o MRTG gere seus gráficos. O relatório de consumo de banda para um determinado link possui quatro gráficos: diário, última semana, últimas cinco semanas e último ano. Normalmente, trabalha-se com quatro dados, na seguinte ordem: contagem de bytes de entrada, contagem de bytes de saída, uptime e nome. Faça a instalação do MRTG através do Ports. É mais fácil, já que o MRTG depende de algumas bibliotecas gráficas que podem não estar instaladas no seu sistema, Vá até o diretório /usr/ports/net/mrtg e digite o comando "make install". O MRTG será instalado, o seu executável ficará em /usr/local/bin/mrtg, e seu arquivo de configuração no diretório /usr/local/etc/mrtg/. É instalado por padrão um arquivo de configuração de exemplo, mrtg.cfg.sample. Mantenha-o como referência, e crie outro arquivo, com o nome mrtg.cfg para as suas configurações. As principais opções de configuração são descritas abaixo: WorkDir: /usr/local/apache2/htdocs/mrtg Local onde serão colocadas as páginas e os gráficos. RunAsDaemon: Yes Rodar como um daemon ou não. Interval: 5 Intervalo em minutos entre aquisições de dados pelo MRTG. O padrão é 5 minutos, que também é o valor mínimo. Refresh: 300 Tempo em segundos para atualização da página no browser. O padrão é 300. Language: brazilian Idioma. Target: Especifica quais as portas de quais roteadores o MRTG deverá consultar e construir gráficos. Os principais formatos são: Target[nome]: porta:community@roteador Target[nome]: /ip:community@roteador O nome é uma descricao da porta/link, e o community é a senha para acesso via SNMP ao roteador. Exemplos: Target[link1]: 1:
Este endereo de e-mail est sendo protegido de spam, voc precisa de Javascript habilitado para v-lo
Target[link2]: /192.168.0.15:
Este endereo de e-mail est sendo protegido de spam, voc precisa de Javascript habilitado para v-lo
A especificação do endereço IP da porta ao invés do número é útil em alguns casos onde a ativação ou desativação de uma porta no equipamento muda toda a seqüência. Para combinar mais de uma porta no mesmo gráfico, somando os dados, deve-se utilizar o seguinte formato: Target[portas3e4]: 3:
Este endereo de e-mail est sendo protegido de spam, voc precisa de Javascript habilitado para v-lo
+ 4:
Este endereo de e-mail est sendo protegido de spam, voc precisa de Javascript habilitado para v-lo
Pode ser utilizado também algum programa ou script externo para gerar os dados lidos pelo MRTG. A saída do script deverá conter 4 linhas:
Linha 1: estado atual da primeira variável, normalmente a contagem de bytes de entrada. Linha 2: estado atual da segunda variável, normalmente a contagem de bytes de saída. Linha 3: string com o uptime do dispositivo. Linha 4: string com o nome do dispositivo. Para utilizar um script deste tipo, a entrada no mrtg.cfg deverá ter o formato abaixo: Target[disco1]: `/usr/local/script/df2mrtg /dev/ad0s1a` MaxBytes[nome]: 12500000 Velocidade máxima em bytes/segundo para aquela porta.
Title[nome]: Análise de Tráfego da Porta 1 do Roteador X Título da página que será gerada. PageTop[nome]: <H1>Análise de Tráfego</H1><br>Qualquer texto. HTML a ser inserido no topo da página. PageFoot[nome]: Qualquer texto... HTML a ser inserido no final da página. Unscaled[nome]: dw Não altera a escala vertical dos gráficos especificados de acordo com o tráfego, ou seja, mesmo havendo baixos valores a escala continua a mesma. Os gráficos especificados podem ser (d)ay, (w)eek, (m)onth e (y)ear. WithPeak[nome]: wm Por padrão os gráficos semanal, mensal e anual contém apenas as médias de tráfego, sem mostrar os picos. Esta opção indica que deverão ser exibidos os picos de tráfego para os gráficos especificados. Suppress[nome]: ym Não produz os gráficos especificados.
PNGTitle[nome]: Trafego Link Y Insere o texto como título no gráfico gerado. Options[nome]: opções Permite definir algumas opções booleanas. As principais são: growright Por padrão os gráficos crescem para a esquerda. Este parâmetro inverte, fazendo com que os dados mais recentes estejam na parte esquerda do gráfico. bits Exibe os valores em bits ao invés de bytes nos gráficos. noinfo Não coloca as informações uptime e nome do dispositivo na página. nopercent Não exibe as porcentagens de utilização. transparent Gera os gráficos com fundo transparente. noborder Gera os gráficos sem borda. Para incluir parâmetros que serão usados em mais de um dispositivo (determinado pelo valor "nome"), pode-se fazer uso de valores padrão, especificados como o nome "_". Exemplo:
Options[_]: growright,noinfo MaxBytes[_]: 12500000 Todos os parâmetros decritos deverão estar no arquivo de configuração, mrtg.cfg. Segue abaixo um exemplo do arquivo:
-------------------- Arquivo mrtg.cfg -------------------- # mrtg.cfg WorkDir: /usr/local/apache2/htdocs/mrtg RunAsDaemon: Yes Language: brazilian Options[_]: growright,bits Target[porta1]: 1:
Este endereo de e-mail est sendo protegido de spam, voc precisa de Javascript habilitado para v-lo
MaxBytes[porta1]: 12500000 Title[porta1]: Analise de Trafego Porta 1 PageTop[porta1]: <H1>Estatisticas Porta 1</H1> Target[porta2]: 2:
Este endereo de e-mail est sendo protegido de spam, voc precisa de Javascript habilitado para v-lo
MaxBytes[porta2]: 1250000 Title[porta2]: Analise de Trafego Porta 2 PageTop[porta2]: <H1>Estatisticas Porta 2</H1> -------------------- Fim do arquivo mrtg.cfg -------------------- Crie um usuário de nome mrtg no grupo mrtg, para não precisar rodar o MRTG como root. Execute os seguintes comandos: # pw group add mrtg -g 190 # pw user add mrtg -c "MRTG" -d "/nonexistent" -s "/sbin/nologin" -u 190 -g 190 Deverá ser criado o diretório no qual o MRTG irá colocar as páginas e os gráficos e deverá ser atribuído o dono mrtg ao diretório, que é definido pelo parâmetro "WorkDir". Atribua também o dono mrtg ao diretório /usr/local/etc/mrtg. Para inicializar o MRTG utilize o seguinte comando: # /usr/local/bin/mrtg --user=mrtg --group=mrtg /usr/local/etc/mrtg/mrtg.cfg Faça alguns testes, e verifique as páginas criada em http://servidor/mrtg/. A página com os gráficos de cada porta/link terá o nome que foi especificado no arquivo de configuração, por exemplo porta1.html, porta2.html etc. Você poderá criar uma página index.html para agrupar estes gráficos ou para fornecer links para a página de cada porta. Faça um script de inicialização para o MRTG, com os seguintes comandos para inicialização e shutdown, respectivamente: /usr/local/bin/mrtg --user=mrtg --group=mrtg /usr/local/etc/mrtg/mrtg.cfg > /dev/null e kill -9 `cat /usr/local/etc/mrtg/mrtg.pid`
|