Pesquisa de site

Observium: um sistema completo de gerenciamento e monitoramento de rede para RHEL/CentOS


Observium é um aplicativo de observação e monitoramento de rede baseado em PHP/MySQL, que suporta uma ampla gama de sistemas operacionais/plataformas de hardware, incluindo Linux, Windows, FreeBSD, Cisco, HP, Dell, NetApp e muitos mais. Busca apresentar uma interface web robusta e simples para monitorar a saúde e o desempenho de sua rede.

Observium coleta dados de dispositivos com a ajuda de SNMP e exibe esses dados em padrão gráfico por meio de uma interface web. Ele faz uso intenso do pacote RRDtool. Ele tem uma série de objetivos de design básicos, que incluem coletar o máximo de informações históricas sobre os dispositivos, ser totalmente descoberto automaticamente com pouca ou nenhuma interrupção manual e ter uma interface muito simples, mas poderosa.

Demonstração do Observium

Por favor, faça uma rápida demonstração online do Observium implantado pelo desenvolvedor no seguinte local.

  1. http://demo.observium.org/

Este artigo irá guiá-lo sobre como instalar o Observium no RHEL, CentOS e Scientific Linux, a versão suportada é EL (Enterprise Linux) 6.x. Atualmente, o Observium não é compatível com as versões EL 4 e 5 respectivamente. Portanto, não siga as instruções nessas versões.

Etapa 1: Adicionar repositórios RPM Forge e EPEL

RPMForge e EPEL é um repositório que fornece muitos pacotes de software rpm complementares para RHEL, CentOS e Scientific Linux. Vamos instalar e habilitar esses dois repositórios baseados na comunidade usando os seguintes comandos sérios.

Em sistemas i386
yum install wget
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el5.rf.i386.rpm
wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
wget http://apt.sw.be/RPM-GPG-KEY.dag.txt
rpm --import RPM-GPG-KEY.dag.txt
rpm -Uvh rpmforge-release-0.5.3-1.el5.rf.i386.rpm
rpm -Uvh epel-release-6-8.noarch.rpm
Em sistemas x86_64
yum install wget
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.rpm
wget http://epel.mirror.net.in/epel/6/x86_64/epel-release-6-8.noarch.rpm
wget http://apt.sw.be/RPM-GPG-KEY.dag.txt
rpm --import RPM-GPG-KEY.dag.txt
rpm -Uvh rpmforge-release-0.5.2-2.el6.rf.rpm
rpm -Uvh epel-release-6-8.noarch.rpm

Etapa 2: Instale os pacotes de software necessários

Agora vamos instalar os pacotes de software necessários para o Observium.

yum install httpd php php-mysql php-gd php-snmp vixie-cron php-mcrypt \
php-pear net-snmp net-snmp-utils graphviz subversion mysql-server mysql rrdtool \
fping ImageMagick jwhois nmap ipmitool php-pear.noarch MySQL-python

Se você deseja monitorar máquinas virtuais, instale o pacote ‘libvirt’.

yum install libvirt

Etapa 3: baixando o Observium

Para sua informação, o Observium tem duas edições seguintes

  1. Community/Open Source Edition: Esta edição está disponível gratuitamente para download com menos recursos e poucas correções de segurança.
  2. Edição de Assinatura: Esta edição vem com recursos adicionais, recursos/correções rápidas, suporte de hardware e mecanismo de lançamento baseado em SVN fácil de usar.

Primeiramente navegue diretamente para /opt, aqui instalaremos o Observium como padrão. Se você deseja instalar em outro lugar, modifique os comandos e a configuração de acordo. Sugerimos fortemente que você primeiro implante no diretório /opt. Depois de verificar se tudo funciona perfeitamente, você pode instalar no local desejado.

Se você possui uma assinatura ativa do Observium, você pode usar os repositórios SVN para baixar a versão mais recente. Uma conta de assinatura válida apenas para uma única instalação e duas instalações de teste ou desenvolvimento com patches de segurança diários, novos recursos e correções de bugs.

Para baixar a versão estável e atual mais recente do Observium, você precisa ter um pacote svn instalado no sistema, para extrair os arquivos do repositório SVN.

yum install svn
Versão de desenvolvimento
svn co http://svn.observium.org/svn/observium/trunk observium
Versão estável
svn co http://svn.observium.org/svn/observium/branches/stable observium

Não temos uma assinatura válida, então vamos experimentar o Observium usando a Community/Open Source Edition. Baixe a versão estável mais recente ‘observium-community-latest.tar.gz’ e descompacte-a conforme mostrado.

cd /opt
wget http://www.observium.org/observium-community-latest.tar.gz
tar zxvf observium-community-latest.tar.gz

Etapa 4: Criando banco de dados MySQL Observium

Esta é uma instalação limpa do MySQL. Então, vamos definir uma nova senha de root com a ajuda do seguinte comando.

service mysqld start
/usr/bin/mysqladmin -u root password 'yourmysqlpassword'

Agora faça login no shell mysql e crie o novo banco de dados Observium.

mysql -u root -p

mysql> CREATE DATABASE observium;
mysql> GRANT ALL PRIVILEGES ON observium.* TO 'observium'@'localhost' IDENTIFIED BY 'dbpassword';

Etapa 5: configurar o Observium

Configurar o SELinux para funcionar com o Observium está além do escopo deste artigo, então desabilitamos o SELinux. Se você estiver familiarizado com as regras do SELinux, poderá configurá-lo, mas não há garantia de que o Observium funcione com o SELinux ativo. Então, é melhor desativá-lo permanentemente. Para fazer isso, abra o arquivo ‘/etc/sysconfig/selinux’ e altere a opção de ‘permissivo’ para ‘desativado‘.

vi /etc/sysconfig/selinux
SELINUX=disabled

Copie o arquivo de configuração padrão ‘config.php.default‘ para ‘config.php‘ e modifique as configurações conforme mostrado.

/opt/observium
cp config.php.default config.php

Agora abra o arquivo 'config.php' e insira os detalhes do MySQL, como nome do banco de dados, nome de usuário e senha.

vi config.php
// Database config
$config['db_host'] = 'localhost';
$config['db_user'] = 'observium';
$config['db_pass'] = 'dbpassword';
$config['db_name'] = 'observium';

Em seguida, adicione uma entrada para a localização binária fping em config.php. Na distribuição RHEL a localização é diferente.

$config['fping'] = "/usr/sbin/fping";

Em seguida, execute o seguinte comando para configurar o banco de dados MySQL e insira o esquema de arquivo padrão do banco de dados.

php includes/update/update.php

Etapa 6: configurar o Apache para Observium

Agora crie um diretório ‘rrd’ no diretório ‘/opt/observium’ para armazenar RRDs.

/opt/observium
mkdir rrd

Em seguida, conceda a propriedade do Apache ao diretório ‘rrd’ para escrever e armazenar RRDs neste diretório.

chown apache:apache rrd

Crie uma diretiva Apache Virtual Host para Obervium no arquivo ‘/etc/httpd/conf/httpd.conf’.

vi /etc/httpd/conf/httpd.conf

Adicione a seguinte diretiva Virtual Host na parte inferior do arquivo e habilite a seção Virtualhost conforme mostrado na imagem abaixo.

<VirtualHost *:80>
  DocumentRoot /opt/observium/html/
  ServerName  observium.domain.com
  CustomLog /opt/observium/logs/access_log combined
  ErrorLog /opt/observium/logs/error_log
  <Directory "/opt/observium/html/">
  AllowOverride All
  Options FollowSymLinks MultiViews
  </Directory>
  </VirtualHost>

Para manter os logs do observium, crie um diretório ‘logs’ para o Apache em ‘/op/observium’ e aplique a propriedade do Apache para gravar logs.

mkdir /opt/observium/logs
chown apache:apache /opt/observium/logs

Após todas as configurações, reinicie o serviço Apache.

service httpd restart

Etapa 7: Criar usuário administrador do Observium

Adicione um primeiro usuário, dê nível 10 para administrador. Certifique-se de substituir o nome de usuário e a senha pela sua escolha.

cd /opt/observium
./adduser.php tecmint tecmint123 10

User tecmint added successfully.

Em seguida, adicione um novo dispositivo e execute os seguintes comandos para preencher os dados do novo dispositivo.

./add_device.php <hostname> <community> v2c
./discovery.php -h all
./poller.php -h all

Em seguida, defina um cron jobs, crie um novo arquivo ‘/etc/cron.d/observium’ e adicione o seguinte conteúdo.

33  */6   * * *   root    /opt/observium/discovery.php -h all >> /dev/null 2>&1
*/5 *      * * *   root    /opt/observium/discovery.php -h new >> /dev/null 2>&1
*/5 *      * * *   root    /opt/observium/poller-wrapper.py 1 >> /dev/null 2>&1

Recarregue o processo cron para obter novas entradas.

/etc/init.d/cron reload

A etapa final é adicionar os serviços httpd e mysqld em todo o sistema, para iniciar automaticamente após a inicialização do sistema.

chkconfig mysqld on
chkconfig httpd on

Por fim, abra seu navegador favorito e aponte para http://Your-Ip-Address.

Tour de capturas de tela do Observium

A seguir estão as capturas de tela de meados de 2013, retiradas do site Observium. Para uma visualização atualizada, verifique a demonstração ao vivo.

Conclusão

Observium não significa remover completamente outras ferramentas de monitoramento, como Nagios ou Cacti, mas sim adicioná-las com um excelente conhecimento de determinados dispositivos. Por esse motivo, é importante implantar o Observium com Naigos ou outros sistemas de monitoramento para fornecer alertas e o Cacti para produzir gráficos personalizados de seus dispositivos de rede.

Links de referência:

  1. Página inicial do Observium
  2. Documentação do Observium