Posts com a tag: Cacti

Monte topologia no Cacti com o Weathermap

Por , 09/04/2010 11:24

Com o Cacti pronto e funcionando, e com os equipamentos já cadastrados, podemos instalar os plugins (se seu Cacti não estiver pronto ainda veja o post Instalando e Configurando o Cacti).

Como havia prometido, vou mostrar como instalar e configurar o Weathermap, plugin que permite montar topologia, bem como visualizar a utilização dos links.

1.) Faça o download do Weathermap e do cacti-plugin, a partir da pasta root.

$ sudo su
$ cd /root
$ wget http://mirror.cactiusers.org/downloads/plugins/cacti-plugin-0.8.7e-PA-v2.6.zip
$ wget http://www.network-weathermap.com/files/php-weathermap-0.97a.zip

2.) Descompacte o cacti-plugin e mova-o para a pasta /var/www/cacti. Em seguida aplique o patch e configure o MySQL.

$ unzip cacti-plugin-0.8.7e-PA-v2.6.zip
$ mv cacti-plugin-arch/ /var/www/cacti/
$ cd /var/www/cacti/
$ patch -p1 -N < cacti-plugin-arch/cacti-plugin-0.8.7e-PA-v2.6.diff
$ mysql –user=root –password=brainwork cacti < cacti-plugin-arch/pa.sql

3.) Agora vamos editar o arquivo global.php, para corrigir a senha e habilitar o plugin.

$ vim include/global.php

* Na linha 38 altere o campo:
DE:     $database_password = "cactiuser";
PARA: $database_password = "brainwork";
* Na linha 45, altere o campo:
DE:     //$plugins[] = ‘thold’;
PARA: $plugins[] = ‘weathermap’;
* Na linha 56, altere o campo:
DE:     $config['url_path'] = ‘/’;
PARA: $config['url_path'] = ‘/cacti/’;

global.php

4.) Descompacte e mova a pasta do Weathermap para o diretório plugins.

$ cd /root
$ unzip php-weathermap-0.97a.zip
$ mv weathermap /var/www/cacti/plugins/

5.) De um Reload no cacti. Depois, na console (web), selecione User Management > Admin > marque as opções:

* Plugin Management
* Plugin -> Weathermap: Configure/Manage
* Plugin -> Weathermap: View –> Save

Permissão para o usuário Admin
Nesse momento o usuário admin passará a ter permissão para acessar a aba ‘weathermap’.

6.) Agora, vamos mudar a permissão da pasta weathermap, fazer uma cópia do arquivo editor.php-dist, e depois editar a cópia, indicando a pasta onde o plugin foi instalado.

$ cd /var/www/cacti/plugins/weathermap
$ chmod 777 output
$ cp editor-config.php-dist editor-config.php

$ vim editor-config.php
* Na linha 14 altere:
DE:     $cacti_base = ‘C:/httpd-.2_x64/htdocs/cacti’;
PARA: $cacti_base = ‘/var/www/cacti’;
* Na linha 20 altere:
DE:     $cacti_url = "http://support.company.net/cacti/";
PARA: $cacti_url = http://IP/cacti/;

7.)  Vamos habilitando o editor.php e cacti-pick.php para permitir a edição via WEB.

$ vim editor.php
* Na linha 7 altere:
DE:     $ENABLED=false;
PARA: $ENABLED=true;
* Na linha 18 altere:
DE:     $cacti_base = ‘../../’;
PARA: $cacti_base = ‘/var/www/cacti/’;
* Na linha 19 altere:
DE:     $cacti_url = ‘/’;
PARA:     $cacti_url = ‘http://ip/cacti/’;

Editor.php

$ vim cacti-pick.php
* Na linha 6 altere:
DE:     $cacti_base = ‘../../’;
PARA: $cacti_base = ‘/var/www/cacti/’;
* Na linha 7 altere:
DE:     $cacti_url = ‘/’;
PARA: $cacti_url = ‘http://ip/cacti/’;

cacti-pick.php

8.) Ajuste as permissões para escrita no diretório.

$ chown www-data.www-data -R /var/www/cacti*

9.)Finalmente o Weathermap foi instalado e configurado. Agora começa a diversão.

9.1) Adicionando os mapas:

Abra o Cacti (web), selecione a aba weathermap e clique em Editor.  Em seguinda, em Create A New Map coloque o nome do mapa (Map1.conf) e clique em Create.

Create Map

9.2) Agora adicione os hosts existentes no Weathermap e link aos devices cadastrados no Cacti.

a) clique em Add Node e no quadro branco. Aparecera um retângulo escrito Node.
b) Clique no Node inserido e edite-o como abaixo. Depois clique em Submit.
- Em Label coloque o nome do host: BrainCore
- Clique em Pick from Cacti e selecione o host correspondente.
- Em Icon File Name selecione Router (se for um roteador…)

Editando node

Repita este passo para todos os hosts existentes no Cacti.

9.3) Depois dos hosts, vamos criar os links entre eles.
a) clique em Add Link, e em seguida clique nos dois host que serão “linkados”.
b) clique no link para editá-lo.
- Clique em Pick from Cacti e selecione a interface correspondente ao link que será monitorado.

Editando link

Repita este item para todos os link que serão monitorados. E você pode alterar também a velocidade do link, no campo Maximum Bandwidth (o padrão é 100 Mbps).

As informações referentes aos nodes e links que foram criados ficam armazenados em um arquivo (neste exemplo Map1.conf) na pasta /var/www/cacti/plugins/weathermap/configs. Caso necessário você pode alterá-lo via linha de comando.

* Toda alteração feita no Weathermap é salva automaticamente.

10.) De volta ao Linux, vamos adicionar a geração dos gráficos do Weathermap ao Crontab (para que seja atualizado).

$ vim /etc/crontab
# MapTest
*/5 *   * * *   root    php /var/www/cacti/plugins/weathermap/weathermap –config /var/www/cacti/plugins/weathermap/configs/MapTest.conf –output /var/www/cacti/plugins/weathermap/output/MapTest.png –htmloutput /var/www/cacti/plugins/weathermap/output/MapTest.html

Weathermap e Crontab

11.) Tá acabando!!! Só falta adicionar o mapa para visualização.
Clique na aba Console -> Weathermaps –> Add. Na linha onde encontra-se Map1.conf clique em Add. Aí basta clicar na aba weathermap para ver o mapa (pode demorar 5 minutos para atualizar).
É isso.

Mapa criado com ícones padrão

Já esta tuto funcionando, mas você pode melhorar o layout da topologia, copiando outras imagens para a pasta /var/www/cacti/plugins/weathermap/images.

Topologia final, com outros ícones:

Topologia pronta 2

Mais informações podem ser encontradas em:
http://www.network-weathermap.com/manual/latest/
http://www.network-weathermap.com/manual/latest/pages/main.html#basics

Agora temos o Cacti e o Weathermap prontos, ficando a cargo de cada um adicionar outros plugins ao sistema.

Até a próxima.

Instalando e configurando o Cacti

Por , 07/04/2010 11:22

Após uma breve introdução ao Cacti e ao Weathermap, vou mostrar com instalar e configurar os dois. Nesta primeira parte vamos fazer o Cacti apenas, que é o sistema base. Depois falaremos do Weathermap, plugin para ilustrar a topologia da rede.

Antes de começar, quero de publico agradecer ao Daniel Gurgel, que acompanha o blog e sempre participa, deixando comentários e sugestões. Este tutorial foi idéia dele, sendo que além de sugerir o tópico ele mandou um passo a passo para facilitar meus testes e ainda me ajudou a fazer as configurações no Linux.

Voltando ao que interessa, o Cacti foi instalado no Ubuntu Server 10.4, que pode ser baixado gratuitamente neste link.

                                                         Cacti Ubuntu

Instalando o Cacti

1.) Entre no modo privilegiado, e a partir da pasta root faça o download e instale o Cacti e suas dependências bem como os software que serão utilizados.

$ sudo su
$ cd /root
$ wget http://www.cacti.net/downloads/cacti-0.8.7e.tar.gz
$ aptitude install apache2 mysql-server mysql-client php5-cli snmp rrdtool libapache2-mod-php5 php5 php5-cgi php5-gd php5-snmp php5-mysql php-pear chkconfig patch zip unzip

*Quando solicitado confirme a senha do usuário root (mysql). No caso usamos a senha "brainwork".

2.) Após a instalação verifique o status do Apache e do MySQL.

$ service apache2 status
resultado> Apache is running (pid 12345).
$ service mysql status
resultado> mysql start/running, process 67890
$ chkconfig –list apache2
apache2                   0:off  1:off  2:on   3:on   4:on   5:on   6:off
$ chkconfig –list mysql
mysql                     0:off  1:off  2:off  3:off  4:off  5:off  6:off

3.) Corrija a inicialização do MySQL.

$ update-rc.d mysql defaults

4.) Descompacte o Cacti, e em seguida crie um “link” para a sua pasta.

$ tar xvf cacti-0.8.7e.tar.gz -C /var/www/
$ ln -s /var/www/cacti-0.8.7e/  /var/www/cacti

5.) Aplique os paths do Cacti.

$ cd /var/www/cacti
$ wget
http://www.cacti.net/downloads/patches/0.8.7e/cli_add_graph.patch
$ wget http://www.cacti.net/downloads/patches/0.8.7e/snmp_invalid_response.patch
$ wget http://www.cacti.net/downloads/patches/0.8.7e/template_duplication.patch
$ wget http://www.cacti.net/downloads/patches/0.8.7e/fix_icmp_on_windows_iis_servers.patch
$ wget http://www.cacti.net/downloads/patches/0.8.7e/cross_site_fix.patch
$ patch -p1 -N < cli_add_graph.patch
$ patch -p1 -N < snmp_invalid_response.patch
$ patch -p1 -N < template_duplication.patch
$ patch -p1 -N < fix_icmp_on_windows_iis_servers.patch
$ patch -p1 -N < cross_site_fix.patch

6.) Ajuste as permissões no MySQL, para o usuário cactiuser.

$ mysqladmin –user=root create cacti -pbrainwork
$ mysql –user=root mysql -pbrainwork
mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY ‘brainwork’;
mysql> flush privileges;
mysql> quit
$ mysql –user=root –password=brainwork cacti < cacti.sql

*Obs: case sensitive.

7.) Edite o arquivo config.php, cadastrando a senha utilizada anteriormente (brainwork) na linha $database_password.

$ vim include/config.php
$ database_password = "brainwork";

8.) Adicione o Cacti ao Crontab (poller a cada 5 minutos).

$ vim /etc/crontab
# Cacti Poller
*/5 *   * * *   root    php /var/www/cacti/poller.php > /dev/null 2>&1

Adicionando o Cacti ao Crontab

9.) O Cacti já foi instado, e podemos acessá-lo via Web.

Abra o browser de sua escolha e digite http://ip/cacti/
Na janela que abrirá, clique Next > New Install, Next > Finish. Em seguida faça o login, com usuário admin e senha admin. O Cacti solicitará que a senha seja alterada.

Com isto finalizamos a instalação do Cacti. Agora já é possível cadastrar os equipamentos (roteadores, switches, firewall, etc…) e monitorá-los individualmente (CPU e utilização das interfaces, por exemplo).

Cadastrando um equipamento no Cacti

O Cacti verifica o host através de PING (que pode ser ICMP, UDP ou TCP) e SNMP. O ICMP vai servir para verificar o caminho até o dispositivo, mas é o SNMP que permite a coleta de informações como a utilização do processador e da memória, entre outros.

Assim é necessário que o equipamento que vai ser monitorado possua uma comunidade Read-only.

10.) Na aba console (web), clique em Device e depois em Add (canto superior direito).

Preencha os seguintes campos:
* Description: BrainCORE
* Hostname: 10.10.10.1
* Host Template: Cisco Router
* SNMP Version: Version 2
* SNMP Community: brain_work_com_ro
* Downed Device Detection: Ping and SNMP
* Ping Method: ICMP Ping

Inserindo um host

Após preencher os dados clique em Create.

Caso esteja tudo certo você verá informações do equipamento, trazidas pelo SNMP e pelo Ping.

Host salvo com sucesso

12.) Criando gráficos para o equipamento.

Vamos criar dois gráficos para esse switch: Utilização de CPU e utilização da interface F0/8 (uplink).
Para isso clique em “*Create Graphs for this Host”, e na tela que se abrirá selecione a opção “Create: Cisco – CPU Usage" e a interface FastEthernet0/8.

Criando Gráfico

Em seguida clique em Create, e na página seguinte novamente Create.

13.) Adicione o gráfico a árvore de gráficos.

Selecione no menu do lado esquerdo Graph Trees > Default Tree e então Add.

Preencha os campos:
* Tree Item Type: Host
* Host: BrainCore (equipamento cadastrado anteriormente, no item 10)

Graph Tree

Clique Create e em seguida em Save.

* Repita o processo (itens 10, 11, 12 e 13) para cada equipamento que você deseja monitorar.

14.) Visualizando os gráficos.

Basta clicar na aba graphs para ver os hosts cadastrados do lado esquerdo. Selecione um host e você verá os seus gráficos.

Gráficos BrainCore

Aqui finalizamos a primeira parte do tutorial.

Note que por enquanto temos apenas o Cacti, com suas funcionalidades básicas, já que nenhum plugin foi utilizado.

Fica por conta de cada um instalar os plugins que acharem necessário, lembrando que em breve postarei um tutorial para a instalação e configuração do Weathermap.

Dica: Além do Weathermap, já citado, outros plugins úteis são o Monitor, que verifica se o equipamento está no ar (UP, Down…), o Thold, que permite a criação de thresholds e envio de alertas, e ainda o RealTime, que gera gráficos em Real Time.

Mais informações sobre o Cacti, documentação, How To e Plugins aqui.

Até a próxima.

Monitorando a rede com o Cacti + Weathermap

Por , 25/03/2010 11:10

Um software bacana (e gratuito) para ajudar na administração de redes é o Cacti. Ele é capaz de coletar informações e gerar gráficos, inclusive em real time.

Usando PHP e MySQL, e com estrutura modular, este software permite adicionar plugins de acordo com a necessidade, além de ser totalmente customizavel.

 

Ele é capaz de monitorar e mostrar graficamente se um host está UP ou Down, armazenar syslog, gerenciar arquivos de configuração, com backups agendados, e através de SNMP pode monitorar a “saúde” dos equipamentos, verificando memória, processamento, utilização de interfaces…

Também é possível criar usuários com níveis de privilégio diferenciado (por exemplo, da para criar um usuário que tenha acesso apenas aos gráficos). E o Cacti pode ainda gerar alertas por email, caso os thresholds sejam atingidos.

Um dos plugins mais interessantes é o Network Weathermap, que permite criar a topologia da rede, e ilustra a utilização dos links.

Um exemplo da utilização do Cacti com o Weathermap pode ser visto neste link, enviado pelo Daniel Gurgel (que também mandou um passo a passo para a instalação, que espero um dia publicar…).

Estas são apenas algumas funcionalidades deste software livre, que conta com versões para Windows e Linux.

Site do Cacti

Site do Weathermap

Até a próxima.

Tema Brainwork 0.2(beta)