|
Monitoramento do Uso da Rede em Sistemas Unix Like por meio do BandwidthD: msg#02630culture.publications.dicas
Monitoramento do Uso da Rede em Sistemas Unix Like por meio do BandwidthD ========================================================================= Colaboração: José Messias Alves da Silva O BandwidthD é um sistema de monitoramento que rastreia o uso de subredes TCP/IP e constrói arquivos HTML com gráfico para mostrar a utilização da rede. Os gráficos são construídos individualmente para cada IP e mostra sua utilização em vários períodos de tempo. Ele usa uma legenda de cores para demonstrar o tráfego em diferentes protocolos. Diferentemente do MRTG (http://people.ee.ethz.ch/~oetiker/webtools/mrtg/), ele varre cada endereço IP e subredes e não o estado dos links. Há dois modos de configuração, o modo estático e o modo em banco de dados. O modo estático é rápido e fácil de configurar e tem poucas dependências. O modo banco de dados suporta filtragem por subrede, sensores, relatórios customizados e intervalos, e pode processar milhares de IPs eficientemente. A utlização da rede pode ser guardada em formato CDF ou em um banco de dados como PostGreSQL. Nesta dica nos ateremos a configuração em modo estático. BandwidthD pode ser compilado para várias plataformas operacionais Unix Like: | ix86 | Solaris 9 | | | Debian 3.0 | | | Fedora Core 2 | | | OpenBSD 3.8 | | | FreeBSD 5.6 | | | NetBSD 3.0 | | AMD64 | Fedora Core 3 | | PPC G4 | MacOSX 10.2 | - Site do Projeto para efetuar o download: http://bandwidthd.sourceforge.net/ - Site de Demonstração: http://bandwidthd.sourceforge.net/demo/ Para instalação e uso do Sistema é necessário que um servidor web esteja instalado para exibição dos relatórios em HTML, de preferência o Apache . Caso fosse utilizado modo banco de dados utilizando PostGreSQL seria necessária a instalação também de PHP4 ou posterior. É também necessário que as seguintes bibliotecas estejam devidamente instaladas: - libpng: http://www.libpng.org/ - libgd: http://www.boutell.com/gd/ - libpcap: http://www.tcpdump.org/ Instalação ========== Todos os passos devem ser efetuados como root e dentro do diretório desse usuário. Para esta dica foi utilizada a versão 2.0.1 baixada em: http://ufpr.dl.sourceforge.net/sourceforge/bandwidthd/bandwidthd-2.0.1.tgz Após baixada a versão, realiza-se os seguintes passos: # tar -xvzf bandwidthd-2.0.1.tgz # cd bandwidthd-2.0.1 # ./configure && make install Após a instalação, passemos para a configuração. Configuração ============ O arquivo de configuração do BandwidthD é relativamente pequeno, possuindo poucas opções de configuração. Deve-se configurar basicamente a rede e subredes que serão monitoradas e por qual(is) interfaces. O arquivo de configuração encontra-se em /etc/bandwidthd/bandwidthd.conf . Abaixo um exemplo do arquivo: #################################################### # Bandwidthd.conf # Exemplo de Configuração # Subredes que o sistema irá capturar informações. # O tráfego que não corresponder a nenhuma dessas redes # será ignorado. # A Sintaxe é o IP da Subrede e a máscara subnet 10.0.0.0 255.0.0.0 subnet 192.168.0.0/24 # Pode ser utilizada # esse terminologia também # Interface a ser escutada # Bandwidthd escuta na primeira que detecta por default. # Pode-se rodar "bandwidthd -l" para listar os dispostivos # que ele detectou. dev "eth0" ################################################### # As opções abaixo não são frequentemente modificadas # Mas segue algumas explicações ################################################### # Intervalo em minutos ele aguarda antes de # gerar um novo gráfico. Normalmente se utiliza algo # entre 2.5 e 5.0 #skip_intervals 0 # Aqui é quantidade de kbytes que devem ser transferidos por um ip antes gerar seu gráfico #graph_cutoff 1024 # Coloca a interface em modo promíscuo, pegando até mesmo # pacotes que não são roteados pela máquina #promiscuous true # Criar o log das informações em um arquivo # CDF em htdocs/log.cdf #output_cdf false # Ler o arquivo CDF anterior ao iniciar #recover_cdf false # Formato da String de Filtro Libpcap usada para controlar # o que o bandwidthd vasculhará. Normalmente se inclui # a palavra "ip" dentro da string para evitar problemas # estranhos. Esta opção é pouco usada. Exemplo: filter # "ip and host 192.168.0.1" #filter "ip" # Desenha os gráficos. O default é true. Normalmente # só se utiliza false quando se deseja apenas guardar # os logs cdf em um banco de dados sem gerar gráficos. # Quando se põe false, o BandwidthD usa muito menos da CPU # e da memória RAM. graph true # Ajusta o valor em segundos de META REFRESH, que é # atualização do gráficos (default 150, use 0 para # desabilitar). #meta_refresh 150 Rodando ======= Após realizada a compilação com sucesso, vamos botar pra rodar. # ./bandwidthd Em seguida, verificando se foi carregado corretamente. # ps ax Se não ocorrer "bandwidthd <defunct>", signifca que não há nenhum erro de configuração e o sistema está rodando normalmente. Caso contrário, verifica-se novamente os detalhes da configuração e tenta-se novamente. Ajustes ======= O BandwidthD gera as imagens e o código HTML no diretório /var/lib/bandwidthd/htdocs/. Para a exibição das páginas, é necessário que se crie um link simbólico /var/www/bandwidthd/. # ln -s /var/lib/bandwidthd/htdocs/ /var/www/bandwidthd/ Para finalizar os logs, normalmente se reinicia o BandwidthD. Pode-se colocar para realizar isto automaticamente inserindo a seguinte a linha no crontab: 0 0 * * * * /bin/kill -HUP `cat /var/run/bandwidthd.pid` Posteriormente, pode-se criar um script para organizar os logs e para inicializar e parar o sistema. Para finalizar, pode-se testar o sistema acessando o servidor web no diretório bandwidthd. http://localhost/bandwidthd/ Considerações Finais ==================== Alguns questionam o fato de o BandwithD consumir muito recursos da CPU. Entretanto, isso não constitui uma verdade, visto que baseado em testes realizados, o consumo assemelha-se a de qualquer outro aplicativo de monitoramento. Pode ser que em versões anteriores isto tenha acontecido, porém, atualmente, isso com certeza não ocorre. Espera-se que a instalação desse sistema seja de grande utilidade para Administradores de Redes que necessitam frequentemente estar averiguando se a rede está sendo utilizada de forma correta e eficiente. |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | Instalando pacotes binários no Slackware: 02630, Rubens Queiroz de Almeida |
|---|---|
| Next by Date: | Privacidade no SSH: 02630, Rubens Queiroz de Almeida |
| Previous by Thread: | Instalando pacotes binários no Slackwarei: 02630, Rubens Queiroz de Almeida |
| Next by Thread: | Privacidade no SSH: 02630, Rubens Queiroz de Almeida |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |