Monitorare rete e server con Observium (su Ubuntu)

Tenere sotto controllo i parametri vistali di un rete è fondamentale. Observium è una comoda e pratica piattaforma di monitoraggio multi-device che trasforma un semplice computer nel grande fratello della tua infrastruttura. Voglio sapere quanto traffico passa da una porta dello switch? In che momento della giornata decine di utenti mi verranno a dire ‘La rete è lenta’? Su quale switch è collegato un particolare Mac-Address? Posso rispondere a queste domande interpellando Observium.

Non essendo una mago di Linux la mia esperienza va molto “a tentativi”. Tenta una volta, tenta la seconda e sono riuscito ad installare l’ultima versione di Observium su Ubuntu 16.04.

screen-capture-graf

 

Ma ora veniamo a noi. Istalliamo Observium su Ubuntu (non me ne vogliano i più esperti, sicuramente la guida è migliorabile e ogni suggerimento e ben accetto).

Installare Observium su Ubuntu

La guida si divide in diversi passaggi che devono essere eseguiti come root. Seguiteli tutti fino in fondo per avere un’installazione perfettamente funzionante di Observium

1. Aggiornamento di Ubuntu

Aggiornare la versione di Ubuntu con gli ultimi update:

apt-get update
apt-get upgrade

2. Installare e configurazione di MySQL

Istallazione:

apt-get install mysql-server mysql-client

Configurazione di MySQL con il comando:

mysql_secure_installation

MySQL farà alcune domande. Ho risposto come segue:

Set root password? [Y/n] y
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y

Creazione dell’utente root, del database dedicato ad Observium con relativo utente:

mysql -u root -p
mysql> create database observium;
mysql> grant all privileges on observium.* to obsuser@localhost identified by 'obspassword';
mysql> flush privileges;
mysql> exit
Bye

3. Installazione dei pacchetti necessari a Observium

apt-get install libapache2-mod-php7.0 php7.0-cli php7.0-mysql php7.0-mysqli php7.0-gd php7.0-mcrypt php7.0-json php-pear snmp fping mysql-server mysql-client python-mysqldb rrdtool subversion whois mtr-tiny ipmitool graphviz imagemagick apache2

4. Installazione e configurazione di Observium

Download e decompattazione dell’ultima versione di Observium

mkdir -p /opt/observium && cd /opt
wget http://www.observium.org/observium-community-latest.tar.gz
tar zxvf observium-community-latest.tar.gz
cp config.php.default config.php

Modifica del file config.php con i dati relativi al database creato sopra:

nano config.php

Configurazione iniziale del DB

./discovery.php -u

Creazione delle directory necessarie al funzionament di Observium

mkdir logs
mkdir rrd
sudo chown www-data:www-data rrd

5. Configurazione di Apache

La guida è stata fatta su Apache 2.4. Per versioni precedenti leggi le note a fondo pagina.

Verifica della versione di Apache:

dpkg -l apache2

Modifica del file di configurazione di Apache:

nano /etc/apache2/sites-available/000-default.conf

Inserire questo codice:


<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /opt/observium/html
    <FilesMatch \.php$>
      SetHandler application/x-httpd-php
    </FilesMatch>
    <Directory />
            Options FollowSymLinks
            AllowOverride None
    </Directory>
    <Directory /opt/observium/html/>
            DirectoryIndex index.php
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Require all granted
    </Directory>
    ErrorLog  ${APACHE_LOG_DIR}/error.log
    LogLevel warn
    CustomLog  ${APACHE_LOG_DIR}/access.log combined
    ServerSignature On
</VirtualHost>

Altre Opzioni

phpenmod mcrypt
a2dismod mpm_event
a2enmod mpm_prefork
a2enmod php7.0
a2enmod rewrite

Riavvio di  Apache

sudo service apache2 restart

6. Primo avvio di Observium

Creazione del primo utente Admin con relativa password:

./adduser.php admin admin 10

Aggiunta del primo device da controllare:

./add_device.php <hostname> <community> v2c

Avvio del primo ciclo di poller

./discovery.php -h all
./poller.php -h all

Pianificazione automatica del processo tramite Cron:

sudo nano /etc/crontab

Inserire nel file questa pianificazione

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

7. Monitoraggio

Ora tutto è pronto! Basta entrare nel pannello all’indirizzo http://IPSERVER per verificare il dispositivo aggiunto in precedenza o per aggiungerne di nuovi.

screen-capture

Buon monitoraggio a tutti

Note

Per la realizzazione di questa installazione e la conseguente stesura dell’articolo ho preso spunto da diverse guide. La più importante è quella presente sul sito di Observium e la potete trovare qui: Observium

Molto utile è stata anche la lettura di questo articolo dal sito RoseHosting. Se manca qualcosa provare a chiederlo a Google.

 

One Reply to “Monitorare rete e server con Observium (su Ubuntu)”

  1. La parte complicata per me non è installare il server (anche perché con Docker ci sono già delle immagini belle e pronte) ma aggiungere un dispositivo. Quali sono i requisiti? Cosa bisogna installare e configurare? E cosa sono i parametri che passi in
    ./add_device.php v2c
    ?

    Grazie,
    Andrea

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.