Implantando e testando o CACTI em uma rede empresarial
Rafael Pedrotti Boscari
Curso de Especialização em Redes e Segurança de Sistemas
Pontifícia Universidade Católica do Paraná
Curitiba, novembro de 2010
Resumo
O objetivo deste trabalho é criar um artigo que liste o passo a passo para se
implantar e testar uma das ferramentas mais conhecidas no meio de gerencia de redes, o
CACTI. Para fazer a implantação do software e realizar seus testes, será utilizada a
aplicação chamada de Virtual Box da Oracle na versão 3.2.8, que cria um ambiente
virtualizado, buscando otimizar os recursos. O sistema operacional utilizado será o Debian
na versão netinst 5.05.
1 Introdução
Com o aumento da complexidade da infra-estrutura das empresas, a presença de um
software de monitoramento de redes, se torna algo indispensável para o bom funcionamento
da mesma. Por causa desta necessidade, apareceram várias ferramentas de monitoramento,
criando uma demanda para artigos que trouxessem informações de como implantar tais
ferramentas.
Neste artigo será mostrado de forma simples e objetiva, um passo a passo de como
criar uma máquina virtual utilizando o software Virtual Box 3.2.8, rodando o sistema
operacional Debian netinst 5.05 e instalar o CACTI e os softwares que são necessários para
que ele funcione perfeitamente. Além do passo a passo, será descrita a ferramenta e serão
mostrados alguns resultados de testes.
O CACTI não funciona sozinho, ele requer alguns softwares para que funcione
perfeitamente e serão abordados todos estes softwares também, para que fique claro ao
usuário o que é necessário e como fazer toda esta configuração.
Este artigo não tem como objetivo dizer que o CACTI é melhor que as demais
ferramentas, apenas quer apresentá-lo como uma alternativa as outras ferramentas existentes,
como o Nagios, Zabbix, etc.
2 CACTI
Como vimos no decorrer deste curso de especialização, precisamos receber
constantemente informações sobre a situação da nossa infra-estrutura, para que possamos
tomar decisões que visem melhorar o desempenho dos nossos recursos.
Segundo a sua definição na Wikipedia [1] (http://pt.wikipedia.org/wiki/Cacti), “o
Cacti é uma ferramenta que recolhe e exibe informações sobre o estado de uma rede de
computadores através de gráficos. Foi desenvolvido para ser flexível de modo a se adaptar
facilmente a diversas necessidades, bem como ser robusto e fácil de usar. Monitora o estado
de elementos de rede e programas bem como largura de banda utilizada e uso de CPU.
1
Trata-se de uma interface e uma infra-estrutura para o RRDTool, que é responsável
por armazenar os dados recolhidos e por gerar os gráficos. As informações são repassadas
para a ferramenta através de scripts ou outros programas escolhidos pelo usuário os quais
devem se encarregar de obter os dados. Pode-se utilizar também o protocolo SNMP para
consultar informações em elementos de redes e/ou programas que suportam tal protocolo.
Sua arquitetura prevê a possibilidade de expansão através de plugins que adicionam
novas funcionalidades.”
Por ser uma ferramenta leve e que faz uso do RRDTool e do SNMP, ela supre a
necessidade de vários administradores de rede no que tange a necessidade de receber
informações sobre os dispositivos de rede e a utilização da banda, fazendo com ele vire um
suíte muito bom para o monitoramente da infra-estrutura da empresa.
2.1 Funcionalidades e Pré-requisitos
Sobre as funcionalidades do CACTI, menciono aqui o artigo “Zabbix – Ferramenta
de Monitoramento” [2] de Adilson Galiano Filho e Jhonatan Geremias, no tópico “2.1 Por
que utilizar o Zabbix?”, que enumeram algumas funcionalidades do CACTI :
•
•
•
•
•
•
•
•
•
•
Número ilimitado de gráficos por host;
Envio de alertas via email
Script personalizado;
Armazenamento configurável de históricos;
Rápido resequenciamento dos itens gráficos;
Suporte completo ao RRDTOOL;
Suporte ao protocolo SNMP;
Modelos gráficos préconfigurados;
Gerenciamento totalmente web;
Multiusuário web com níveis de acessos.
Apesar do artigo utilizado não ser sobre o CACTI, a citação sobre as funcionalidades
do CACTI é perfeita, trazendo de forma completa o que o CACTI nos oferece.
Para ser instalado, o CACTI requer uma máquina com no mínimo Pentium IV, 256 de
RAM e 100MB de espaço em disco. Quanto ao sistema operacional, ele pode ser instalado em
sistemas baseados em Linux e Windows
3 Preparando o ambiente
Neste tópico irei demonstrar como preparar a máquina virtual e instalar o sistema
operacional.
3.1 Virtual Box 3.2.8
O Virtual Box é um software de virtualização, para computadores de arquitetura x86.
Ele foi originalmente criado por uma empresa de desenvolvimento alemã chamada Innotek
GmbH, posterior adquirida pela Sun Microsystems e que hoje faz parte da Oracle
Corporation.
Ele funciona em várias plataformas incluindo, Linux, Mac OS X, Windows XP,
Windows Vista, Windows 7, Solaris and OpenSolaris e suporta em modo host alguns
NetBSD, vários Windows e Linux, DragonFlyBSD, FreeBSD, OpenBSD, OS/2 Warp,
Solaris, OpenSolaris, Haiku, Syllable, ReactOS and SkyOS.
2
Segundo uma pesquisa realizada em 2007 pelo site DesktopLinux.com, o Virtual Box
era o terceiro colocado no ranking de virtualização de sistemas Windows em ambientes
Linux.
O endereço na internet aonde você pode efetuar o download do Virtual Box é
http://www.virtualbox.org , lá também você pode ler a documentação e descobrir mais sobre
este poderoso software.
Ele é distribuído sobre a licença GNU e pode ser usado livremente para fins pessoais e
acadêmicos. Caso deseje usá-lo para fins comerciais, deve entrar em contato com o Oracle
afim de adquirir as licenças para tal.
Como já mencionado, será utilizado neste artigo a versão 3.2.8 que é a mais recente e
estável.
Abaixo postarei alguns screenshots da instalação do aplicativo. Irei rodá-lo em uma
máquina com o Windows 7 Ultimate instalado ( fornecido pela parceria PUCPR/Microsoft),
como possui umas instalação fácil, rápida e intuitiva, não requer nenhum conhecimento
especifico a não ser o de conhecer os procedimentos de instalação de um aplicativo comum a
família de sistemas operacionais Windows.
Utilizando a instalação padrão, será criada uma máquina virtual com o nome de
CACTI, será postado os screenshots dos principais momentos da criação da máquina virtual
de sua configuração.
Figura 1 – Definindo a máquina virtual
Na figura 1, podemos ver a primeira tela para criação de uma máquina virtual, acima
preencheremos o nome da máquina virtual, que no caso é CACTI e abaixo qual o sistema
operacional e a versão dele estaremos instalando.
3
Figura 2 – Memória destinada a máquina virtual
A figura 2 mostra como configuramos a quantidade
disponibilizaremos pra a máquina virtual que estamos criando.
de memória
que
Figura 3 – Tipo de armazenamento do disco rígido da máquina virtual
A figura 3 mostra que a máquina virtual pode ser armazenada de duas formas. O
armazenamento dinâmico expansível é a opção que iremos utilizar, pois ele não aloca todo o
espaço de destinado ao disco rígido da nossa máquina virtual de uma vez e sim vai alocando
conforme formos necessitando deste espaço, está é a melhor opção para uma utilização
melhor dos recursos físicos da máquina. O armazenamento de tamanho fixo aloca todo o
4
espaço de uma vez, mesmo que não esteja sendo ocupado pela máquina virtual, o que deixa
espaços ocupados mesmo estando sem dados.
Figura 4 – Tamanho do disco da máquina virtual
A figura 4 nos mostra como definir o tamanho do disco rígido da nossa máquina
virtual.
Figura 5 – Configuração da rede na máquina virtual
Na figura 5, está sendo configurado como funcionará a rede da máquina virtual. No
campo “Conectado a:”, configuramos a forma como a máquina virtual acessara a rede,
5
podemos criar uma rede virtual, para que funcione entre a máquina real e a máquina virtual ou
podemos usar o modo bridge, que nada mais é do que “usar diretamente” a placa de rede da
máquina real, como se ela fosse mais um computador na rede, sendo visível por todos os
outros computadores que estiverem na rede.
Figura 6 – Configuração para leitura da imagem do Debian Netinst 5.05
Na figura 6, configuramos o arquivo ISO que será carregado quando ligarmos a
máquina virtual, para que possamos instalar o Debian nela.
3.2 Debian Netinst 5.05
Em 16 de agosto de 1993, Ian Murdock criou o Projeto Debian. O objetivo do projeto
era de formar um grupo de pessoas para que criassem um sistema operacional livre. A
distribuição criada teria que possuir como pré-requisito, seguir o mesmo espírito do Linux e
do GNU, ou seja, ser totalmente aberta. O nome do sistema operacional criado pelo grupo foi
a distribuição Debian. A palavra Debian vem da junção das letras DEB do nome Debra, nome
de sua namorada (na época) e das letras do seu nome IAN, DEB+IAN = DEBIAN, uma pena
é que em 2007 eles se divorciaram.
O Debian é um sistema operacional livre, que usa no seu kernel o Linux. Além de
utilizar o Linux, o Debian também usa mais de 25000 pacotes contendo softwares précompilados que possuem a licença GNU. Assim sendo, o sistema operacional Debian,
também é conhecido como Debian GNU/Linux.
Hoje o Debian é a única distribuição Linux de tamanho significativo, que não é
comercial.
A versão Debian netinst é uma versão indicada para quem possui uma conexão
permanente com internet e que pode instalar parte do Debian por ela. Está versão vem apenas
com o necessário para iniciar a instalação do sistema de totaliza cerca de 180MB em um
arquivo que pode ser baixado do site http://www.debian.org/distrib/netinst , escolhendo
imagem que foi feita para o seu hardware. Por ser uma versão mais “enxuta”, será perfeita
6
para funcionar na máquina virtual, juntamente com o CACTI e seus softwares afins, trazendo
uma economia maior.
A versão do Debian 5.05, que é a mais recente e estável, suporta as seguintes
plataformas :
•
•
•
•
•
•
•
•
•
•
i386
amd64
alpha
sparc
arm, armel
powerpc
hppa
ia64
mips, mipsel
s390
O hardware que será utilizado é baseado na arquitetura i386.
Os pré-requisitos de hardware são :
Memória RAM
Espaço em Disco
Mínimo
64MB
1GB
Recomendado
256MB
2GB
A máquina virtual terá a sua disposição 128MB de RAM e espaço de 8GB de disco,
mais do que o suficiente para a instalação dos programas.
Segue abaixo alguns a screenshots das partes mais importantes da instalação do
sistema operacional Debian netinst 5.05 na máquina virtual que criamos.
Figura 7 – A primeira tela de instalação do Debian Netinst 5.05
7
Figura 8 – Selecionando o repositório
Na figura 8, o insteressante é notar que o adaptador de rede, em sua maioria, é
instalado pelo Debian Netinst 5.05 usando drivers embutidos no sistema, o que facilita muito
o trabalho do instalador.
Figura 9 – Selecionado softwares a serem instalados
8
Na figura 9 se verifica que já podemos instalar o servidor web Apache e o banco de
dados MySQL, mas como estes aplicativos serão instalados de forma “manual”, a sua
instalação não será feita agora, apenas o sistema básico do Debian, para que seja economizado
mais espaço.
Figura 10 – Finalização da Instalação
A figura 10 é simbólica, pois mostra o termino da instalação do Debian, logo após ele
ter feito o download e a instalação dos pacotes básicos. Após esta tela, a máquina virtual será
reinicializada e ela estará pronta para ser utilizada.
Figura 11 – Sistema Operacional funcionando
9
4 Instalando e configurando os softwares pré-requisitos
Neste módulo, serão instalados os softwares pré-requisitos do CACTI e suas
dependências. Cada software esta sendo abordado em um tópico em separado, mostrando
passo a passo como instalá-los de forma simples e objetiva, assim como configurá-los para
interagirem com o CACTI.
A partir desta seção, será utilizado o administrador de pacotes chamado de APT para
poder manusear os pacotes de instalação dos softwares. A ferramenta utilizada será o apt-get,
que buscará no repositório do Debian indicado que estará na internet e instalará os softwares e
suas dependências automaticamente. Todos os problemas que surgirem na instalação,
configuração e execução de tais programas e suas respectivas soluções, serão abordados aqui.
Os softwares necessários para o funcionamento do CACTI são os seguintes : Apache,
Mysql e PHP.
4.1 Apache HTTP Server 2.2.9-10
Para que o CACTI funcione corretamente, precisamos ter instalado em nosso servidor,
um web server, pois ele é todo desenvolvido para que seja utilizado através de um browser.
Assim sendo, podendo ser acessado por qualquer computador.
Com esta necessidade e visando o melhor aproveitamento dos recursos livres que
possuímos disponíveis, utilizaremos um web server conhecido como Apache HTTP Server.
O Apache HTTP Server, mais conhecido como Apache, é desenvolvido e mantido por
uma comunidade de desenvolvedores sobre a tutela da Apache Software Foundation, que é
uma empresa sem fins lucrativos.
Ele pode ser instalado em diversos sistemas operacionais, Unix, GNU, FreeBSD,
Linux, Solaris, Novell NetWare, Mac OS X, Microsoft Windows, OS/2, TPF, and
eComStation.
Segundo a Wikipedia (http://en.wikipedia.org/wiki/Apache_HTTP_Server), o Apache
HTTP Server, é o web server mais utilizado desde 1996. Em fevereiro de 2010, o Apache
HTTP Server, estava servindo cerca de 54,46% de todos os websites existentes.
Será utilizado neste artigo, a versão Apache HTTP Server 2.2.9-10.
Após apresentado o software, ele será instalado.
Para iniciarmos a instalação do Apache, precisamos saber qual é nome do pacote que
está no APT-GET para ser instalado, para isso usamos o comando abaixo.
> apt-cache search apache
O resultado do comando esta na figura 12.
10
Figura 12 – Resultado o comando “apt-cache search apache”
Na figura 12 é possível identificar o pacote que deve ser instalado, seu nome é
“apache2”. O comando utilizado é
> apt-get install apache2
Com a instalação do pacote apache2, serão instaladas também as suas dependências,
como podemos ver na figura 13.
Figura 13 – Resultado do comando anterior
11
Na figura 13, aparecem os pacotes que devem ser instalados como pré-requisitos do
Apache e logo abaixo pergunta se você deseja que continue a instalação, avisando que
utilizará 26MB para instalar tudo. Confirmando a instalação, a figura 14 mostra o resultado
final da instalação.
Figura 14 – Termino da instalação do Apache2 e inicialização do servidor
Após o termino, podemos testar tentando acessar de outra máquina na rede através de
um browser o site padrão do Apache 2, digitando no browser o ip da máquina virtual que no
caso é 10.1.1.8, vemos isso na figura 15.
Figura 15 – Página padrão do servidor Apache 2
12
4.2 Mysql 5.0.51
O MySQL é um sistema de gerenciamento de banco de dados (SGBD), que prove
acesso multi usuário para diversas base de dados. O projeto do desenvolvimento do MySQL,
mudou a licença do seu código fonte para a GNU (General Public License), quando era
patrocinado pela empresa Sueca, MySQL AB que hoje foi comprada pela Oracle Corporation.
Segundo o site http://www.mysql.com/why-mysql/ [3], “ O MySQL se transformou no
banco de dados open source mais popular no mundo por causa de sua alta performance,
confiabilidade e facilidade de uso.”
Continuando, segundo o site http://pt.wikipedia.org/wiki/Mysql [4], dentre os seus
principais usuários estão : NASA, Friendster, Banco Bradesco, Dataprev, HP, Nokia, Sony,
Lufthansa, U.S. Army, U.S. Federal Reserve Bank, Associated Press, Alcatel, Slashdot, Cisco
Systems, Google e outros, “O sucesso do MySQL deve-se em grande medida à fácil
integração com o PHP incluído, quase que obrigatoriamente, nos pacotes de hospedagem de
sites da Internet oferecidos atualmente. Empresas como Yahoo! Finance, MP3.com,
Motorola, NASA, Silicon Graphics e Texas Instruments usam o MySQL em aplicações de
missão crítica. A Wikipédia é um exemplo de utilização do MySQL em sites de grande
audiência.”
O mesmo site nos apresenta as características do MySQL de forma perfeit, são elas :
•
•
•
•
•
•
•
•
•
•
•
•
•
Portabilidade (suporta praticamente qualquer plataforma atual);
Compatibilidade (existem drivers ODBC, JDBC e .NET e módulos de interface para
diversas linguagens de programação, como Delphi, Java, C/C++, C#, Visual Basic,
Python, Perl, PHP, ASP e Ruby)
Excelente desempenho e estabilidade;
Pouco exigente quanto a recursos de hardware;
Facilidade de uso;
É um Software Livre com base na GPL;
Contempla a utilização de vários Storage Engines como MyISAM, InnoDB, Falcon,
BDB, Archive, Federated, CSV, Solid…
Suporta controle transacional;
Suporta Triggers;
Suporta Cursors (Non-Scrollable e Non-Updatable);
Suporta Stored Procedures e Functions;
Replicação facilmente configurável;
Interfaces gráficas (MySQL Toolkit) de fácil utilização cedidos pela MySQL Inc.
Como vimos, o MySQL é um dos maiores banco de dados do mundo atualmente, com
muitos cases bem sucedidos de utilização e iremos utilizá-lo junto com o CACTI.
A versão que utilizaremos será a MySQL 5.0.51 e instalaremos ele agora.
Para saber o nome do pacote que iremos utilizar para efetuar a instalação, usaremos o
seguinte comando:
> apt-cache search mysql
O resultado encontrado está presente na figura 16.
13
Figura 16 – Resultado o comando apt-cache search mysql
Através do resultado do comando chegamos a conclusão que devemos instalar o
pacote mysql-server, o comando ficará :
> apt-get install mysql-server
Figura 17 – Tela com os pacotes novos a serem instalados e o pedido de confirmação
14
A figura 17, mostra que 9 pacotes novos serão instalados no total e estas instalações
consumirá 105MB do disco de nossa máquina virtual. Confirmando a instalação, a figura 18
trás o resultado.
Figura 18 – Primeira página de configuração do MySQL
Após a confirmação, aparece um tela de configuração é aonde será inserida a senha
para o usuário principal do MySQL. A próxima tela é a confirmação da senha, ou seja,
repetimo-la. A figura 19 mostra o termino da instalação.
Figura 19 – Termino da instalação do MySQL e das dependências
15
4.3 PHP 5.2.6.dfsg
O site http://pt.wikipedia.org/wiki/Php [5] define muito bem o que é o PHP, “PHP
(um acrónimo recursivo para "PHP: Hypertext Preprocessor") é uma linguagem de
programação de computadores interpretada, livre e muito utilizada para gerar conteúdo
dinâmico na World Wide Web.”
Segundo o mesmo site, as características do PHP são :
•
•
•
•
•
Velocidade e robustez;
Estruturado e orientação a objetos;
Portabilidade - independência de plataforma - escreva uma vez, rode em qualquer
lugar;
Tipagem fraca;
Sintaxe similar a C/C++ e o Perl.
O PHP é uma linguagem de fácil entendimento, sendo muito difundida na comunidade
de software livre.
Podemos citar André Freitas em seu trabalho realizado na UNIBAN em 2006 [6] cujo
nome é PHP , “O PHP é multiplataforma, aceita vários sistemas operacionais como o
Windows, Unix e Linux, permite a conexão direta com uma grande quantidade de Banco de
Dados relacionais como: Oracle, Sybase, Informix, MySQL e outros disponibilizado através
do *ODBC. É suportado pela maioria dos servidores WEB que existem no mercado como o
APACHE, IIS E PWS.”
O PHP é uma linguagem simples e free, podemos utilizá-la de forma gratuita. O
CACTI foi totalmente desenvolvido nesta linguagem.
Após esta apresentação, será instalado o PHP 5.2.6.dfsg na máquina virtual. Será
pesquisado primeirando o nome do pacote que deve ser instalado, através do seguinte
comando :
> apt-cache search php5
A figura 20, mostra o resultado da pesquisa. Será instalado o pacote “php5”, que
contem o metapacote do servidor PHP.
16
Figura 20 – Mostra o resultado do comando apt-cache search php5
Agora o PHP já pode ser instalado. O comando para instalação do php é :
> apt-get install php5
Figura 21 - Tela com os pacotes novos a serem instalados e o pedido de confirmação
A figura 21 mostra que 4 pacotes serão instalados, englobando os pré-requisitos e o
PHP. O espaço total utilizado será de 6316KB.
17
Figura 22 – Termino da instalação
Pode ser visualizado o final da instalação na figura 22. Com o que foi visto nas figuras
21 e 22, um modulo do apache foi instalado para que ele já fique configurado.
5 Instalando e configurando o CACTI 0.87
Como foi visto nos tópicos anteriores, já foram instalados os softwares pré-requisito
do CACTI. Apache, MySQL e PHP já foram instalados e agora pode se partir para a
instalação do CACTI.
Para iniciar a instalação do CACTI, será pesquisado o nome do pacote utilizando o
comando :
> apt-cache search cacti
18
Figura 23 – Resultado do comando apt-cache search cacti
Podemos ver na figura 23, que o nome do pacote que utilizaremos para instalar o
CACTI é cacti. Por ser a software principal, ele já instalará de forma automática todos os
demais pacotes que são pré-requisitos.
O comando utilizado é o :
> apt-get install cacti
Figura 24 - Tela com os pacotes novos a serem instalados e o pedido de confirmação
19
A figura 24 mostra que os pacotes a serem instalados são 50, dentre eles a maioria são
pacotes de pré-requitos para o funcionamento do CACTI. No final da instalação será utilizado
55,4MB do disco da máquina virtual.
Figura 25 – Aviso de mudança de local libphp-adodb
Figura 26 – Configurando o Apache 2
Na figura 26, será selecionado qual é o nosso servidor do apache. Como foi instalado o
Apache2, será selecionada a opção “Apache2”, caso não tenhamos certeza de qual instalamos,
podemos selecionar a opção “Todos”.
20
Figura 27 – Instalar usando dbconfig-common
A figura 27, mostra que pode-se deixar o CACTI mesmo configurar a sua conexão
com o MySQL através do dbconfig-common que é um aplicativo que ajuda na configuração
do conexões com bancos de dados. Será selecionada a opção SIM, deixando o dbconfigcommon configurar o MySQL.
Figura 28 – Senha do administrador do banco de dados
A figura 28 é tela aonde será colocada a senha do administrador do MySQL, que foi
configurado quando a instalação do banco de dados estava sendo feita.
21
Após isso, a instalação do CACTI foi terminada, mas não a configuração do mesmo.
Para que o CACTI seja configurado, será acessado via browser o endereço
http://10.1.1.8/cacti, como foi demonstrado na figura 29, para que finalize a configuração.
Figura 29 – Página inicial de configuração do CACTI
A página incial de configuração do CACTI traz algumas informações sobre a
continuidade da configuração do CACTI. Clicar em NEXT.
Figura 30 – Tipo da instalação
Na figura 30, vemos que pode ser selecionada duas opções, “New Install” que faz
referência a uma nova instalação ou “Upgrade” que faz referência a atualização de uma
versão mais antiga para a 0.87. No caso a instalação é nova, então será selecionada a opção
“New Install” e depois clicado em NEXT.
22
Figura 31 – Configuração do CACTI
Na figura 31, serão confirmadas as informações nos campos, pois o CACTI mesmo já
testa a existência dos programas necessários em suas respectivas pastas. Apenas será mudado
o RRDTool de 1.0.x para 1.2.x. Depois de verificado, será clicado em FINISH.
Figura 32 – Login no CACTI
Quando clicado em FINISH, é terminada a configuração do CACTI e agora se pode
utilizar o CACTI, primeiramente se logando nele.
23
6 Testando o CACTI
Quando aberto o browser no endereço http://10.1.1.8/cacti no browser, deve ser
inserido o usuário e senha padrões para o primeiro acesso ao CACTI, que são admin, admin.
Depois que for digitado o usuário e senha padrões, deve-se clicar no botão de login, o sistema
pedira que seja escolhida uma nova senha, para futuros acessos como administrador, como
podemos ver na figura 33.
Figura 33 – Colocando a nova senha
Após ser colocada e confirmada a nova senha, pode ser vista a tela principal do
CACTI, aonde as suas várias funções podem ser acessadas com apenas um clique no browser,
como podemos ver na figura 34.
Figura 34 – Tela principal do CACTI
24
Agora podem ser cadastros os dispositivos da rede através da opção “Create devices”.
Clicando nele, aparece a tela da figura 35, nesta tela clicamos na opção “Add”.
Figura 35 – Página central do CACTI
Nesta tela, pode-se criar novas bases de dados, novos gráficos, novos dispositivos na
rede, etc. Os gráficos podem ir desde um monitoramento do uso que uma CPU de um
determinado dispositivo até o consumo de banda de rede de outro dispositivo.
Existe ainda mais várias plugins que podem ser usados para melhorar o funcionamento
do CACTI, como podemos ver no artigo feito pelo Leonardo Kolisnik de Matos em outubro
de 2009 com o título de “Gerenciamento de equipamentos de rede utilizando o software
CACTI”, que traz muitas informações a mais sobre o funcionamento de tais patches e plugins.
Figura 36 – Página com os gráficos gerados
Clicando na aba GRAPHS que está em vermelho no topo do site, pode se visualizar os
gráficos criados para monitoramento da nossa máquina virtual. Todos eles podem ser criados
novamente para outras máquinas, este foram criados de forma padrão pelo próprio CACTI..
Para nossos testes, será adicionado um device ao CACTI, ele será um computador com
o Windows 7 Ultimate instalado.
Para que possa funcionar o SNMP no Windows 7 precisa ser instalado o serviço. Para
isso será necessário entrar em “Painel de Controle” e depois em “Programas e Recursos”, com
25
a janela aberta, clicar em “Ativar ou Desativar recursos do Windows” e uma nova tela irá se
abrir, como pode ser visto na figura 36.
Figura 36 – Ativar ou Desativar recursos do Windows
Com a nova tela aberta, procuramos a opção “Protocolo SNMP”, e ele deve ser
selecionado. Depois disso clica-se em OK e ele irá instalar o recurso.
Depois de instalado, o SNMP precisa ser configurado e para isso deve entrar em
“Painel de Controle”, depois em “Ferramentas Administrativas” e em “Serviços”.
Figura 37 – Serviços do windows
Na figura 37 pode ser visto o item que será modificar, é o “Serviço SNMP”. Clica-se
duas vezes nele para abrir e depois seleciona-se a aba “Agente” e preenche-se os campos que
estão em branco. No campo contato, insere-se o nome da máquina ou algum nome de
referência para ela e no campo local coloca-se o grupo que ele faz parte ou aonde ele se
encontra, apenas para referência.
Nas opções abaixo da tela, no campo de Serviço, deve-se habilitar mais dois serviços,
o “Físico” e o ‘Vínculo de dados e sub-rede”, como pode ser visto na figura 38.
26
Figura 38 – Propriedades de Serviço SNMP aba Agente
Figura 39 – Propriedades de Serviço SNMP aba de Segurança
27
Na figura 39, pode ser vista a segunda alteração que deve ser feita, clica-se na aba de
“Segurança”, depois deve-se adicionar uma comunidade clicando em “Adicionar”, já janela
que aparece, seleciona-se a opção “Somente Leitura” e escreve-se o nome da comunidade,
este nome deve ser comum a todas as máquinas, vamos colocar “public”. Cicando em OK é
criado o novo dispositivo no CACTI.
Figura 40 – Pagina de criação de device do CACTI
A figura 40, pode ser visto o cadastro da máquina com o windows 7 no CACTI e
vemos que ele já conseguiu captar as informações da máquina usando o SNMP que liberamos
anteriormente. Clicando no botão CREATE que fica no rodapé da página, craimos o
dispositivo. Logo após a criação do dispositivo, serão criados os gráficos para monitoramento.
Para criar os gráficos, clica-se em “Create Graphs for this Host”, e ai aparecem as
opções já identificadas pelo CACTI para monitoramento.
Figura 41 – Opções de Dados para os Gráficos
28
Serão selecionadas as seguintes opções, “Utilização da CPU0”, “Utilização do CPU1”,
“Trafego Wireless”, “Espaço Utilizado C:”, “Espaço Utilizado D:” e “Uso da Memória
Física”.
Como a figura 42 mostra, temos acesso a todas estes gráficos que foram criados, tendo
um acesso a informações em tempo real a qualquer momento a partir de qualquer
computador.
Figura 42 – Gráfico de monitoramento da máquina com Windows 7
7 Resultados e Análise dos resultados
Depois de todo este processo, podemos cadastrar todas as máquinas que estão na rede
que vamos monitorar, buscando sempre mais informações sobre estes equipamentos,
principalmente sobre os servidores.
Podemos ver pela figura 42, que o gráfico gerado contém informações sobre o
equipamento, nos permitindo tirar conclusões sobre o que são as reclamações e sobre
problemas ocasionados com elas. Para exemplificar, simulei um pico de processamento entre
os horário 14:10 e 14:20, com esta informação nas mãos, podemos mudar o horário de alguns
processos , para que eles rodem em horários em que o CPU esteja ocioso.Os gráficos são de
fácil entendimento e acessíveis a qualquer pessoa ou maquina via os principais browsers do
mercado.
Figura 43 – Gráfico de desempenho da máquina virtual do CACTI
29
A própria máquina virtual pode ser monitorada, deixando aberto para que as máquinas
virtuais que existam na rede também sejam monitoradas (desde que utilize um adaptador de
rede em modo bridge).
Figura 44 – Resultado o comando TOP na máquina virtual
A figura 44 confirma o fato de que com um hardware pequeno, podemos rodar o
CACTI e suas dependências sem problemas e com uma resposta instantânea, muito rápida.
8 Conclusão
Acredito que o objetivo deste artigo foi atingido, ou seja, criar um passo a passo para
quem desejar criar uma máquina virtual utilizando o CACTI para monitoramento de seus
recursos.
Fazendo este artigo, percebi que as possibilidades são enormes e consultando alguns
sites da comunidade de usuários do CACTI, existem muitos patchs e plugins que possibilitam
uma melhor utilização do software.
Compactuo com as palavras de Leonardo Kolisnik de Matos [7], que escreveu na
conclusão do seu artigo Gerenciamento de equipamentos de rede utilizando o software
CACTI que “São evidentes as vantagens da implantação do software Cacti em qualquer
ambiente de rede, devido sua robustez, facilidade de implantação e excelente desempenho, é
uma economia para qualquer empresa com suporte de TI, pois, economiza com a aquisição
do software, por ser gratuito, tem aperfeiçoamento constante, com foco na qualidade e
diversificação de ferramentas pela comunidade de software livre, além de ser possível fazer
uma adaptação do software aos objetivos específicos de cada pessoa ou empresa.” Esta
observação foi perfeita e resume o que penso sobre o CACTI.
Existem algumas falhas no CACTI, como não ter nativamente alertas via e-mail ou
sms, mas tudo isso é compensado com plugins e patches, desenvolvidos pela comunidade de
usuários que suprem estes problemas, além de ter ferramentas que podem rastrear
equipamentos em sua rede. A grande vantagem do CACTI é que ele é free, pode ser instalado
e utilizado sem pagar nada e o seu suporte é muito bom, sendo que ele pode ser acessado a
qualquer momento via web nos diversos sites da comunidade de usuários e desenvolvedores.
30
Outra vantagem são os seus gráficos, podemos gerar vários gráficos com as mais diferentes
informações, podemos ter gráficos que monitorem as interfaces de rede para que saibamos
aonde e quanto está acontecendo o gargalo, podemos monitorar quanto da banda da rede esta
sendo utilizada por uma determinada aplicação, em que momento a memória da nossa
máquina se esgota criando lentidão nos sistemas, etc.
O seu monitoramento é muito bom e a possibilidade de se monitorar tudo
remotamente no deixa mais tranqüilos quanto aos nossos clientes externos.
Em todos os testes que efetuei com o CACTI, eles correspondeu de forma positiva,
com um pequeno conhecimento de linux, se é possível ir longe com esta ferramenta e o mais
interessante é que podemos monitorar máquinas com vários sistemas operacionais.
Como disse no meu resumo, minha intenção não é provar que o CACTI é melhor ou
pior que os concorrentes, apenas demonstrar as suas funcionalidades e principalmente como
instalá-lo de forma rápida e objetiva.
9 Referências Bibliográficas
1. [1] Página da Wikipedia, dedicada ao CACTI em português http://pt.wikipedia.org/wiki/Cacti – 30 de setembro de 2010
2. [2] Adilson Galiano Filho e Jhonatan Geremias (2009). Zabbix – Ferramenta de
Monitoramento (http://www.ppgia.pucpr.br/~jamhour/RSS/TCCRSS08B/Jhonatan
%20Geremias%20-%20Artigo.pdf)
3. [3] Página oficial do banco de dados MySQL - http://www.mysql.com/why-mysql/ – 11 de
outubro de 2010
4. [4] Página da Wikipedia, dedicada ao MySQL em português http://pt.wikipedia.org/wiki/Mysql – Data 11/10/2010
5. [5] Página da Wikipedia dedicada ao PHP em português - http://pt.wikipedia.org/wiki/Php
– Data 11/10/2010
6. [6] Artigo de André Freitas feito na UNIBAN em 2006
http://www.scribd.com/doc/6704970/Intro-PHP – Data 13/10/2010
7. [7] Leonardo Kolisnik de Matos (2009). Gerenciamento de equipamentos de rede
utilizando o software CACTI (http://www.ppgia.pucpr.br/~jamhour/RSS/TCCRSS08A/Leonardo%20Kolisnik%20de
%20Matos%20-%20Artigo.pdf)
8. Página da Wikipedia, dedicada ao Virtual Box em inglês
http://en.wikipedia.org/wiki/Virtual_box – Data 06/10/2010
9. Página oficial do sistema operacional Debian - http://www.debian.org/distrib/netinst – Data
06/10/2010
10. Página da Wikipedia, dedicada ao Apache Server em inglês http://en.wikipedia.org/wiki/Apache_HTTP_Server – Data 11/10/2010
11. Página oficial do Apache Server - http://httpd.apache.org/ – Data 11/10/2010
31
12. Página da Wikipedia, dedicada ao MySQL em português http://pt.wikipedia.org/wiki/Mysql – Data 11/10/2010
13. Página pessoal do consultor Greg Sowell - http://gregsowell.com – Data 21/10/2010
32
Download

Implantando e testando o CACTI em uma rede empresarial