quinta-feira, 9 de outubro de 2008

Instalando Pandora FMS 2.0 Beta 1 no Debian

Pandora FMS é uma ferramenta de gerência, não só de redes, mas de tudo que possa oferecer dados. O legal desta ferramenta é a possibilidade de gerar mapas da rede personalizados com alertas entre outras funcionalidades de uma maneira fácil.
Nesta postagem mostro um passo a passo da instalação dessa ferramenta no sistema Debian.

Do original Pandora FMS: User administration guide, cap. 2, pagina 17.
Baixado no site http://pandorafms.org/ no link Pandora_1.3_User_Guide.pdf em 09/10/2008.


[Passos prévios]

- O sistema utilizado para a instalação foi debian-40r4a-i386-netinst baixado no site http://www.debian.org/distrib/netinst em 09/10/2008 no link debian-40r4a-i386-netinst.iso
É necessário que seja i386 por causa das versões dos fontes que utilizaremos.

- Autentique-se como root no sistema para efetuar todos os passos desta explicação.

- Adicione as linhas abaixo no arquivo /etc/apt/source.list para manter o apt-get atualizado:
deb http://ftp.br.debian.org/debian lenny main contrib
deb http://ftp.br.debian.org/debian sid main contrib

Nota: Utilizei as versões lenny (versão de teste) e sid (instável) pois somente elas possuem alguns pacotes utilizados por essa versão do Pandora FMS.

- Após adicionada as linhas, atualize o apt-get com o comando abaixo:
apt-get update

- Instale um LAMP server no seu sistema, veja o passo a passo em http://andreob.blogspot.com/2008/09/instalando-lamp-no-debian.html


[Instalando dependências do Pandora FMS Server]

- Essa versão do debian não vem com os comandos básicos de compilação, gcc, make, devemos instala-los:
apt-get install build-essential

- Instale os pacotes com perl e snmp necessários para o funcionamento do Pandora FMS:
apt-get install libdate-manip-perl
apt-get install snmp
apt-get install snmpd
apt-get install libsnmp-perl
apt-get install libtime-format-perl
apt-get install libxml-simple-perl
apt-get install libnetaddr-ip-perl
apt-get install libdbi-perl
apt-get install libxml-simple-perl
apt-get install libnetaddr-ip-perl
apt-get install libhtml-parser-perl
apt-get install xprobe2


- Instale alguns módulos do perl, que não são instalados com o apt-get:
cpan Digest::MD5 Time::Local DBI threads threads::shared IO::Socket Time::HiRes Time::Format Net::Ping NetAddr::IP Mail::Sendmail Net::Traceroute::PurePerl HTML::Entities

Nota: cpan é como um apt-get para módulos do perl. Responda sim (yes) para todas as perguntas.


[Instalando o Pandora FMS Server]

- Vá para o diretório /usr/src
cd /usr/src

Nota: todos os arquivos fontes que baixar, deixe-os neste diretório pois você pode usa-los no futuro para um update ou mesmo para remover a instalação.

- baixe o pandora do site http://pandora.sourceforge.net/:
wget http://ufpr.dl.sourceforge.net/sourceforge/pandora/ PandoraFMS2.0_beta1.tar.gz

- descompacte o arquivo
tar -xzvf PandoraFMS2.0_beta1.tar.gz

- abra a pasta /usr/src/pandora_server:
cd /usr/src/pandora_server

- execute o script de instalação:
./pandora_server_installer --install

Nota: futuramente se quiser remover o Pandora FMS Server, troque o parametro --install por --uninstall.

- Inicie os principais serviços de monitoramento:
/etc/init.d/pandora_server start
/etc/init.d/pandora_network start
/etc/init.d/pandora_snmpconsole start

[Instalando dependências do Pandora FMS Console]

- Instale as seguintes dependências que não foram previstas em [Passos prévios]:
apt-get install php5-gd
apt-get install php5-snmp
apt-get install graphviz
apt-get install php-pear

- Instale alguns módulos do pear, que não são instalados com o apt-get:
pear install DB
pear install XML_RPC

- Reinicie o servidor web para efetivar as atualizações:
/etc/init.d/apache2 restart


[Instalando o Pandora FMS Console]

Pandora FMS Console é a interface web para você gerenciar o seu Pandora FMS Server.

- Copie a pasta /usr/src/pandora_console para o local dos sites do apache:
cp -rdp /usr/src/pandora_console/ /var/www

Nota: o parâmetro -rdp diz que a cópia será recursiva no diretório e manterá as permissões.

- Altere as pemissões na pasta /var/www/pandora_console/include para que o instalador possa modifica-los:
chmod 777 /var/www/pandora_console/include

- Acesse via web a página de instalação do Pandora FMS Console no seu host:
http://<seu_host>/pandora_console/install.php

- Avance todos os passos, a menos que queira especificar configurações diferentes.

- Por questões de sergurança, remova o arquivo /var/www/pandora_console/install.php
rm /var/www/pandora_console/install.php

- Crie o seguinte link:
ln /var/www/pandora_console/attachment/ /var/www/pandora_consoleattachment -s

Nota: não sei, mas o pandora_console que instalei não conseguiu achar /var/www/pandora_console/attachment/, tive que utilizar esse artifício.

- Pronto, já pode acessar o seu Pandora FMS e gerenciar sua rede:
http://<seu_host>/pandora_console


[Testando]

- Monitore um agent somente para testar. Abra a interface web e acesse:
Manage agents -> Create agent

- Preencha os dados do agent com ip localhost e Network Server igual a *_Net.

- Crie o agent e veja se este apareceu em View agents -> Network Map


[Possíveis problemas e soluções]

- Network Map não é gerado! Fica uma imagem quebrada!
Isso aconteceu na minha instalação, o pandora_console não conseguiu achar /var/www/pandora_console/attachment/.
Crie o seguinte link:
ln /var/www/pandora_console/attachment/ /var/www/pandora_consoleattachment -s

- Ao alterar a senha do banco de dados depois de tudo instalado, não acesso a interface web!
Lembre-se de altera-la também em /etc/pandora/pandora_server.conf e /var/www/pandora_console/include/config.php

- /etc/init.d/mysql: ERROR: Using expire_logs_days without log_bin crashes the server.
Estranho, mas após instalar o Pandora FMS isso ocorreu.
Edite o arquivo /etc/mysql/my.cnf e comente a linha que contém a variável expire_logs_days.

- Notice: Undefined variable: status_parent in /var/www/pandora_console/include/functions_visual_map.php on line 118
Neste passo a passo ensinamos a instalação do Pandora FMS 2.0 Beta1. Para quem não sabe, tudo que está na fase Beta está na fase de testes. E tudo que está em testes pode conter erros!
O programador esqueceu de iniciar a variável $status_parent no arquivo /var/www/pandora_console/include/functions_visual_map.php, inicie-a então. O seguinte trecho mostra como deve ficar o arquivo:

19 ...
20 function print_pandora_visual_map ($id_layout, $show_links = true, $draw_lines = true) {
21 global $config;
22 $layout = get_db_row ('tlayout', 'id', $id_layout);
23 $status_parent = -1;//Essa variável não estava definida. Alterado em 10/10/2008 por André O. B. aob@email.si
24 ...

- Could'nt find package wmi-client: possivelmente os seus repositorios nao tem referencia a esse pacote. Caso nao ache um repositorio que o tenha, baixe manualmente em http://www.pandorafms.org no link de downloads o pacote wmi.

Nenhum comentário: