MRTG Multi Router Traffic Grapher Alunos: Mateus Matias Luiz Edu Rodrigues Higor Rocha Luis Henrique
Índice Introdução... 3 Características... 4 Gerenciamento de Rede... 5 Tutorial... 6 Gráficos... 7 Bibliografia... 8
Introdução O Multi Router Traffic Grapher (MRTG) é uma ferramenta de monitoração que gera páginas HTML com gráficos de dados coletados a partir de SNMP (Simple Network Management Protocol) ou SCRIPTS externos. É conhecido principalmente pelo seu uso na monitoração de tráfego de rede, mas pode monitorar qualquer coisa desde que o host forneça os dados via SNMP ou script. Foi escrito em Perl, mas utiliza um módulo em C para gerar os gráficos HTML. MRTG consiste em um script Perl que usa SNMP para ler os contadores de tráfego de seus roteadores e um programa rápido C que registra os dados de tráfego e cria belos gráficos que representam o tráfego na conexão de rede monitorada. Estes gráficos são incluídos em páginas web que podem ser vistos a partir de qualquer navegador da Web moderno. Além de uma detalhada visão diária o MRTG também cria representações visuais do tráfego durante os últimos sete dias, nas últimas cinco semanas e nos últimos 12 meses. Isso é possível porque o MRTG mantém um registro de todos os dados que ele conseguiu a partir do roteador. Este log é automaticamente consolidado de forma que ele não cresce ao longo do tempo, mas ainda assim contêm todos os dados relevantes para todo o tráfego visto ao longo dos últimos dois anos. Isto tudo é realizado de uma maneira eficiente. Portanto, você pode monitorar mais de 200 ligações de rede a partir de qualquer estação UNIX decente. MRTG não se limita a monitorar o tráfego, no entanto, é possível monitorar qualquer variável SNMP que você escolher. Você ainda pode usar um programa externo para coletar os dados que devem ser monitorados via MRTG.
Características MRTG Mede sempre 2 valores, no caso de tráfego, pode ser Entrada e Saída. Faz as leituras via SNMP ou através de script que retorne um formato padrão. Coleta dados a cada 5 minutos por padrão, mas este tempo pode ser aumentado ou diminuído. Cria uma página HTML com 4 gráficos (diário, semanal, mensal e anual). Se algum deles não for necessário pode ser suprimido. O MRTG pode avisar caso o valor do gráfico atinja um valor préestabelecido. Por exemplo: se determinado servidor atinge 95% do espaço do disco, o MRTG pode mandar um e-mail para o administrador informando o ocorrido. Possui uma ferramenta para gerar os arquivos de configuração: o CFGMAKER. Possui uma ferramenta para gerar uma página de índice para os casos em que muitos itens são monitorados: o INDEXMAKER.
Informações do Gerenciamento de Rede A função de gerenciamento de rede é a observação e análise do estado e comportamento dos dispositivos gerenciados. Ao utilizar um software gerente para verificar o estado operacional de uma ou mais interfaces de rede ou qualquer variável SNMP que você escolher, está efetuando uma função de monitoração. Gerenciar um sistema consiste em supervisionar e controlar seu funcionamento para que ele satisfaça aos requisitos tanto dos seus usuários quanto dos seus proprietários. Gerente: Núcleo do Gerenciamento de Redes onde os processamentos das solicitações de requisições são feitas. Agente: Programa que coleta dados de um objeto e envia para gerente processar. MIBS: Base de Informações Gerenciáveis.
Tutorial Instalação do MRTG no Linux CentOS 6.4 através de comandos Instalar o MRTG e o apache: Comando: yum install mrtg httpd Habilitar para o httpd iniciar junto com o sistema: Comando: chkconfig httpd on Liberar o mrtg no httpd: comando: vim /etc/httpd/conf.d/mrtg.conf Mudar o conteúdo para: Alias /mrtg /var/www/mrtg <Loacation /mrtg> Order deny,allow #Deny from all #Allow from 127.0.0.1 Allow from all #Allow from.example.com <Loacation> Reiniciar o apache: comando: service httpd restart acessar o endereço no navegador para cofirmar que o apache esteja rodando : http://localhost:8080/mrtg/index.html
Depois de instalado acessar o diretório do MRTG. comando: cd /etc/mrtg Criar copia de backup do arquivo mrtg.conf: comando: cp /etc/mrtg/mrtg.cfg /etc/mrtg/mrtg.cfg.bkp Editar o arquivo mrtg.conf: comando: vim /etc/mrtg/mrtg.cfg Substituir todo o conteúdo do arquivo mrtg.conf: #-------------------------------------------------------------------------------------------------------- ------------------- #Configurando MRTG WorkDir: /var/www/mrtg Htmldir: /var/www/mrtg icondir: /mrtg Refresh: 300 Interval: 5 Language: portuguese RunAsDaemon:Yes #LogFormat: rrdtool [caso queira usar RRDTOOL descomentar esta linha e apagar este comentário] #---------------------
# Monitorar eth0 # REDE LOCAL #--------------------- Target[eth0]: `cat /proc/net/dev grep eth0 awk -F':' '{print $2}' awk '{print $1}'; cat /proc/net/dev grep eth0 awk -F':' '{print $2}' awk '{print $9}'; echo -e; echo -e` Title[eth0]: REDE - Utilização da placa de rede eth0 PageTop[eth0]: <H1>Estatísticas da interface eth0:</h1> Options[eth0]: printrouter, growright, bits, noarrow MaxBytes[eth0]: 1250000000 YLegend[eth0]: Bits por segundo LegendI[eth0]: Entrada (download) de dados LegendO[eth0]: Saída (upload) de dados Legend1[eth0]: Tráfego de Entrada (download) de dados em Bits por segundo Legend2[eth0]: Tráfego de Saída (upload) de dados em Bits por segundo Colours[eth0]: VERDE#008000,AZUL#000080,DARK GREEN#006000,VIOLET#FF00FF XSize[eth0]: 550 YSize[eth0]: 250 TimeStrPos[eth0]: RU #---------------------
# Monitorar loopback # REDE LOOPBACK #--------------------- Target[lo]: `cat /proc/net/dev grep lo awk -F':' '{print $2}' awk '{print $1}'; cat /proc/net/dev grep lo awk -F':' '{print $2}' awk '{print $9}'; echo -e; echo -e` Title[lo]: REDE - Utilização da placa de loopback PageTop[lo]: <H1>Estatísticas da interface loopback:</h1> Options[lo]: printrouter, growright, bits, noarrow MaxBytes[lo]: 1250000000 YLegend[lo]: Bits por segundo LegendI[lo]: Entrada (download) de dados LegendO[lo]: Saída (upload) de dados Legend1[lo]: Tráfego de Entrada (download) de dados em Bits por segundo Legend2[lo]: Tráfego de Saída (upload) de dados em Bits por segundo Colours[lo]: VERDE#008000,AZUL#000080,DARK GREEN#006000,VIOLET#FF00FF XSize[lo]: 550 YSize[lo]: 250 TimeStrPos[lo]: RU #---------------------
# Monitorar UPTIME Uso do processador # Servidor CentOS #--------------------- Target[cpu]: `/etc/mrtg/mrtg-cpu.sh` Title[cpu]: Uso do Processador PageTop[cpu]: <H1>Uso do Processador:</H1> Options[cpu]: gauge, printrouter, growright, noarrow MaxBytes[cpu]: 100 YLegend[cpu]: Porcentagem ShortLegend[cpu]: % LegendI[cpu]: CPU-1 LegendO[cpu]: CPU-2 Legend1[cpu]: CPU-1 utilizada Legend2[cpu]: CPU-2 utilizada Colours[cpu]: AMARELO#FFFF00,VERMELHO#FF0000,DARK GREEN#006000,VIOLET#FF00FF XSize[cpu]: 550 YSize[cpu]: 250 TimeStrPos[cpu]: RU #---------------------------
# Monitoramento do ping do servidor # Servidor CentOS #----------------- Target[ping]: `/etc/mrtg/ping.sh` Title[ping]: Monitoramento do Link de Internet (PING) MaxBytes[ping]: 4000 PageTop[ping]: <H1>Monitoramento do Link (Ping):</H1> Options[ping]: growright,unknaszero,nopercent,gauge LegendI[ping]: Pacotes Perdidos % LegendO[ping]: Media RTT YLegend[ping]: RTT (ms) XSize[ping]: 550 YSize[ping]: 250 TimeStrPos[ping]: RU # final do arquivo de configuração #-------------------------------------------------------------------------------------------------------- ------------------- Criar o arquivo mrtg-cpu.sh: comando: vim /etc/mrtg/mrtg-cpu.sh Dentro do arquivo coloque a seguinte linha de comando: #!/bin/bash echo 0 uptime cut-d"," -f4 tr -d '. '
Criar o arquivo ping.sh: comando: vim /etc/mrtg/ping.sh Dentro do arquivo coloque a seguinte linha de comando: #!/bin/sh PING="/bin/ping" # Google, for example ADDR="google.com" DATA=`$PING -c10 -s500 $ADDR -q ` LOSS=`echo $DATA awk '{print $18 }' tr -d %` echo $LOSS if [ $LOSS = 100 ]; then else fi echo 0 echo $DATA awk -F/ '{print $5 }' ############################################################### ###
Dar permissões de escrita e leitura a todos: comando: chmod 0777 mrtg-cpu.sh cpu.sh eth1.sh ping.sh Gerar o arquivo index.html: comando: indexmaker --output=/var/www/mrtg/index.html /etc/mrtg/mrtg.cfg E por fim acesse o endereço no navegador: http://localhost:8080/mrtg/index.html
Gráficos
Bibliografia Links para acesso: 1 - www.teleco.com.br http://www.teleco.com.br/tutoriais/tutorialgmredes1/pagina _3.asp 2 - oss.oetiker.ch/mrtg/ http://oss.oetiker.ch/mrtg/doc/mrtg.en.html 3 - http://pt.wikipedia.org/ http://pt.wikipedia.org/wiki/multi_router_traffic_grapher 4 - www.youtube.com https://www.youtube.com/watch?v=2mveelgeff8 5 - pt.slideshare.net http://pt.slideshare.net/fred_m/mrtg-snmpna-prtica 6 - vandersononerd.blogspot.com.br http://vandersononerd.blogspot.com.br/2013/04/instalacao- domrtg-no-linux-centos-64.html