Ricerca nel sito web

Observium: un sistema completo di gestione e monitoraggio della rete per RHEL/CentOS


Observium è un'applicazione di osservazione e monitoraggio della rete basata su PHP/MySQL, che supporta un'ampia gamma di sistemi operativi/piattaforme hardware tra cui Linux, Windows, FreeBSD, Cisco, HP, Dell, NetApp e molti altri. Cerca di presentare un'interfaccia web robusta e semplice per monitorare la salute e le prestazioni della tua rete.

Observium raccoglie dati dai dispositivi con l'aiuto di SNMP e li visualizza in modo grafico tramite un'interfaccia web. Fa un uso intenso del pacchetto RRDtool. Ha una serie di obiettivi di progettazione di base, che includono la raccolta di quante più informazioni storiche sui dispositivi, il rilevamento completamente automatico con interruzioni manuali lievi o nulle e un'interfaccia molto semplice ma potente.

Dimostrazione dell'Osservatorio

Si prega di avere una rapida demo online dell'Observium distribuito dallo sviluppatore nel seguente percorso.

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

Questo articolo ti guiderà su come installare Observium su RHEL, CentOS e Scientific Linux, la versione supportata è EL (Enterprise Linux) 6.x. Attualmente Observium non è supportato rispettivamente per le versioni EL 4 e 5. Pertanto, non utilizzare le seguenti istruzioni su queste versioni.

Passaggio 1: aggiunta dei repository RPM Forge ed EPEL

RPMForge e EPEL sono un repository che fornisce molti pacchetti software RPM aggiuntivi per RHEL, CentOS e Scientific Linux. Installiamo e abilitiamo questi due repository basati sulla comunità utilizzando la seguente serie di comandi.

Sui sistemi 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
Sui sistemi 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

Passaggio 2: installare i pacchetti software necessari

Ora installiamo i pacchetti software richiesti per 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 desideri monitorare le macchine virtuali, installa il pacchetto "libvirt".

yum install libvirt

Passaggio 3: download di Observium

Per tua informazione, Observium ha due edizioni seguenti

  1. Edizione Community/Open Source: questa edizione è disponibile gratuitamente per il download con meno funzionalità e poche correzioni di sicurezza.
  2. Edizione in abbonamento: questa edizione include funzionalità aggiuntive, funzionalità/correzioni rapide, supporto hardware e meccanismo di rilascio basato su SVN facile da usare.

Per prima cosa vai direttamente a /opt, qui installeremo Observium come impostazione predefinita. Se desideri eseguire l'installazione da qualche altra parte, modifica i comandi e la configurazione di conseguenza. Ti consigliamo vivamente di eseguire prima la distribuzione nella directory /opt. Una volta verificato che tutto funzioni perfettamente, puoi installarlo nella posizione desiderata.

Se hai un abbonamento Observium attivo, puoi utilizzare i repository SVN per scaricare la versione più recente. Un account di abbonamento valido solo per una singola installazione e due installazioni di test o di sviluppo con patch di sicurezza giornaliere, nuove funzionalità e correzioni di bug.

Per scaricare la versione stabile e corrente più recente di Observium, è necessario avere un pacchetto svn installato sul sistema, in modo da estrarre i file dal repository SVN.

yum install svn
Versione di sviluppo
svn co http://svn.observium.org/svn/observium/trunk observium
Versione stabile
svn co http://svn.observium.org/svn/observium/branches/stable observium

Non abbiamo un abbonamento valido, quindi proveremo Observium utilizzando la Community/Open Source Edition. Scarica l'ultima versione stabile di "observium-community-latest.tar.gz" e scompattala come mostrato.

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

Passaggio 4: creazione del database MySQL di Observium

Questa è un'installazione pulita di MySQL. Quindi, imposteremo una nuova password di root con l'aiuto del seguente comando.

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

Ora accedi alla shell mysql e crea il nuovo database Observium.

mysql -u root -p

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

Passaggio 5: configura Observium

Configurare SELinux per funzionare con Observium va oltre lo scopo di questo articolo, quindi abbiamo disabilitato SELinux. Se hai familiarità con le regole di SELinux, puoi configurarlo, ma non c'è garanzia che Observium funzioni con SELinux attivo. Quindi, meglio disabilitarlo permanentemente. Per farlo, apri il file "/etc/sysconfig/selinux" e modifica l'opzione da "permissive" a "disabled".

vi /etc/sysconfig/selinux
SELINUX=disabled

Copia il file di configurazione predefinito "config.php.default" in "config.php" e modifica le impostazioni come mostrato.

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

Ora apri il file 'config.php' e inserisci i dettagli MySQL come nome del database, nome utente e password.

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

Quindi aggiungi una voce per la posizione binaria fping in config.php. Nella distribuzione RHEL la posizione è diversa.

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

Successivamente, esegui il comando seguente per configurare il database MySQL e inserire lo schema di file predefinito del database.

php includes/update/update.php

Passaggio 6: configura Apache per Observium

Ora crea una directory "rrd" nella directory "/opt/observium" per memorizzare gli RRD.

/opt/observium
mkdir rrd

Successivamente, concedi ad Apache la proprietà della directory "rrd" per scrivere e archiviare gli RRD in questa directory.

chown apache:apache rrd

Crea una direttiva Apache Virtual Host per Obervium nel file "/etc/httpd/conf/httpd.conf".

vi /etc/httpd/conf/httpd.conf

Aggiungi la seguente direttiva Virtual Host nella parte inferiore del file e abilita la sezione Virtualhost come mostrato nello screenshot qui sotto.

<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>

Per conservare i log di Observium, crea una directory "logs" per Apache in "/op/observium" e applica la proprietà Apache per scrivere i log.

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

Dopo tutte le impostazioni, riavvia il servizio Apache.

service httpd restart

Passaggio 7: crea l'utente amministratore di Observium

Aggiungi un primo utente, assegna il livello 10 all'amministratore. Assicurati di sostituire nome utente e password con la tua scelta.

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

User tecmint added successfully.

Successivamente aggiungi un nuovo dispositivo ed esegui i seguenti comandi per popolare i dati per il nuovo dispositivo.

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

Successivamente imposta un cron job, crea un nuovo file "/etc/cron.d/observium" e aggiungi i seguenti contenuti.

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

Ricarica il processo cron per acquisire nuove voci.

/etc/init.d/cron reload

Il passaggio finale consiste nell'aggiungere i servizi httpd e mysqld a livello di sistema, in modo che si avviino automaticamente dopo l'avvio del sistema.

chkconfig mysqld on
chkconfig httpd on

Infine, apri il tuo browser preferito e seleziona http://Your-Ip-Address.

Tour delle schermate dell'Osservatorio

Di seguito sono riportate le schermate della scorsa metà del 2013, prese dal sito dell'Observium. Per una visualizzazione aggiornata, controlla la demo dal vivo.

Conclusione

Observium non significa rimuovere completamente altri strumenti di monitoraggio come Nagios o Cacti, ma piuttosto aggiungerli con una comprensione eccezionale di determinati dispositivi. Per questo motivo, è importante implementare Observium con Naigos o altri sistemi di monitoraggio per fornire avvisi e Cacti per produrre grafici personalizzati dei dispositivi di rete.

Link di riferimento:

  1. Home page dell'Osservatorio
  2. Documentazione dell'Osservatorio