Você está na página 1de 35

Pontifcia Universidade Catlica do Paran

Curso de Especializao em Redes e Segurana de Sistemas


Avaliao da Ferramenta Zabbix
Adilson Galiano Filho
CURITIBA - 2010
Zabbix Ferramenta de Monitoramento

Adilson Galiano Filho, Jhonatan Geremias
Curso de Especializao em Redes e Segurana de Sistemas
Pontifcia Universidade Catlica do Paran
Curitiba, Abril de 2010
Resumo
O presente artigo tem como objetivo apresentar uma abordagem de uma
ferramenta denominada Zabbix, uma ferramenta criada para monitorar o desempenho
e a disponibilidade dos ativos de uma rede, seu sistema foi projetado para trabalhar
atravs da coleta das informaes de servidores, switches, roteadores, e os demais
diferenciados equipamentos encontrados na rede, as informaes coletadas na rede so
armazenadas em um banco de dados, permitindo uma posterior analise dos dados, por
meio das consultas e da gerao de alertas possvel identificar, prevenir e solucionar
problemas de modo proativo. Este artigo tem por finalidade permitir que o usurio seja
capacitado a reproduzir e utilizar o mesmo ambiente em que desenvolvemos nossa
analise sobre o Zabbix, habilitando o usurio a instalar, configurar e at mesmo
monitorar os ativos da rede.
1. Introduo
Visando alcanar um diagnostico mais preciso da infra-estrutura da rede,
escolhemos uma ferramenta de monitoramento de rede de nome Zabbix, que se
apresentou como uma das solues mais completas disponveis do mercado.
Atravs deste artigo, temos por finalidade transpassar um material que seja uma
fonte rica e bem detalhada, e apresente de forma clara e objetiva essa promissora
ferramenta que a cada nova verso lanada trs muitas novidades para os
administradores de redes. Esperamos ainda que esse material seja de grande valia, e
possa servir como guia de consulta para administradores de redes que estejam
interessados em adotar o Zabbix como ferramenta de monitoramento em sua rede.
O artigo em questo segue redigido detalhadamente, procuramos
cuidadosamente coloc-lo passo a passo para aqueles que desejarem reproduzir um
ambiente similar em sua rede, no tenham muitas dificuldades, esse artigo ser
apresentado de forma muito similar aos roteiros apresentados em algumas disciplinas no
sistema de educacional a distncia, PUCPR, Eureka, contendo todas as informaes
necessrias para aqueles que tenham como objetivo, implantar essa nova tecnologia em
suas organizaes. Os detalhamentos tcnicos formados neste artigo abordam de forma
pedaggica, alm da tcnica, e com o intuito de seguir a linha de apresentao citada
preferimos a apresentao de um estudo de caso em especfico, elaborado pelo aluno
Esley Bonomo ao curso de Ps Graduao em Administrao em Redes Linux, da
Universidade Federal de Lavras, datado do ano de 2006. Essa preferncia explicada
devido s funcionalidades estarem apresentadas em uma excelente didtica e semelhante
forma esquemtica sendo implantada em nosso ambiente de trabalho profissional
atual. Conforme observado em disciplinas desse programa LATU SENSU a ao de
monitoramento necessria, e vem a ser um dos princpios bsicos para se obter
segurana e disponibilidade em redes modernas administradas.
1.1 O que o Zabbix?
Conforme podemos observar o Zabbix uma ferramenta de monitoramento de
rede, o que significa que o Zabbix uma ferramenta que nos permite monitorar a
performance e disponibilidade de todos servios e ativos da rede, ou seja, desde
aplicaes envolvidas na rede, at os inmeros equipamentos que so interligados a ela,
tais como servidores, hosts, switches, roteadores entre muitos outros.
A principio o Zabbix um sistema que consegue coletar informaes de todos
dispositivos que esto interligados na rede, absorvendo as informaes por meio de
scripts, via agente ou at mesmo atravs do protocolo SNMP.
Esse poderoso sistema de gerncia e monitoramento absorve todas as informaes
requisitadas, e permite que as informaes sejam coletadas e armazenadas em um banco
de dados como MySQL, PostgreSQL, SQLite ou at mesmo no Oracle.
O Zabbix atravs de uma interface web bem amigvel possibilita que as
informaes que foram armazenadas anteriormente nas bases de dados, sejam
consultadas e analisadas por meio de alertas. Os alertas permitem que os problemas que
estejam ocorrendo em nossa rede ou equipamentos sejam identificados, assim sendo
possvel tomar decises e efetuar melhorias.
1.2 Histria
Como vimos o Zabbix uma excelente ferramenta que permite o monitoramento
de toda a infra-estrutura de uma rede, um dos grandes responsveis por essa ferramenta
Alexei Vladishev, que apresentado como criador e principal desenvolvedor do
projeto Zabbix. O projeto e o desenvolvimento do Zabbix se iniciaram 2001,
centralizado na cidade de Riga, na Letnia, foi desenvolvido utilizando a linguagem de
programao PHP, disponibilizando ao usurio uma interface web com suporte a banco
de dados.
O Zabbix um software que adota a licena Open Source, ou seja, um
software livre que adota a licena publica geral (GPL), sendo considerado como uma
das melhores ferramentas de monitoramento na atualidade, muitas das suas
funcionalidades que foram herdadas do Nagios e do Cacti a tornaram uma das
ferramentas mais poderosa e completas disponveis.
Curiosamente o nome Zabbix oriundo de uma pesquisa do autor, atravs de
urls de busca, objetivando encontrar um nome ainda no utilizado e divulgado ne rede
mundial de computadores. O nome Zabbix at ento no era de significado algum, hoje
sinnimo de gerncia organizada, alta performance e disponibilidade aliadas
eficincia de equipamentos e servios.
2 Estrutura do Zabbix
O Zabbix oferece portabilidade a diversos sistemas operacionais desde Linux,
Solaris, HP-UX, AIX, FreeBSD, OpenBSD, NetBSD, Mac OS X, Windows, e outros.
Disponibilizando agentes aos mais diversos sistemas operacionais, permitindo o
monitoramento entre diferentes plataformas.
Entretanto existe uma dependncia em relao estrutura do Zabbix, visto que o
mesmo foi projetado com o intuito de ser uma ferramenta Open Source, seu servidor
necessariamente deve ser hospedado em uma mquina com o Linux ou Mac OS, visto
que no existe um pacote do servidor disponvel para as verses do Windows.
Contudo essa dependncia no afeta o monitoramento da rede, visto que o
sistema est divido em trs distintas partes:
Servidor Zabbix
Agente Zabbix
Interface do Zabbix
Servidor Zabbix: O servidor responsvel pela coleta e o armazenamento dos dados
monitorados. Como j vimos o servidor deve ser necessariamente hospedado em uma
mquina com o sistema operacional baseado na famlia do Unix (Linux ou Mac OS);
Agente Zabbix: O agente responsvel por repassar todas as informaes que foram
coletadas do sistema operacionais em qual est rodando para o servidor. O agente
permanece instalado na mquina e rodando como daemon ou servio, e assim que o
servidor solicita alguma requisio o agente processa a requisio e retorna os dados
solicitados, dados tais como: consumo dos recursos de HD, memria, estatstica de
processador, entre outros;
Interface do Zabbix: A interface a estrutura que permite que o administrador tenha
acesso para interagir e administrar o sistema. A fim de permitir um fcil acesso ao
monitoramento dos dados e configuraes atravs do ZABBIX, a interface do Zabbix
foi projetada para ser acessada via web, permitindo que o administrador ou usurio
acessem atravs do prprio browser instalado em seu sistema operacional. Para alguns
navegadores em especfico, o Zabbix disponibiliza at mesmo alguns plugins para
facilitar o acesso ao servidor, sendo o caso do Firefox como exemplo.
2.1 Por que utilizar o Zabbix?
A escolha de uma ferramenta de monitoramento est diretamente ligada aos
problemas que so apresentados no mbito a qual est direcionado a empresa,
lembrando que independente do setor onde a empresa atue, existe a necessidade de
traar um plano de estratgia de negcio. Para um monitoramento eficaz e preciso
necessrio traar laos em conjunto ao plano de estratgia, onde podemos definir as
polticas de segurana da empresa. As polticas de segurana sero responsveis por
estabelecer o nvel de segurana que dever ser adotado pela organizao, e ai sim
escolher uma ferramenta para monitoramento que seja ideal para empresa. Mas entre
tantas ferramentas de monitoramento por utilizar o Zabbix?
Este artigo no tem como inteno definir o Zabbix como a melhor ferramenta
de monitoramento disponvel, e nem colocar as demais ferramentas em descrdito. O
artigo em questo tem a nica finalidade de despertar o interesse do administrador da
rede, para que o mesmo conhea a ferramenta e entre outras escolha por si s.
Para facilitar a escolha da ferramenta, fao referncia ao artigo apresentado por Raphael
Celuppi, que apresentou na turma anterior deste mesmo curso de especializao um
excelente artigo: Implantao do Zabbix para monitoramento de infra-estrutura. No seguinte
tpico em especfico Escolha da Ferramenta ele apresentou bem um comparativo entre
as ferramentas Nagios, Cacti e o Zabbix
O Zabbix foi comparado a algumas ferramentas Open Source de monitoramento de infra-
estrutura como o Nagios e o Cacti, cujo quais so excelentes ferramentas mas que no possui uma sute
completa de ferramentas como Zabbix, que possui tanto uma interface de monitoramento e alerta em
tempo real excelente como o Nagios e tambm possui histrico de informaes e grficos iguais ao do
CACTI nos trazendo assim o melhor das duas ferramentas mais utilizadas atualmente em uma.
Segue abaixo as funcionalidades de cada ferramenta, estruturado semelhantemente:
Nagios:
Monitoramento de aplicao, servios, sistemas operacionais e componentes de
infra-estrutura;
API para desenvolvimento de sistemas customizados.
Cliente proprietrio;
Suporte ao protocolo SNMP;
Viso centralizada de todos os sistemas monitorados;
Informaes detalhadas dos componentes monitorados na interface web;
Rpida deteco de problemas na infraestrutura;
Alertas via e-mail e SMS;
Alertas customizveis, para o envio diretamente a pessoa responsvel;
Base de conhecimento para problemas com solues conhecidas;
Configuraes de eventos para aes pr-configuradas, como reiniciar o servio
com problema;
Planejamento de infra-estrutura para o acompanhamento do envelhecimento do
parque tecnolgico;
Paradas programadas, para o sistema no enviar alertas nesses perodos;
Relatrios para o acompanhamento dos SLAs;
Histricos de envio de alertas e notificaes;
Suporte a plugins de terceiros;
Multiusurio web com nveis de acessos.
Cacti:
Nmero ilimitado de grficos por host;
Envio de alertas via e-mail e script personalizado;
Armazenamento configurvel de histricos;
Rpido resequenciamento dos itens grficos;
Suporte completo ao RRDTOOL;
Suporte ao protocolo SNMP;
Modelos grficos pr-configurados;
Gerenciamento totalmente web;
Multiusurio web com nveis de acessos.
Zabbix:
Gerenciamento centralizado;
Acesso centralizado as informaes;
Numero ilimitado de proxies;
Monitoramento em tempo real;
Monitoramento de alertas para disponibilidade, integridade, entre outros;
Alertas via e-mail, SMS, mensagem instantnea e via script configurado;
Log de auditoria;
Visualizao via abas web e mapas;
Execuo de comandos remotos;
Suporte a servios de TI hierrquico;
Relatrios em tempo real de SLAs;
Facilidade de integrao com sistemas de terceiros;
Modelos pr-configurados de hosts;
Facilidade de compartilhamento de modelos;
Sistema de auto busca de dispositivos a serem monitorados;
Monitoramento de pginas web;
Suporte a qualquer plataforma;
Suporte ao protocolo SNMP;
Agente prprio de alta performance;
Rpida curva de aprendizagem;
Multiusurio web com nveis de acessos flexveis.
Foram especificadas apenas as funcionalidades do Nagios e do Cacti, pois muitas
das funcionalidades que o Zabbix possui hoje foram herdadas dessas outras duas
ferramentas, lembrando que ainda existem inmeras outras excelentes ferramentas que
devem ser observadas para escolha da ferramenta de monitoramento ideal tais como o
Ntop, Nessus, Snort, Nmap, MTGR entre outros.
Requisitos de Hardware e Software
As informaes dos requisitos necessrios para instalao do Zabbix foram
retiradas do prprio site do fabricante do Zabbix, sendo correspondentes verso atual
(Zabbix 1.8.2) do mesmo.
Requisitos de Hardware
O servidor Zabbix requer os recursos do sistema conforme segue tabela abaixo:
Figura 1 - Requisitos de Hardware
Plataformas Suportadas:
Segue abaixo a tabela referente as plataformas que so suportadas tanto pelo
servidor como tambm pelo agente:
Figura 2 - Plataformas Suportadas
Requisitos de Software
Apache: verso 1.3.12 ou superior;
Banco de dados: o banco de dados mais utilizados em conjunto com o Zabbix
hoje o MySQL (verso 3.22 ou superior), mais nada impede ao administrador,
utilizar outro banco de dados tais como o PostgreSQL (verso 7.0.2 ou
superior), Oracle (verso 9.2.0.4 ou superior), SQLite (verso 3.3.5 ou superior).
Contudo tem se cogitado no prprio frum do Zabbix, que segundo Alexei as
tendncias futuras so as de utilizar o PGSql no ambiente de desenvolvimento, pois
oferece o amadurecimento de algumas funcionalidades que agregariam mais valor ao ZABBIX,
tais como desempenho e segurana;
PHP: verso 4.0 ou superior;
Mdulo PHP GD ou GD2: mdulo requerido para mostrar mapas e grficos;
Browser: Navegador web do cliente que suporte pginas HTML e imagens
PNG.
3 Instalao do Zabbix
Para efetuar a anlise da ferramenta do Zabbix, dentre as diversas distribuies
do Linux, optamos adotar o GNU/Linux Ubuntu, entre alguns dos motivos que regem
nossa escolha, segue o fator da distribuio ser bem documentada, possuir uma
arquitetura voltada tanto para desktop quanto para servidores, ser uma das distribuies
Linux mais popular atualmente, pela facilidade na instalao de aplicativos com o
Synaptic e a questo de compatibilidade com pacotes Debian.
Iniciaremos a instalao do Zabbix do pr suposto que o Ubuntu j est instalado
na mquina. Neste artigo utilizamos a ltima verso disponvel do Ubuntu (ubuntu-
9.10-desktop-i386).
Apenas por fins tcnicos e futuras comparaes a fins acadmicos, instalamos o
servidor do Zabbix em uma mquina HP Compaq DC7700, Duo Core (1,86GHz), 1024
RAM e 80GB de disco.
Para facilitar a anlise do Zabbix, utilizamos do ambiente proporcionado aqui
mesmo na PUCPR, visto que os dois alunos que lhes dirigem nesse artigo, so
funcionrios dessa instituio, um funcionrio do ncleo de informtica (NIAA) e outro
do programa de ps-graduao em informtica (PPGIa).
Os passos descritos abaixo seguem de maneira muito similar a um roteiro, foram
adotados desta forma com o objetivo de facilitar o processo de instalao e configurao
do Zabbix. Facilitando um pouco aos administradores de rede que tiverem interesse em
projetar um ambiente similar.
Conforme restrio de rede adotada atravs do proxy aqui na PUCPR,
necessrio configurar a criao do seguinte arquivo para utilizar os comandos do apt-
get.
Criando o arquivo apt.conf:
cd /etc/apt
sudo touch apt.conf
sudo gedit apt.conf
Acrescentar a seguinte linha no arquivo:
Acquire::http::proxy "http://virtualproxy.pucpr.br:3128/";
Agora j ser possvel realizar atualizao e utilizar o comando apt-get (ou se desejar
utilizar o aplicativo Synaptic).
Baixando a lista dos pacotes disponveis:
sudo apt-get update
Verificando e atualizando os pacotes no sistema:
sudo apt-get upgrade
Reiniciando a mquina:
sudo reboot
Atualizando o sistema todo para uma nova verso mesmo que seja exigida a adio ou
remoo de algum pacote:
apt-get dist-upgrade
Reiniciando a mquina
sudo reboot
Adicionado o pacote bsico necessrio para o ambiente de desenvolvimento
sudo apt-get install build-essential
Instalando o servidor de banco de dados Mysql, ser solicitado que voc cadastre uma
senha para o usurio root do mysql:
sudo apt-get install mysql-server
Figura 3 - Cadastrando Password Mysql
Ser solicitado que seja confirmada a senha cadastrada no Mysql:
Figura 4 - Confirmando password Mysql
Acessando o Mysql:
mysql -u root -p
Ser solicitada a senha do usurio root do Mysql cadastrada anteriormente:
Verificando as databases disponveis:
show databases;
Criando um database teste:
create database teste;
Definindo um database que ser utilizada:
use teste;
Verificando o database criada:
show databases;
Excluindo o database "teste":
drop database teste;
Verificando que a database foi realmente excluda:
show databases;
Saindo do Mysql
exit
Instalando a biblioteca libmysqlclientXX-dev
Verificando a verso mais atual disponveis:
sudo apt-cache search libmysqlclient
Instalando a ltima verso disponvel da biblioteca libmysqlclient16-dev:
sudo apt-get install libmysqlclient16-dev
Efetuando a instalao do PHP5:
sudo apt-get install php5
Instalando a biblioteca do php5 para processamento de imagens:
sudo apt-get install php5-gd
Instalando a biblioteca do php5 para o Mysql:
sudo apt-get install php5-mysql
Instalando o pacote do protocolo SNMP (Protocolo Simples de Gerncia de Rede)
sudo apt-get install snmp
Instalando o pacote de bibliotecas para o protocolo SNMP:
sudo apt-get install libsnmp-dev
Instalando o pacote daemon para protocolo SNMP:
sudo apt-get install snmpd
Instalando biblioteca de cdigo aberto para protocolos SSL e TLS:
sudo apt-get install libcurl4-openssl-dev
Criando um usurio zabbix no Ubuntu:
sudo adduser zabbix
Adicionando o usurio zabbix no grupo de administradores:
sudo adduser zabbix admin
Baixando o pacote de instalao do servidor zabbix, efetuamos o download direto do
site do Zabbix http://www.zabbix.com/download.php, estamos utilizando a verso
zabbix-1.8.1 que foi a verso mais recente disponvel no ato da implementao do
servidor. Atualmente o Zabbix j possui uma nova verso para download, publicada dia
29/03/2010 e j disponvel no site.
Descompactando o arquivo do Zabbix, :
tar -zxvpf zabbix-1.8.1.tar.gz
Criando o database do zabbix, ao executar o comando abaixo ser solicitado o password
do usurio root do Mysql:
mysql e 'create database zabbix;' u root p
Verificando se o database foi criado, ao executar o comando abaixo ser solicitado o
password do usurio root do Mysql:
mysql e 'show databases;' u root p
Adicionando usurio zabbix e definindo permisses, ao executar o comando abaixo ser
solicitado o password do usurio root do Mysql:
sudo mysql e "grant all privileges on zabbix.* to zabbix@localhost identified
by 'zabbix';" -u root -p
Verificando se o usurio foi criado, ao executar o comando abaixo ser solicitado o
password do usurio root do Mysql:
mysql e 'select user from mysql.user' u root p
A consulta do comando anterior retorna a lista de usurios cadastrados pelo Mysql,
analise a lista e verifique se o usurio zabbix consta nessa lista de usurios.
Acessando o Mysql com o usurio zabbix, ao executar o comando abaixo ser solicitado
o password do usurio zabbix do Mysql:
sudo mysql -u zabbix p
Criando schema zabbix, ao executar o comando abaixo ser solicitado o password do
usurio zabbix do Mysql:
mysql D zabbix u zabbix p < /home/zabbix/zabbix-
1.8.1/create/schema/mysql.sql
Verificando se o schema foi criado, ao executar o comando abaixo ser solicitado o
password do usurio zabbix do Mysql:
mysql -e "show schemas;" u zabbix p
Importando as tabelas do zabbix para dentro do Mysql, ao executar o comando abaixo
ser solicitado o password do usurio zabbix do Mysql:
mysql D zabbix u zabbix p < /home/zabbix/zabbix-
1.8.1/create/data/data.sql
Importando as tabelas de imagem do zabbix para dentro do Mysql, ao executar o
comando abaixo ser solicitado o password do usurio zabbix do Mysql:
mysql D zabbix u zabbix p < /home/zabbix/zabbix-
1.8.1/create/data/images_mysql.sql
Configurao do servidor do Zabbix
Acessando o terminal com o usurio zabbix, ser solicitado o password do usurio
zabbix::
su zabbix
Localizando e se posicionando dentro do diretrio do Zabbix:
cd zabbix-1.8.1
Configurando e compilando os arquivos do Zabbix:
sudo ./configure prefix=/usr with-mysql with-net-snmp with-libcurl
enable-server enable-agent && make install
Configurando o Zabbix arquivo services.
Editando arquivo services
sudo gedit /etc/services
Adicionando as seguintes linhas no final do arquivo services, as linhas abaixo
correspondem s portas que o Zabbix utilizar:
zabbix_agent 10050/tcp
zabbix_trap 10051/tcp
Criando diretrio zabbix:
sudo mkdir /etc/zabbix
Definindo proprietrio para o diretrio zabbix:
sudo chown R zabbix.zabbix /etc/zabbix
Localizando e se posicionando dentro do diretrio do Zabbix:
cd /home/zabbix/zabbix-1.8.1
Copiando os arquivos necessrios para pasta /etc/zabbix:
cp misc/conf/zabbix_* /etc/zabbix/
Editando arquivo zabbix_agentd.conf:
gedit /etc/zabbix/zabbix_agentd.conf
Verificando se o parmetro Server est apontando para o endereo do servidor, ou seja,
apontando para ele mesmo:
Server=127.0.0.1
Editando arquivo zabbix_server.conf:
gedit /etc/zabbix/zabbix_server.conf
Atribuindo usurio que foi criado anteriormente:
DBUser=zabbix
Retirando o comentrio da linha abaixo e acrescentando o password do usurio zabbix:
DBPassword=zabbix
Copiando os arquivos init.d do zabbix.
Estaremos utilizando os arquivos zabbix-agent e zabbix-server, devido a
compatibilidade estaremos utilizando os arquivos da distribuio do Debian:
sudo cp misc/init.d/debian/zabbix-* /etc/init.d
Configurando os arquivos init.d do zabbix.
Editando o arquivo zabbix-server:
sudo gedit /etc/init.d/zabbix-server
Localizando a linha abaixo:
DAEMON=/home/zabbix/bin/${NAME}
Substituindo a linha anterior pela linha abaixo:
DAEMON=/usr/sbin/${NAME}
Editando o arquivo zabbix-agent:
sudo gedit /etc/init.d/zabbix-agent
Localizando a linha abaixo:
DAEMON=/home/zabbix/bin/${NAME}
Substituindo a linha anterior pela linha abaixo:
DAEMON=/usr/sbin/${NAME}
Definindo as permisses dos arquivos zabbix-server e zabbix-agent:
sudo chmod 755 /etc/init.d/zabbix-server
sudo chmod 755 /etc/init.d/zabbix-agent
Adicionando os nveis de execuo defaults do sistema para o zabbix-server:
sudo update-rc.d zabbix-server defaults
Adicionando os nveis de execuo defaults do sistema para o zabbix-agent:
sudo update-rc.d zabbix-agent defaults
Iniciando o servidor:
sudo /etc/init.d/zabbix-server start
Iniciando o agente:
sudo /etc/init.d/zabbix-agent start
Verificando se ambos os processos esto rodando:
ps aux | grep zabbix
Criando diretrio public_html:
mkdir /home/zabbix/public_html
Localizando e se posicionando dentro do diretrio do Zabbix:
cd /home/zabbix/zabbix-1.8.1
Copiando os arquivos da interface web:
cp R frontends/php/* /home/zabbix/public_html/
Localizando o arquivo 000-default no apache:
cd /etc/apache2/sites-enabled
Editando arquivo 000-default:
sudo gedit 000-default
Adicionando as linhas abaixo ao arquivo 000-default:
Alias /zabbix /home/zabbix/public_html/
<Directory /home/zabbix/public_html>
AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS PROPFIND>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS PROPFIND>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
Configurando arquivo php.ini
Localizando o arquivo php.ini:
cd /etc/php5/apache2
Editando arquivo php.ini:
sudo gedit php.ini
Alterando as linhas abaixo:
max_execution_time = 300;
date.timezone = America/Sao_Paulo
Reiniciando o Apache:
sudo /etc/init.d/apache2 restart
Configurando a interface web
Acessando o servidor pela interface web:
http://10.96.24.149/zabbix
Ser Apresentada uma tela de boas vindas, leia a introduo e pode prosseguir
clicando no boto Next:
Figura 5 - Introduo para instalao da Interface Web
Na tela abaixo ser apresentado o termo de uso do Zabbix, aps a leitura do
termo se voc estiver ciente e concordar, marque a opo I Agree, e clique em Next
para prosseguir:
Figura 6 - Termo de uso do Zabbix
Na tela abaixo ser apresentado um check-list dos pr-requisitos para instalao.
Se aparecer algum tipo erro, ajuste o mesmo e verificando a configurao, clique em
Retry para testar. Quando todos os pr-requisitos estiverem com o status ok clique
em Next para prosseguir:
Figura 7 - Check-List dos Pr-requisitos
No ambiente que criamos em especficos, foi necessrio acrescentar a seguinte
configurao ao arquivo php.ini:
Localizando e se posicionando dentro do diretrio apache2:
cd /etc/php5/apache2
Editando o arquivo php.ini:
sudo gedit php.ini
Alterando as linhas conforme abaixo: configurando arquivo php.ini:
memory_limit = 128M
post_max_size = 16M
Removendo o comentrio e alterando o valor da mesmo:
mbstring.func_overload = 2
Figura 8 - Aprovao do Check-List
Configurando a conexo com o banco de dados, preencha o campo com as
informaes necessrias, clique em Test connection para averiguar a conexo Clique
em Next quando o teste de conexo for bem sucedido.
Figura 9 - Configurar conexo banco de dados
Ser apresentado um sumrio para que sejam confirmadas as opes da
instalao, se tudo estiver em ordem clique em Next para prosseguir:
Figura 10 - Sumrio Pr-Instalao
Configurando o arquivo zabbix.conf.php, para facilitar o processo, clique em
Save Configuration File e salve o arquivo para a sua mquina. Copie o arquivo
zabbix.conf.php para /home/zabbix/public_html/conf/zabbix.conf.php no servidor. Para
efetuar a transferncia do arquivo, utilize o comando SCP, caso seja uma mquina com
Windows voc poder utilizar o aplicativo WinSCP disponvel para download na
ESPEC (http://espec.ppgia.pucpr.br/). Aps essa cpia clique em Retry, verifique o
status, quando o estiver ok clique em Next para prosseguir:
Figura 11 - Configurao arquivo zabbix.conf.php
A tela abaixo apresenta que o status da configurao da interface do zabbix est
corretamente configurado, a interface j pode ser instalado, clique em Next para
prosseguir:
Figura 12 - Instalar Interface Web
Clique em Finish para concluir a instalao:
Figura 13 - Concluir Instalao
Acessando a interface web do Zabbix, para efetuar o login, entre com o username
Admin e password zabbix:
Figura 14 - Acessar a Interface do Zabbix
3.1 Alterando idioma do servidor
Para alterar o idioma default (ingls) para portugus, efetue o login atravs da
interface web, aps ter logado, na parte superior da pgina clicar em profile:
Figura 15 - Alterando Idioma I
Na janela seguinte, s alterar a linguagem de ingls para portugus e salvar as
alteraes.
Figura 16 - Alterando Idioma II
3.2 Instalando Agente do Zabbix (Windows)
Agora que j estamos com o servidor e a interface web Instalada e devidamente
configurada, passaremos para etapa de instalao do agente do zabbix, a principio
abordaremos a instalao no sistema operacional Windows XP.
Primeiramente devemos copiar os arquivos do agente para as mquinas que
serem monitoradas, os arquivos podem ser encontrados no servidor do Zabbix dentro do
seguinte diretrio:
cd /home/zabbix/zabbix-1.8.1/bin/
Se preferir poder efetuar o download do agente do Zabbix no prprio site do
zabbix, efetue o download da verso correspondente ao servidor instalado e da
plataforma que esteja utilizando.
http://www.zabbix.com/download.php
Criando diretrio zabbix, sugerimos que o diretrio seja criado na raiz do C:,
ou seja, em c:/zabbix.
Os arquivos encontrados devem ser copiados para mquina a ser monitorada,
segue abaixo os arquivos:
zabbix_agentd.exe
zabbix_get.exe
zabbix_sender.exe
necessrio tambm obter o arquivo de configurao do agente do Zabbix
zabbix_agentd.conf, copie o arquivo da seguinte pasta no servidor:
cd /etc/zabbix
Utilize o arquivo que corresponde ao Windows, aqui ele foi encontrado com o
seguinte nome zabbix_agentd.win.conf, copie o arquivo para dentro da pasta do zabbix
localizada na mquina com Windows que ser monitorada c:/zabbix. Altere o nome
do arquivo para zabbix_agentd.conf.
Edite o arquivo zabbix_agentd.conf atravs do bloco de notas, altere os dados
conforme correspondente:
IP do servidor do Zabbix:
Server=xxx.xxx.xxx.xxx
Caminho do arquivo de log do agente zabbix:
LogFile=c:/zabbix/zabbix_agentd.log
Criaremos um servio para gerenciar o processo do agente zabbix, abra o prompt
do Windows, posicione o diretrio atual dentro da pasta do zabbix c:/zabbix, para
criar um servio para gerenciar o agente do zabbix execute o comando abaixo:
zabbix_agentd.exe -i -c zabbix_agentd.conf
Figura 17 - Criando servio agente Zabbix
Agora s iniciar o servio do agente do zabbix, abra o executar e digite
services.msc, voc poder localizar o servio com o seguinte nome "ZABBIX Agent",
ser s iniciar o servio e a mquina est pronta para ser monitorada.
Figura 18 - Gerenciando Servio
3.3 Instalando Agente do Zabbix (Ubuntu)
Estaremos instalando o agente do Zabbix em uma mquina com o Linux Ubuntu,
devido compatibilidade do Ubuntu com o Debian, estaremos utilizando um pacote do
agente do zabbix disponibilizado pela distribuio do Debian, para facilitar voc poder
efetuar o download deste pacote no seguinte site:

http://packages.debian.org/sid/i386/zabbix-agent/download

Para instalao desse pacote do debian necessria instalar a seguinte biblioteca:
sudo apt-get install libopenipmi0
Instalando o pacote debian do agente zabbix:
sudo dpkg -i zabbix-agent_1.8.1-1_i386.deb
Verificando se o agente do Zabbix foi instalado corretamente:
ps ef | grep zabbix
Adicionando Host no Zabbix
Acesse na aba principal o link Configurao -> Hosts -> Criar Host, na tela que ser
apresentada, preencha os campos bsicos:
Nome da mquina:
Nome: ia.cwbdis.pucpr.br
Servidor DNS:
DNS name: cwbdis.pucpr.br
IP da mquina:
IP: xxx.xxx.xxx.xxx
Templates:
Linked templates: Template_Windows
Observando que os templates definem quais parmetros sero monitorados,
sendo possvel utilizar vrios templates para monitorar o mesmo servidor, desde que
estes no tenham conflitos entre si. Neste momento, vamos apenas utilizar um template
bsico, Template_Windows, Template_Linux e Template_Standalone, os dois
primeiros so baseados em agentes, e o Standalone para monitoramento simples.
Aps ter configurado o Host, clique em Save. Abra a aba Overview e
verifique se o seu servidor est sendo monitorado.
4 Funcionalidades
4.1 Estudo de Caso [15]
4.1.1 Configurao do Ambiente
Para ver o funcionamento da ferramenta, foi necessrio a criao deste ambiente
na ferramenta. Este ambiente foi criado contendo trs mquinas e um switch. O
ambiente simples, porm pode auxiliar no entendimento da ferramenta para uma
utilizao em um ambiente real, seja ele qual for. Neste ambiente podem ser
monitorados dados bsicos dos servidores (como HTTPD, FTP, SSH e etc), alm de
parmetros de gerenciamento especfico de cada mquina como memria livre, espao
em disco e etc.
Depois de ter feito toda parte de instalao, precisa ser feito a configurao do
sistema para o uso na rede e gerenciamento da mesma. O endereo para acesso
http://10.96.24.149/zabbix . Com isso aparecer a tela de login, conforme Figura:
Figura 19 - Tela de Login
Por padro o usurio 'admin', vem com a senha 'admin'. Entrando com este
usurio tem-se o acesso mximo ao sistema, inclusive configuraes, ou seja,
recomendvel a criao de um outro usurio para acesso e trocar da senha do usurio
'admin'. Para uso adequado necessrio que o administrador faa a configurao do
sistema para ter um ambiente de teste que permita obter informaes de gerenciamento.
Na tela inicial tem-se a opo Configurao. A partir dela podem ser vistas
vrias outras opes. A primeira coisa a ser feita (no obrigatria, mas recomendvel)
a criao de um outro usurio. Neste caso ser criado um usurio chamado 'arl' para
verificar as informaes de gerenciamento.
Figura 20 - Cadastro de Usurio
Pode ser visto nesta tela que h informaes bsicas dos usurios. Neste
momento no h a necessidade de saber as informaes sobre permisses e e-mail do
usurio para envio de notificao. Aps a criao, o usurio aparecer na lista de
usurios. Agora para adicionar permisses ao usurio, necessrio clicar sobre o link
'Alias'. Que abrir a tela, para a incluso da permisso definida para o usurio.
Figura 21 - Atribuir permisso ao usurio
Ainda na tela de usurio, se o administrador clicar na ao 'Media', ser aberta
um tela de listas de meios de notificao, ou seja, a forma de envio de alarmes para o
usurio. Para ser adicionado um meio, necessrio clicar em 'Criar' para vermos a tela.
Figura 22 - Criao de Meios de Notificao
Pode ser visto que nesta tela, alm de ter das informaes do e-mail do usurio
que a notificao ser enviada, h tambm uma outra opo muito importante, que
quando esta ao ser acionada. Neste caso tem o seguinte valor: 1-7,00:00-23:59
ou seja, isso significa que sete dias da semana e vinte e quatro horas por dia, a
notificao poder ser enviada. Alm disso h tambm o nvel de severidade que esta
ao ir atender. Aps feito isso, o administrador dever trocar a senha do usurio
'admin' para garantir uma melhor segurana no acesso a aplicao. Depois de criar
usurios, um outro ponto importante, no s para o ambiente de teste, a criao de
Hosts. No menu Configurao --> Hosts, aparecer um lista de todos as Mquinas
Gerenciadas.
H tambm a opo para criar um novo Host. Nessa tela, h vrios campos para
adio de informaes bsicas sobre o host a ser adicionado, como: o nome, grupo, se
tem endereo IP ou no, a porta do agente para coleta das informaes, se vai ser
monitorado ou no e por ltimo o mais importante neste momento que qual o molde
(template) que este host ir seguir. atravs do molde que sero adicionados os
parmetros gerenciados sem que o usurio tenha que criar todos os parmetros
manualmente.
Figura 23 - Cadatro de Hosts
Assim que o administrador terminar o cadastro do Host, ele aparecer na lista de
mquinas gerenciadas. Nesta tela poder ser visualizado os Itens Gerenciados, os
Gatilhos (triggers) e os Grficos especficos de cada um. Os itens e gatilhos sero de
acordo com o molde escolhido no cadastro. O cadastro de mquinas gerenciadas no
seria muito til visualmente, se no fosse possvel ter uma visualizao da rede inteira.
Ento para isso existe um cadastro de mapas, onde pode ser simulado o desenho da
rede, colocando os elementos (mquinas, hubs, servidores e etc) em uma posio
especfica do mapa. Alm disso podem ser feitas conexes entre os elementos de rede
contidos no mapa. A criao de mapas est localizada em Configurao -->
Mapas. Nesta tela mostrado todos os mapas cadastrados e tem um boto 'Criar, o qual
abrir a tela de cadastro de mapas.
Figura 24 - Cadastro de Mapa
Nesta tela pode ser observado que so informaes simples de cadastro como
nome, tamanho do mapa, imagem (que ainda no tem suporte na verso 1.1beta8) e
posicionamento das informaes do mapa. Aps ser salvo, ele aparecer na lista de
mapas. E para cada mapa existe um boto de Editar que permitir a adio de mquinas
no mapa. A Figura 25, mostra um cadastro de elementos na rede.
Figura 25 - Elementos Cadastrados
Aps ter feito o cadastro, j tem-se um ambiente bsico para teste das
funcionalidades e para o estudo de caso. Logicamente existem muitas funes de
configuraes a mais. Porm no ser abordado tudo pelo simples fato de que no h a
necessidade de entrar em tantos detalhes de configurao, pois o tempo e o trabalho no
prope um estudo minucioso da ferramenta. Isso poderia ficar para um estudo futuro.
4.1.2 Utilizao e Estudo do Ambiente
Aps a configurao bsica de um ambiente de rede de teste, pode ser visto o
comportamento e utilizao dos servios e parmetros gerenciados para entender melhor
o funcionamento da ferramenta e em que ela pode nos ajudar. Inicialmente no menu
Monitoramento tem-se a opo de Resumo, que mostra a grosso modo os estados
baseados nas triggers de alguns servios mostrando a cor vermelho para os casos com
problemas e verde os casos que esto em perfeito funcionando. Com esta viso, pode
ser identificado rapidamente como est o funcionamento dos servios da rede, pois
mostra todos os elementos gerenciveis da rede. A Figura 26, mostra esta tela para o
ambiente criado para este estudo de caso. Pode ser percebido que as trs mquinas
cadastradas na nossa rede, e que foram definidas como monitoradas, esto presentes na
tela de resumo.
Entretanto somente uma possui dados gerenciados reais, pois as outras no tm
nem agente SNMP instalado, nem o servidor ZABBIX. As outras duas esto com o
estado de Servidor {HOST_NAME} inalcanvel, no permitindo assim a coleta das
informaes necessrias para o gerenciamento. Se tivesse nestas mquinas um agente
SNMP, poderia ser instalado um servidor ZABBIX para coletar todas informaes
necessrias para a gerncia. Entretanto como nestas mquinas no haviam permisses
de instalao, no foi possvel efetuar isso.
Figura 26 - Resumo da Rede Gerenciada
Alm do resumo, pode ser visto os ltimos valores configurados para para os
parmetros gerenciados. O resultado mostrado em forma de tabela contendo o nome
do parmetro, a ltima hora de verificao de mudana, o ltimo valor e a mudana.
Alm disso tem-se a opo de verificar um Grfico, para valores numricos e um
histrico para valores no numricos. A Figura 27 mostra melhor esta tela.
Figura 27 - ltimos Estados
Ao clicar no link Grfico de algum parmetro onde o valor seja numrico, abrir
uma tela com um grfico mostrando a evoluo do valor durante um determinado
tempo. Dependendo do parmetro, atravs deste grfico que pode ser feito uma anlise
e depois tomar decises para solucionar problemas relacionados ao planejamento de
capacidade. Por exemplo, se o parmetro relacionado ao uso da memria, o
administrador poder ver se h a necessidade de colocar mais memria fsica. A Figura
28 mostra um exemplo do parmetro Memria Livre para o host 'Note_Esley'.
Figura 28 - Grfico de Memria Livre
Para os casos de valores numricos, em vez de um grfico, mostrado um
histrico de mudana de valores do parmetro desejado. A Figura29 mostra um
exemplo.
Figura 29 - Histrico de tens
Alm disso h as triggers, que nada mais so que os alarmes disparados pelos
servidores notificando o administrador da ocorrncia de um erro. uma amostragem
mais detalhada do que foi visto na tela de resumo. Neste ponto tratado uma das reas
mais importantes da gerncia de rede que a Gerncia de Falhas. Nesta tela mostrado
todos os erros, os seus estados, nvel de severidade, data e hora da ocorrncia e dois
links. O primeiro significa que o usurio est ciente do erro e faz o reconhecimento,
como por exemplo: Estou ciente do problema e estou tomando as medidas cabveis e
o segundo somente a adio de comentrios. Alm das informaes bsicas mostrada
acima, o administrador pode tambm mostrar mais detalhes como o parmetro referente
ao erro e as aes a serem tomadas caso essa trigger seja verdadeira. Na Figura 30 pode
ser visto que tem-se quatro erros para a mquinas 'Note_Esley' e um erro para cada uma
das outras duas mquinas.
Figura 30 - Estado das Triggers
Hoje em dia toda ferramenta que trate o mnimo que seja relacionado a
segurana e controle dos dados, tem um mdulo de auditoria, ou seja, um mdulo que
armazene toda ao feita no sistema por qualquer usurio a fim de mudar algum valor,
cadastrar algum host e etc. A auditoria de sistemas, auxilia muito um administrador de
redes a saber se algum, e quem fez a alterao em um determinado dado. um mdulo
muito poderoso na ajuda de controle das informaes e segurana dos dados do sistema.
Figura 31 - Auditoria das Informaes
Outro ponto bem interessante a usabilidade do que foi feito na configurao,
que o cadastro de mapas. bem interessante a possibilidade de ser ver o mapa da
rede, com informaes dos elementos, inclusive os erros encontrados em cada um.
uma outra forma de representar o que visto no resumo, porm de uma maneira mais
amigvel.
Figura 32 - Mapa de Rede
Diferente de antes que havia quatro erros no host 'Note_Esley', agora tm-se trs,
e isso tambm visvel no mapa da rede. Foi resolvido um dos erros porque foi
inicializado o servio de FTP. Se o elemento de rede for clicado, ser mostrada a
visualizao dos parmetros gerenciados.
Outra funo que pode auxiliar o administrador de rede a tomar decises para
melhorar o funcionamento da rede, a visualizao de relatrios. Alguns relatrios
esto disponveis e podem ser vistos em Relatrios --> Relatrios Disponveis. A Figura
33 mostra a tela de relatrios que podem ser usados.
Figura 33 - Relatrios Disponveis
Pode ser visto que para o servio de FTP, quase 50% do tempo em que foi feito
o gerenciamento dos hosts o servio ficou parado, o que pode no ser uma boa notcia,
pois pode estar acontecendo algum problema com o servio, que no era o caso da
mquina 'Note_Esley', porque o servio realmente estava parado. Ento neste ponto,
pode ser identificado a disponibilidade do servio, ou se houve alguma mudana de
estado. Se o administrador clicar no link Show de algum relatrio disponvel, aparecer
em forma de grficos o relatrio informando a porcentagem referente a cada estado
possvel do item. A Figura seguinte mostra um exemplo para o relatrio que mostra se o
arquivo /etc/passwd foi alterado.
Figura 34 - Relatrio
Pode ser notado at aqui um caso de uso de uma ferramenta poderosa no auxlio
de gerncia de redes. Foram mostradas algumas funcionalidades que foram usadas na
rede de teste criada para um estudo de caso para mostrar e analisar como est o
andamento da rede. Entretanto existem muitas outras funcionalidades que no foram
mostradas aqui. Mas para aprender mais sobre a ferramenta ZABBIX, recomendvel
acessar o site da ferramenta.
Bibliografia
[1] http://www.zabbix.com/
[2] http://www.zabbix.com/download
[3] http://www.gouvea.net/zabbix.html
[4] http://wendelneves.wordpress.com/2009/06/17/instalando-o-zabbix-no-ubuntu/
[5] http://linux.eduardosilva.eti.br/parte_ii_instalando_e_rodando_o_zabbix
[6] http://br-linux.org/2009/monitoramento-facil-com-zabbix/
[7] http://linux.eduardosilva.eti.br/monitoramento-facil-com-zabbix
[8] http://www.vivaolinux.com.br/artigo/Instalacao-do-Zabbix-1.6-no-CentOS-5?
pagina=4
[9] http://packages.debian.org/sid/i386/zabbix-agent/download
[10] http://www.google.com.br
[11] http://www.ppgia.pucpr.br/~jamhour/RSS/TCCRSS08A/Raphael%20Celuppi%20-
%20Artigo.pdf
[12] http://www.linux-magazine.com.br/images/uploads/pdf_aberto/LM24_zabbix.pdf
[13] http://www.lsl.dcc.ufmg.br/documentacao/doc_download/117-ferramenta-de-
monitoramento-de-redes-zabbix.html
[14] http://www.ataliba.eti.br/files/txts/zabbix.pdf
[15] http://www.ginux.ufla.br/files/mono-EsleyBonomo.pdf