Observium: Ένα πλήρες σύστημα διαχείρισης και παρακολούθησης δικτύου για το RHEL/CentOS


Το Observium είναι μια εφαρμογή Παρατήρησης και Παρακολούθησης Δικτύων που βασίζεται σε PHP/MySQL, η οποία υποστηρίζει ένα ευρύ φάσμα λειτουργικών συστημάτων/πλατφορμών υλικού, όπως Linux, Windows, FreeBSD, Cisco, HP, Dell, NetApp και πολλά άλλα. Επιδιώκει να παρουσιάσει μια ισχυρή και απλή διεπαφή ιστού για την παρακολούθηση της υγείας και της απόδοσης του δικτύου σας.

Το Observium συλλέγει δεδομένα από συσκευές με τη βοήθεια του SNMP και εμφανίζει αυτά τα δεδομένα σε γραφικό μοτίβο μέσω μιας διεπαφής ιστού. Κάνει μεγάλη χρήση του πακέτου RRDtool. Έχει έναν αριθμό λεπτών βασικών στόχων σχεδιασμού, που περιλαμβάνει τη συλλογή τόσων ιστορικών πληροφοριών για συσκευές, την πλήρη αυτόματη ανακάλυψη με ελαφρά ή καθόλου χειροκίνητη διακοπή και την ύπαρξη μιας πολύ απλής αλλά ισχυρής διεπαφής.

Επίδειξη Observium

Έχετε μια γρήγορη διαδικτυακή επίδειξη του Observium που έχει αναπτυχθεί από τον προγραμματιστή στην παρακάτω τοποθεσία.

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

Αυτό το άρθρο θα σας καθοδηγήσει σχετικά με τον τρόπο εγκατάστασης του Observium σε RHEL, CentOS και Scientific Linux, η υποστηριζόμενη έκδοση είναι EL (Enterprise Linux) 6.x. Προς το παρόν, το Observium δεν υποστηρίζεται για την έκδοση EL 4 και 5 αντίστοιχα. Επομένως, μην χρησιμοποιείτε τις ακόλουθες οδηγίες σε αυτές τις εκδόσεις.

Βήμα 1: Προσθήκη αποθετηρίων RPM Forge και EPEL

Το RPMForge και το EPEL είναι ένα αποθετήριο που παρέχει πολλά πρόσθετα πακέτα λογισμικού rpm για RHEL, CentOS και Scientific Linux. Ας εγκαταστήσουμε και ενεργοποιήσουμε αυτά τα δύο αποθετήρια που βασίζονται στην κοινότητα χρησιμοποιώντας τις ακόλουθες σοβαρές εντολές.

Στα συστήματα 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
Σε συστήματα 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

Βήμα 2: Εγκαταστήστε τα απαραίτητα πακέτα λογισμικού

Τώρα ας εγκαταστήσουμε τα απαιτούμενα πακέτα λογισμικού που απαιτούνται για το 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

Εάν θέλετε να παρακολουθείτε εικονικές μηχανές, εγκαταστήστε το πακέτο «libvirt».

yum install libvirt

Βήμα 3: Λήψη του Observium

Προς ενημέρωσή σας, το Observium έχει δύο παρακάτω εκδόσεις

  1. Έκδοση κοινότητας/Ανοιχτού κώδικα: Αυτή η έκδοση διατίθεται δωρεάν για λήψη με λιγότερες δυνατότητες και λίγες διορθώσεις ασφαλείας.
  2. Έκδοση Συνδρομής: Αυτή η έκδοση συνοδεύεται από πρόσθετες λειτουργίες, γρήγορες δυνατότητες/διορθώσεις, υποστήριξη υλικού και εύχρηστο μηχανισμό έκδοσης που βασίζεται σε SVN.

Αρχικά, μεταβείτε απευθείας στο /opt, εδώ θα εγκαταστήσουμε το Observium ως προεπιλογή. Εάν θέλετε να εγκαταστήσετε κάπου αλλού, τροποποιήστε τις εντολές και τις ρυθμίσεις παραμέτρων ανάλογα. Σας προτείνουμε ανεπιφύλακτα να αναπτύξετε πρώτα στον κατάλογο /opt. Μόλις βεβαιωθείτε ότι όλα λειτουργούν τέλεια, μπορείτε να εγκαταστήσετε στην επιθυμητή τοποθεσία.

Εάν έχετε ενεργή συνδρομή στο Observium, μπορείτε να χρησιμοποιήσετε τα αποθετήρια SVN για να πραγματοποιήσετε λήψη της πιο πρόσφατης έκδοσης. Ένας έγκυρος λογαριασμός συνδρομής ισχύει μόνο για μία εγκατάσταση και δύο εγκαταστάσεις δοκιμής ή ανάπτυξης με καθημερινές ενημερώσεις κώδικα ασφαλείας, νέες δυνατότητες και διορθώσεις σφαλμάτων.

Για να πραγματοποιήσετε λήψη της πιο πρόσφατης σταθερής και τρέχουσας έκδοσης του Observium, πρέπει να έχετε ένα πακέτο svn εγκατεστημένο στο σύστημα, προκειμένου να τραβήξετε τα αρχεία από το αποθετήριο SVN.

yum install svn
Έκδοση ανάπτυξης
svn co http://svn.observium.org/svn/observium/trunk observium
Σταθερή Έκδοση
svn co http://svn.observium.org/svn/observium/branches/stable observium

Δεν έχουμε έγκυρη συνδρομή, επομένως θα δοκιμάσουμε το Observium χρησιμοποιώντας την Έκδοση Κοινότητας/Ανοιχτού Κώδικα. Κατεβάστε την πιο πρόσφατη σταθερή έκδοση «observium-community-latest.tar.gz» και αποσυσκευάστε την όπως φαίνεται.

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

Βήμα 4: Δημιουργία βάσης δεδομένων Observium MySQL

Αυτή είναι μια καθαρή εγκατάσταση της MySQL. Έτσι, θα ορίσουμε έναν νέο κωδικό πρόσβασης root με τη βοήθεια της παρακάτω εντολής.

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

Τώρα συνδεθείτε στο κέλυφος mysql και δημιουργήστε τη νέα βάση δεδομένων Observium.

mysql -u root -p

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

Βήμα 5: Διαμόρφωση του Observium

Η ρύθμιση παραμέτρων του SELinux για εργασία με το Observium ξεφεύγει από το πεδίο εφαρμογής αυτού του άρθρου, επομένως απενεργοποιήσαμε το SELinux. Εάν είστε εξοικειωμένοι με τους κανόνες του SELinux, τότε μπορείτε να το ρυθμίσετε, αλλά δεν υπάρχει εγγύηση ότι το Observium λειτουργεί με ενεργό SELinux. Επομένως, καλύτερα να το απενεργοποιήσετε μόνιμα. Για να το κάνετε, ανοίξτε το αρχείο "/etc/sysconfig/selinux" και αλλάξτε την επιλογή από "επιτρεπτή" σε "απενεργοποιημένη".

vi /etc/sysconfig/selinux
SELINUX=disabled

Αντιγράψτε το προεπιλεγμένο αρχείο διαμόρφωσης "config.php.default" στο "config.php" και τροποποιήστε τις ρυθμίσεις όπως φαίνεται.

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

Τώρα ανοίξτε το αρχείο ‘config.php’ και εισαγάγετε λεπτομέρειες MySQL, όπως όνομα βάσης δεδομένων, όνομα χρήστη και κωδικό πρόσβασης.

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

Στη συνέχεια, προσθέστε μια καταχώρηση για fping δυαδική τοποθεσία στο config.php. Στη διανομή RHEL η τοποθεσία είναι διαφορετική.

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

Στη συνέχεια, εκτελέστε την ακόλουθη εντολή για να ρυθμίσετε τη βάση δεδομένων MySQL και να εισαγάγετε το προεπιλεγμένο σχήμα αρχείου της βάσης δεδομένων.

php includes/update/update.php

Βήμα 6: Διαμόρφωση του Apache για το Observium

Τώρα δημιουργήστε έναν κατάλογο "rrd" στον κατάλογο "/opt/observium" για αποθήκευση RRD.

/opt/observium
mkdir rrd

Στη συνέχεια, παραχωρήστε την κυριότητα του Apache στον κατάλογο «rrd» για εγγραφή και αποθήκευση RRD σε αυτόν τον κατάλογο.

chown apache:apache rrd

Δημιουργήστε μια οδηγία Apache Virtual Host για το Obervium στο αρχείο «/etc/httpd/conf/httpd.conf».

vi /etc/httpd/conf/httpd.conf

Προσθέστε την ακόλουθη οδηγία Virtual Host στο κάτω μέρος του αρχείου και ενεργοποιήστε την ενότητα Virtualhost όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.

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

Για να διατηρήσετε αρχεία καταγραφής observium, δημιουργήστε έναν κατάλογο "logs" για τον Apache στην περιοχή "/op/observium" και εφαρμόστε την ιδιοκτησία του Apache για να γράψετε αρχεία καταγραφής.

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

Μετά από όλες τις ρυθμίσεις, επανεκκινήστε την υπηρεσία Apache.

service httpd restart

Βήμα 7: Δημιουργία χρήστη διαχειριστή Observium

Προσθέστε έναν πρώτο χρήστη, δώστε επίπεδο 10 για διαχειριστή. Φροντίστε να αντικαταστήσετε το όνομα χρήστη και τον κωδικό πρόσβασης με την επιλογή σας.

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

User tecmint added successfully.

Στη συνέχεια, προσθέστε μια νέα συσκευή και εκτελέστε τις ακόλουθες εντολές για να συμπληρώσετε τα δεδομένα για τη νέα συσκευή.

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

Στη συνέχεια ορίστε εργασίες cron, δημιουργήστε ένα νέο αρχείο «/etc/cron.d/observium» και προσθέστε τα ακόλουθα περιεχόμενα.

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

Επαναλάβετε τη φόρτωση της διαδικασίας cron για λήψη νέων καταχωρήσεων.

/etc/init.d/cron reload

Το τελευταίο βήμα είναι να προσθέσετε υπηρεσίες httpd και mysqld σε όλο το σύστημα, για αυτόματη εκκίνηση μετά την εκκίνηση του συστήματος.

chkconfig mysqld on
chkconfig httpd on

Τέλος, ανοίξτε το αγαπημένο σας πρόγραμμα περιήγησης και επιλέξτε http://Your-IP-Address.

Περιήγηση στο Observium Screenshot

Ακολουθούν οι λήψεις οθόνης των περασμένων μέσων του 2013, που ελήφθησαν από τον ιστότοπο του Observium. Για ενημερωμένη προβολή, ελέγξτε τη ζωντανή επίδειξη.

συμπέρασμα

Το Observium δεν σημαίνει την πλήρη κατάργηση άλλων εργαλείων παρακολούθησης όπως τα Nagios ή Cacti, αλλά μάλλον την προσθήκη τους με καταπληκτική κατανόηση ορισμένων συσκευών. Για αυτόν τον λόγο, είναι σημαντικό να αναπτύξετε το Observium με το Naigos ή άλλα συστήματα παρακολούθησης για την παροχή ειδοποίησης και τους Cacti να παράγουν προσαρμοσμένα γραφήματα των συσκευών δικτύου σας.

Σύνδεσμοι αναφοράς:

  1. Ιστοσελίδα του Observium
  2. Τεκμηρίωση Observium