Icinga: Εργαλείο «Παρακολούθηση διακομιστή Linux» ανοιχτού κώδικα επόμενης γενιάς για RHEL/CentOS 7.0


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

Αυτό το θέμα θα επικεντρωθεί σε μια βασική εγκατάσταση του εργαλείου παρακολούθησης Icinga 1 από δυαδικά αρχεία σε CentOS ή RHEL 7, χρησιμοποιώντας το RepoForge (παλαιότερα γνωστά ως RPMforge) αποθετήρια για το CentOS 6, με την κλασική διεπαφή ιστού που διατηρεί ο Apache Webserver και τη χρήση των προσθηκών Nagios που θα εγκατασταθούν στο σύστημά σας.

Διαβάστε επίσης: Εγκαταστήστε το Nagios Monitoring Tool στο RHEL/CentOS

Απαιτήσεις

Μια βασική εγκατάσταση LAMP σε RHEL/CentOS 7.0 χωρίς MySQL και PhpMyAdmin, αλλά με αυτές τις ενότητες PHP: php-cli
php-pear php-xmlrpc php-xsl php-pdo php-soap php-gd.

  1. Εγκατάσταση Basic LAMP σε RHEL/CentOS 7.0

Βήμα 1: Εγκατάσταση του Εργαλείου παρακολούθησης Icinga

1. Πριν προχωρήσετε στην εγκατάσταση του Icinga από δυαδικά αρχεία, προσθέστε αποθετήρια RepoForge στο σύστημά σας εκδίδοντας την ακόλουθη εντολή, ανάλογα με τον υπολογιστή σας.

Για 86-64-bit
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
Για 32-bit
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm

2. Μετά την προσθήκη των αποθετηρίων RepoForge στο σύστημά σας, ξεκινήστε με τη βασική εγκατάσταση του Icinga χωρίς ακόμη τη διεπαφή ιστού, εκτελώντας την ακόλουθη εντολή.

yum install icinga icinga-doc

3. Το επόμενο βήμα είναι να προσπαθήσετε να εγκαταστήσετε τη διεπαφή ιστού Icinga που παρέχεται από το πακέτο icinga-gui. Φαίνεται ότι προς το παρόν αυτό το πακέτο έχει κάποια ανεπίλυτα ζητήματα με το CentOS/RHEL 7 και θα δημιουργήσει ορισμένα σφάλματα ελέγχου συναλλαγών, αλλά μπορείτε να δοκιμάσετε ελεύθερα να εγκαταστήσετε το πακέτο, ίσως εν τω μεταξύ το πρόβλημα επιλύθηκε.

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

yum install icinga-gui

4. Η διαδικασία εγκατάστασης του πακέτου icinga-gui που παρέχει τη διεπαφή ιστού είναι η ακόλουθη. Κατεβάστε πρώτα τον ιστότοπο RepoForge από τη φόρμα δυαδικού πακέτου χρησιμοποιώντας την εντολή wget.

Για 86-64-bit
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.x86_64.rpm
Για 32-bit
wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.i686.rpm

5. Αφού το wget ολοκληρώσει τη λήψη του πακέτου, δημιουργήστε έναν κατάλογο με το όνομα icinga-gui (μπορείτε να επιλέξετε άλλο όνομα αν θέλετε), μετακινήστε το icinga-gui RPM δυαδικό σε αυτόν τον φάκελο, εισάγετε το φάκελο και εξαγάγετε τα περιεχόμενα του πακέτου RPM εκδίδοντας την επόμενη σειρά εντολών.

mkdir icinga-gui
mv icinga-gui-* icinga-gui
cd icinga-gui
rpm2cpio icinga-gui-* | cpio -idmv

6. Τώρα που έχετε εξαχθεί το πακέτο icinga-gui, χρησιμοποιήστε την εντολή ls για να οπτικοποιήσετε το περιεχόμενο του φακέλου – θα πρέπει να προκύψουν τρεις νέοι κατάλογοι – < b>κλπ, usr και var. Ξεκινήστε εκτελώντας μια αναδρομική αντιγραφή και των τριών καταλόγων που προέκυψαν στη διάταξη του συστήματος αρχείων ρίζας του συστήματός σας.

cp -r etc/* /etc/
cp -r usr/* /usr/
cp -r var/* /var/

Βήμα 2: Τροποποίηση του αρχείου ρύθμισης παραμέτρων του Icinga Apache και των δικαιωμάτων συστήματος

7. Όπως παρουσιάζεται σε αυτήν την εισαγωγή του άρθρου, το σύστημά σας πρέπει να έχει εγκατεστημένο διακομιστή Apache HTTP και PHP για να μπορεί να εκτελεί το Icinga Web Interface.

Αφού ολοκληρώσετε τα παραπάνω βήματα, ένα νέο αρχείο διαμόρφωσης θα πρέπει να υπάρχει τώρα στη διαδρομή conf.d του Apache με το όνομα icinga.conf. Για να μπορέσετε να αποκτήσετε πρόσβαση στο Icinga από μια απομακρυσμένη τοποθεσία από το πρόγραμμα περιήγησης, ανοίξτε αυτό το αρχείο ρυθμίσεων και αντικαταστήστε όλο το περιεχόμενό του με τις ακόλουθες διαμορφώσεις.

nano /etc/httpd/conf.d/icinga.conf

Βεβαιωθείτε ότι έχετε αντικαταστήσει όλο το περιεχόμενο του αρχείου με το ακόλουθο.

ScriptAlias /icinga/cgi-bin "/usr/lib64/icinga/cgi"

<Directory "/usr/lib64/icinga/cgi">
 SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
    </IfModule>
 </Directory>

Alias /icinga "/usr/share/icinga/"

<Directory "/usr/share/icinga/">

 SSLRequireSSL
   Options None
   AllowOverride All
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
   </IfModule>
</Directory>

8. Αφού επεξεργαστείτε το αρχείο διαμόρφωσης Icinga httpd, προσθέστε χρήστη συστήματος Apache στην ομάδα συστήματος Icinga και χρησιμοποιήστε τα ακόλουθα δικαιώματα συστήματος στις επόμενες διαδρομές συστήματος.

usermod -aG icinga apache
chown -R icinga:icinga /var/spool/icinga/*
chgrp -R icinga /etc/icinga/*
chgrp -R icinga /usr/lib64/icinga/*
chgrp -R icinga /usr/share/icinga/*

9. Πριν ξεκινήσετε τη διαδικασία συστήματος Icinga και τον διακομιστή Apache, βεβαιωθείτε ότι έχετε απενεργοποιήσει επίσης τον μηχανισμό ασφαλείας SELinux εκτελώντας την εντολή setenforce 0 και κάνετε τις αλλαγές μόνιμες με την επεξεργασία του αρχείου /etc/selinux/config, αλλάζοντας το πλαίσιο του SELINUX από επιβολή σε απενεργοποιημένο.

nano /etc/selinux/config

Τροποποιήστε την οδηγία SELINUX για να μοιάζει με αυτό.

SELINUX=disabled

Μπορείτε επίσης να χρησιμοποιήσετε την εντολή getenforce για να δείτε την κατάσταση του SELinux.

10. Ως τελευταίο βήμα πριν από την έναρξη της διαδικασίας και της διεπαφής ιστού Icinga, ως μέτρο ασφαλείας μπορείτε πλέον να τροποποιήσετε τον κωδικό πρόσβασης διαχειριστή Icinga εκτελώντας την ακόλουθη εντολή και, στη συνέχεια, να ξεκινήσετε και τις δύο διαδικασίες.

htpasswd -cm /etc/icinga/passwd icingaadmin
systemctl start icinga
systemctl start httpd

Βήμα 3: Εγκαταστήστε τα πρόσθετα Nagios και αποκτήστε πρόσβαση στη διεπαφή Ιστού Icinga

11. Για να ξεκινήσετε την παρακολούθηση δημόσιων εξωτερικών υπηρεσιών σε κεντρικούς υπολογιστές με Icinga, όπως HTTP, IMAP, POP3, SSH, DNS, ping ICMP και πολλές άλλες υπηρεσίες προσβάσιμες από το διαδίκτυο ή το LAN, πρέπει να εγκαταστήσετε < Το πακέτο b>Nagios Plugins παρέχεται από το EPEL Repositories.

rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
yum install yum install nagios-plugins nagios-plugins-all

12. Για να συνδεθείτε στο Icinga Web Interface, ανοίξτε ένα πρόγραμμα περιήγησης και τοποθετήστε το στη διεύθυνση URL http://system_IP/icinga/. Χρησιμοποιήστε το icingaadmin ως όνομα χρήστη και τον κωδικό πρόσβασης που αλλάξατε νωρίτερα και μπορείτε πλέον να δείτε την κατάσταση του συστήματος τοπικής υποδοχής.

Αυτό είναι όλο! Τώρα έχετε το Icinga basic με την κλασική διεπαφή ιστού – nagios like – εγκατεστημένη και εκτελούμενη στο σύστημά σας. Χρησιμοποιώντας τα Nagios Plugins, μπορείτε τώρα να αρχίσετε να προσθέτετε νέους κεντρικούς υπολογιστές και εξωτερικές υπηρεσίες για έλεγχο και παρακολούθηση, επεξεργάζοντας τα αρχεία διαμόρφωσης Icinga που βρίσκονται στη διαδρομή /etc/icinga/. Εάν χρειάζεται να παρακολουθείτε εσωτερικές υπηρεσίες σε απομακρυσμένους κεντρικούς υπολογιστές, τότε πρέπει να εγκαταστήσετε έναν πράκτορα σε απομακρυσμένους κεντρικούς υπολογιστές όπως NRPE, NSClient++, SNMP για να συλλέξετε δεδομένα και να τα στείλετε στην κύρια διεργασία Icinga.

Διαβάστε επίσης

  1. Εγκαταστήστε το NRPE Plugin και παρακολουθήστε απομακρυσμένους κεντρικούς υπολογιστές Linux
  2. Εγκαταστήστε το NSClient++ Agent και παρακολουθήστε τους απομακρυσμένους κεντρικούς υπολογιστές των Windows