Adilson Galiano - Artigo

Você também pode gostar

Fazer download em pdf ou txt
Fazer download em pdf ou txt
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 infraestrutura 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;

Cacti:

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.

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 (ubuntu9.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 aptget. 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/zabbix1.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/zabbix1.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/zabbix1.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 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: a

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-demonitoramento-de-redes-zabbix.html [14] http://www.ataliba.eti.br/files/txts/zabbix.pdf [15] http://www.ginux.ufla.br/files/mono-EsleyBonomo.pdf

Você também pode gostar