Segundo o site
www.cacti.org, o Cacti é uma solução gráfica completa de rede desenvolvida para aproveitar o poder de armazenamento e funcionalidades gráficas do RRDTool's.
Trata-se de uma interface e uma infra-estrutura para o RRDTool, que é o responsável por armazenar os dados recolhidos e por gerar os gráficos... (COSTA, 2008,p.43).
Sua instalação não é complexa e seu grau de flexibilidade é alto, graças a sua licença open source, que faz com que o software acompanhe o código fonte.
Ele utiliza o protocolo SNMP(Simple Network Management Protocol).
Segundo Assunção (2002), o SNMP ou Protocolo de gerenciamento de rede simples é utilizado para obter informações detalhadas sobre contas de usuários, servidor ou ativo na rede.
Com o Cacti, é possível monitorar toda a rede de computadores e obter informações sobre consumo de banda, consumo de memória de cada servidor, consumo de disco, uso de processador, usuários logado em cada máquina, uso de banda em cada porta do switches e muitas outras informações.
Utilizando os plugins existentes para ele pode-se mostrar o mapa da sua rede com o fluxo de consumo de banda, ativar alertas, ativar envio de email casa algum servidor ou ativo saia do ar.
Dependências básicas
Antes de instalar o Cacti é necessário realizar a instalação de suas dependências.
Este pacote contém uma lista informativa de pacotes que são considerados essenciais ("build-essential") para a construção de pacotes Debian. Este pacote também depende dos pacotes dessa lista para facilitar a instalação dos pacotes "build-essential".
# apt-get install build-essential
Este é um front-end para o comando update-rc. Permite a você controlar que serviços serão iniciados automaticamente em seu sistema operacional, bem parecido com "ntsysv da distribuição Red Hat.
# apt-get install rcconf
Ncurses é uma biblioteca que provê uma API para o desenvolvimento de interfaces em modo texto.
# apt-get install libncurses5-dev
Biblioteca de código-fonte aberto para a criação de imagens dinâmicas:
# apt-get install libgd2-xpm
Libxpm-dev consiste em um formato de imagem do ASCII e de uma biblioteca em C.
# apt-get install libxpm-dev
Libpng12-dev é uma biblioteca de referência de imagens PNG.
# apt-get install libpng12-dev
Libgdbm-dev é uma sequência de rotinas de banco de dados que utilizam hash extensivo.
# apt-get install libgdbm-dev
Rrdtool é um sistema base de dados round-robin, criado por Tobias Oetiker sob licença GNU/GPL. Foi desenvolvido para armazenar séries de dados numéricos sobre o estado de redes de computadores, porém pode ser empregado no armazenamento de qualquer outra série de dados como temperatura, uso de CPU etc. RRD é um modo abreviado de se referir a Round Robin Database (base de dados round-robin).
A base de dados gerada possui um tamanho máximo o qual, uma vez atingido, não é ultrapassado. Os dados numéricos armazenados são consolidados conforme a configuração fornecida, de modo que a resolução deles seja reduzida de acordo com o tempo que estão armazenados. Neste processo, apenas as médias dos valores antigos são armazenados.
O patch será utilizado quando for realizar a instalação do plugin base do Cacti.
# apt-get install patch
# apt-get install rrdtool
Instalação das dependências (SNMP, unzip)
O
protocolo SNMP é um protocolo de gerência típica de redes TCP/IP, da camada de aplicação que facilita o intercâmbio de informação entre os dispositivos de rede. O SNMP possibilita aos administradores de rede gerenciar o desempenho da rede, encontrar e resolver problemas de rede, e planejar o crescimento desta.
# apt-get install snmp
# apt-get install snmpd
# apt-get install libnet-snmp-perl libsnmp-base
Este software será utilizado para descompactar os plugins que serão abaixados mais a frente.
# apt-get install unzip
[1] Comentário enviado por
Thalysson S em 03/02/2011 - 21:05h:
Gostei do artigo. Muito bom mesmo !
Abraço
[2] Comentário enviado por
alefesampaio em 06/02/2011 - 22:29h:
Realmente muito bom seu artigo
[3] Comentário enviado por
cristian_lacerda em 07/02/2011 - 11:09h:
Parabéns seu artigo esta muito bom, tive problemas somente com o NTOP que não está funcionando, acredito que seja algo na autenticação, tem alguma dica?
[4] Comentário enviado por
ailson guerra em 07/02/2011 - 12:29h:
Um erro que já vi ocorrer com o Ntop + cacti, é que quando se instala o plugin do Ntop no cacti o serviço do Ntop da problema.
Nesse caso basta reiniciar o serviço do ntop.
/etc/init.d/ntop restart
Abraços.
[5] Comentário enviado por
heigormaeda em 04/03/2011 - 10:37h:
Parabéns pelo artigo,muito bom!
Entretanto preciso de uma ajuda, fiz tudo como passou mas na hora de configurar os plugins via WEB a aba Plugin Management não aparece..
Oque será que fiz de errado.
Valew
[6] Comentário enviado por
ailson guerra em 04/03/2011 - 10:55h:
Amigo você tem que ir em User Management.
No fim da pagina vai ter uma aba chamada Realm Permissions.
Lá você concede permissão para o seu usuário visualizar esta aba.
Abraços.
[7] Comentário enviado por
heigormaeda em 04/03/2011 - 11:34h:
Fui até lá, todas opções estão habilitadas, mas não aparece nada.
Obraços
[8] Comentário enviado por
ailson guerra em 04/03/2011 - 11:40h:
Verifique a instalação do plugin Architeture.
Quando ocorre algum erro na instalação deste plugin, ele não habilita todos os plugins instalados.
Verifique também se o setting está instalado.
Lebrando que deve obedecer a ordem a seguir no arquivo de configuração.
$plugins = array();
$plugins[] = 'settings';
$plugins[] = 'thold';
$plugins[] = 'monitor';
$plugins[] = 'ntop';
$plugins[] = 'update';
$plugins[] = 'tools';
$plugins[] = 'weathermap';
Abraços.
[9] Comentário enviado por
heigormaeda em 04/03/2011 - 11:48h:
No inicio do tópico quando pede para digitar o comando
# patch -p1 -N --dry-run < cacti-plugin-0.8.7g-PA-v2.8.diff , quando eu digito ta gerando uma falha.
Hunk #1 FAILED at 183
1 out of 1 hunk FAILED -- saving rejects
THE next patch would create the file plugins/index.php,
which already exists! Skipping patch.
1 out of 1 hunk ignored
patching file poller php
Hunk #1 FAILED at 108
Hunk #2 FAILED at 304
Hunk #3 FAILED at 446
Hunk #4 FAILED at 495
4out of 4 hunks FAILED -- saving rejects to file poller.php.rej patching file user_admin.php.
Não sei se te algo a ver.
Abraços
[10] Comentário enviado por
ailson guerra em 04/03/2011 - 12:00h:
Faça manualmente então.
entre na pasta /usr/share/cacti/cacti-plugin-arch/files-0.x.xx/include/
copie os arquivos recursivo desta pasta para a pasta do cacti.
Depois reinicie o processo a partir de
Edite o arquivo: /usr/share/cacti/site/include/global.php
[11] Comentário enviado por
heigormaeda em 04/03/2011 - 12:06h:
Cara muito obrigado por sua atenção e desculpa o trabalho, é que estou iniciando no Linux.
só saberia fazer com passo a passo. não sei nem oque são arquivos recursivos.
Mas agredeço seu apoio.
Abraços
[12] Comentário enviado por
heigormaeda em 04/03/2011 - 13:32h:
Ailson fiz com vc pediu e nada.
Acesso o cacti mas não aparece os plugins.
Será que deve inciar tudo do inicio?
Abraços
[13] Comentário enviado por
ailson guerra em 04/03/2011 - 15:00h:
Quando você inclui o array dos plugins na função plugin array no arquivo /usr/share/cacti/site/include/config.php
Você colocou na ordem abaixo?
Em testes que realizei se eles não tiverem nessa ordem dava problema justamente com o setting não deixando você configurar os plugins
plugins = array();
$plugins[] = 'settings';
$plugins[] = 'thold';
$plugins[] = 'monitor';
$plugins[] = 'ntop';
$plugins[] = 'update';
$plugins[] = 'tools';
$plugins[] = 'weathermap';
se Sim, verifique se no menu lateral direito tem a opção Plugin Management
se Sim, verifique se algum plugins esta desabilitado ou desinstalado.
Se algum deles estiver, click em habilitar ou instalar (install).
Feito isto, vá novamente em User Management.
No fim da pagina vai ter uma aba chamada Realm Permissions.
Lá você concede permissão para o seu usuário visualizar esta aba.
Abraços
[14] Comentário enviado por
mrtorture em 29/04/2011 - 14:42h:
Após executar a linha
# patch -p1 -N < cacti-plugin-0.8.7g-PA-v2.8.diff
Os gráficos do Cacti desapareceram e apareceram os seguintes erros:
Notice: Undefined variable: config in /usr/share/cacti/site/lib/functions.php on line 1655
Notice: Undefined variable: config in /usr/share/cacti/site/lib/functions.php on line 1656
Tens idéia do que pode ser? Faltou alguma dependência talvez?
Se puder ajudar, agradeço!
[15] Comentário enviado por
ailson guerra em 29/04/2011 - 15:09h:
Amigo nessas linhas citadas estão as funções do banco de dados.
vai no arquivo config.php
#vim /usr/share/cacti/site/include/config.php
la procure por esta parte
* make sure these values refect your actual database/host/user/password */
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "usuario que o cacti usa pra conectar no bando de dados";
$database_password = "*********";
$database_port = "3306";
verifique se o usuário do mysql e a senha estão corretas.
[16] Comentário enviado por
mrtorture em 02/05/2011 - 11:42h:
Olá Ailson,
no config.php só consta a linha
$database_type = "mysql";
Adicionei as demais e nada mudou.
O erro exibido é o seguinte:
http://i52.tinypic.com/15heef5.png
[17] Comentário enviado por
ailson guerra em 02/05/2011 - 17:11h:
Amigo então você vai colocar abaixo do $database_type = "mysql";
essas linhas:
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "usuario que o cacti usa pra conectar no bando de dados";
$database_password = "*********";
$database_port = "3306";
onde esta usuario que o cacti usa para conectar coloque o que você cadastrou? se seguiu o tutorial vai ser cactiuser
onde esta ****** é a senha para para o usuario acessar o banco. se seguiu o tutorial e aceitou as opções padroes vai ser cactiuser
Espeto ter ajudado
Abraços
[18] Comentário enviado por
kimbundo em 26/05/2011 - 10:40h:
Boa Tarde Ailson Ferreira Guerra.
Felicito-te pelo o Artigo, dizer desde já que o meu cacti esta operacional. segundo o seu Artigo Parabens.
Ailson, como elogio algumas vezes vem acompanhado de alguma coisa heheheheheh. preciso do seu aopoio ou de alguem que ja tivera passado por esta situação.
NTop= nao mostra nenhuma informação (nao colheta) informação nenhuma. mesmo estando
Weathermap= You Have No Maps
Name Description** Type Status Author Web Page Version
Monitor Device Monitoring Old PIA Active Jimmy Conner
http://cactiusers.org 0.8.2
Settings Global Plugin Settings System Active Jimmy Conner
http://cactiusers.org 0.5
Ntop NTop Viewer Old PIA Active Jimmy Conner
http://cactiusers.org 0.1
Weathermap PHP Network Weathermap Old PIA Active Howard Jones
http://www.network-weathermap.com/ 0.97a
Update Update Checker Old PIA Active Jimmy Conner
http://cactiusers.org 0.4
Caso alguem estiver desponivel a solução da minha duvida obrigado.
obrigado
[19] Comentário enviado por
ailson guerra em 26/05/2011 - 15:02h:
Boa Tarde Jose Antonio,
Em primeiro Lugar Gostaria de Agradecer pelo elogio, e o Sr. pode contar comigo sim, então vamos la?
NTOP
Reconfigura a senha do Ntop
# ntop -A
Reinicie o Serviço
#/etc/init.d/ntop restart
No cacti vá em Console -> Settings -> Misc
Procure pelo campo NTop URL, E coloque nele o ip do seu servidor com o parâmetro da porta 3000. Ex.:
http://192.168.100.10:3000
Weathermap
Você precisa criar o seus mapas, para tal altere o arquivo editor.php
#vim /usr/share/cacti/site/plugins/weathermap/editor.php
Dentro do arquivo procure pela linha
$ENABLED=false;
E Mude para:
$ENABLED=true;
Feito isto vá em Console -> Weathermaps -> Weathermap Editor ( ele fica no rodapé em uma tarja azul). ele irá abrir uma pagina para você criar o mapa da sua rede utilizando seus servidores e ativos cadastrados.
Em relação à:
"Name Description** Type Status Author Web Page Version
Monitor Device Monitoring Old PIA Active Jimmy Conner
http://cactiusers.org 0.8.2
Settings Global Plugin Settings System Active Jimmy Conner
http://cactiusers.org 0.5
Ntop NTop Viewer Old PIA Active Jimmy Conner
http://cactiusers.org 0.1
Weathermap PHP Network Weathermap Old PIA Active Howard Jones
http://www.network-weathermap.com/ 0.97a
Update Update Checker Old PIA Active Jimmy Conner
http://cactiusers.org 0.4"
Não entendi sua duvida me desculpe, peço que me explique o que deseja.
=)
Espero ter ajudado.
Em breve estarei enviando novos artigos para ajudar na configuração e utilização do Cacti, inclusive com novas funcionalidade, tais como uso de link em tempo real, monitoramento de serviços em maquinas Windows e Linux .
E estou esperando a Aprovação de um script para realizar o Backup automático do banco do cacti.
Espero ter ajudado a sanar suas duvidas.
Att. Ailson F. Guerra
[20] Comentário enviado por
tacortes em 03/10/2011 - 16:41h:
Desculpe a minha pergunta idiota, pois sou novo no linux.
No meu arquivo: /usr/share/cacti/site/include/global.php
tem as linhas
$config['url_path'] = '$url_path';
define ('URL_PATH', $url_path);
eu tenho que substituir por :
$config['url_path'] = '/cacti/';
define ('URL_PATH', /cacti/);
[21] Comentário enviado por
ailson guerra em 03/10/2011 - 17:32h:
Boa Tarde,
O parametro 'url_path' serve apenas para informar onde se encontra os arquivos.
Seria a pasta raiz dos documentos e arquivos do cacti.
Em relação a não existir a linha "$config['url_path'] = '/'; , isto quer dizer que o plugin Architeture ainda não foi instalado.
Atenciosamente,
Ailson F. Guerra
[22] Comentário enviado por
tacortes em 03/10/2011 - 18:00h:
eu verifiquei que no meu arquivo: /usr/share/cacti/site/include/global.php
tem sim as linhas
$config['url_path'] = '$url_path';
define ('URL_PATH', $url_path);
eu tenho que substituir por :
$config['url_path'] = '/cacti/';
define ('URL_PATH', /cacti/);
?
[23] Comentário enviado por
ailson guerra em 03/10/2011 - 19:57h:
Boa Noite,
Olhe acima no mesmo arquivo onde encontrou:
$config['url_path'] = '$url_path';
define ('URL_PATH', $url_path);
Procure pela seguinte função:
/* set URL path */
if (! isset($url_path)) {
$url_path = "/";
}
$config['url_path'] = $url_path;
define('URL_PATH', $url_path);
Mude para
/* set URL path */
if (! isset($url_path)) {
$url_path = "/cacti/";
}
$config['url_path'] = $url_path;
define('URL_PATH', $url_path);
Dependendo da versão do Cacti e do plugin Architeture pode haver variações da forma de configuração.
Espero ter ajudado.
Atenciosamente,
Ailson F. Guerra
[24] Comentário enviado por
gabolli em 08/11/2011 - 11:08h:
Boa dia amigo, estou com um problema serio aqui pois estou fazendo um trabalho de gerenciamento e peguei como ferramenta o cacti porem instalado tudo como esta no manual porem na hora que vou abrir o navegador ele da muitos erros naum deixa eu entrar no cacti-web.
aqui esta a tela com os erros
http://imageshack.us/photo/my-images/84/imagemluy.png/ fico grato se alguem me der uma luz... ps: estou utilizando a distribuição debian lenny
[25] Comentário enviado por
tacortes em 15/11/2011 - 12:33h:
Bom dia Ailson,
segui o seu artigo e esta tudo funcionando perfeitamente!!!!
eu so estou com uma dificuldade de adicionar mais dois plugins, o realtime e o manage. ve se voce pode me ajudar em identificar alguma besteira que eu fiz (ou deixei de fazer..rsrsrs)
bom eu fiz o seguinte procedimento para tentar instalar os plugins
baixei o plugin realtime: "wget
http://docs.cacti.net/_media/plugin:realtime-v0.5-1.tgz"
renomiei o arquivo: " cp plugin:realtime-v0.5-1.tgz realtime.tgz"
descompactei o arquivo : " tar -zxvf realtime.tar"
movi os arquivos para o diretorio plugins: "mv realtime /usr/share/cacti/site/plugins"
e fiz o mesmo com o plugin manage
baixei o plugin manage: "http://docs.cacti.net/_media/userplugin:manage-0.6.2.zip"
renomiei o arquivo: " cp userplugin:manage-0.6.2.zip anage.zip"
descompactei o arquivo : " unzip manage.zip"
movi os arquivos para o diretorio plugins: "mv manage /usr/share/cacti/site/plugins"
editei o arquivo "config.php" da seginte forma
vim /usr/share/cacti/site/include/config.php
$plugins = array();
$plugins[] = 'setting';
$plugins[] = 'thold';
$plugins[] = 'monitor';
$plugins[] = 'ntop';
$plugins[] = 'realtime';
$plugins[] = 'manage';
$plugins[] = 'update';
$plugins[] = 'tools';
$plugins[] = 'weathermap';
criei um diretorio: "mkdir /usr/share/cacti/site/plugins/rt_plugin"
e alterei a permição : "chmod 777 /usr/share/cacti/site/plugins/rt_plugin"
apos esse procedimentos, os novos plugins nao aparecem no "Plugin Management" e nem no "Realm Permissions" em "User Management"
vlw pela ajuda!!!
[26] Comentário enviado por
danniel-lara em 19/05/2012 - 10:47h:
Parabéns , pelo artigo
está 100% funcionado no ubuntu 12.04 LTS
bom minha dica é usar o plugin "Disk IO Usage"
muito bom pra ficar monitorando o IO de disco do seu servidor