Το Icinga 2 είναι ένα δημοφιλές σύστημα παρακολούθησης πόρων δικτύου ανοιχτού κώδικα και το Icinga Web 2 είναι μια διεπαφή ιστού για το Icinga 2. Αυτό το άρθρο θα περιγράψει πώς να τα εγκαταστήσετε σε έναν διακομιστή CentOS 7.
Προαπαιτούμενα
- Ένα νέο παράδειγμα διακομιστή Vultr CentOS 7.
- Ένας χρήστης sudo .
Βήμα 1: Ενημερώστε το σύστημα
sudo yum install epel-release -y
sudo yum update -y
sudo shutdown -r now
Μετά την επανεκκίνηση, χρησιμοποιήστε τον ίδιο χρήστη sudo για να συνδεθείτε.
Βήμα 2: Εγκαταστήστε το Apache
Εγκαταστήστε το Apache χρησιμοποιώντας το YUM:
sudo yum install httpd -y
Απενεργοποιήστε την προκαθορισμένη σελίδα καλωσορίσματος Apache:
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
Απαγορεύστε στον Apache να εκθέτει αρχεία και καταλόγους στον ριζικό κατάλογο ιστού /var/www/htmlστους επισκέπτες:
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
Ξεκινήστε την υπηρεσία Apache και ξεκινήστε την κατά την εκκίνηση:
sudo systemctl start httpd.service
sudo systemctl enable httpd.service
Βήμα 3: Εγκαταστήστε το MariaDB
Εγκαταστήστε το MariaDB χρησιμοποιώντας το YUM:
sudo yum install mariadb mariadb-server -y
Ξεκινήστε την υπηρεσία MariaDB:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Ασφαλίστε την εγκατάσταση του MariaDB:
sudo /usr/bin/mysql_secure_installation
Κατά τη διάρκεια της διαδικασίας, απαντήστε σε ερωτήσεις στην οθόνη ως εξής:
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
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
Βήμα 4: Εγκαταστήστε την PHP
Εγκαταστήστε την PHP και τις απαραίτητες επεκτάσεις PHP όπως απαιτείται από το Icinga 2 και το Icinga Web 2:
sudo yum install php php-gd php-intl php-ldap php-ZendFramework php-ZendFramework-Db-Adapter-Pdo-Mysql -y
Στη συνέχεια, πρέπει να ρυθμίσετε τη σωστή ζώνη ώρας για το μηχάνημά σας, η οποία μπορεί να προσδιοριστεί από τον επίσημο ιστότοπο της PHP . Στην περίπτωση του διακομιστή μου, η τιμή ζώνης ώρας είναι "America/Los_Angeles".
Ανοίξτε το αρχείο διαμόρφωσης PHP με τον επεξεργαστή vi:
sudo vi /etc/php.ini
Βρείτε τη γραμμή:
;date.timezone =
Αλλάξτε το σε:
date.timezone = America/Los_Angeles
Αποθήκευση και έξοδος:
:wq!
Επανεκκινήστε την υπηρεσία Apache για να τεθούν σε ισχύ νέες διαμορφώσεις:
sudo systemctl restart httpd.service
Βήμα 5: Εγκαταστήστε το Icinga 2 και τα πρόσθετά του
Στο CentOS 7, μπορείτε να εγκαταστήσετε το Icinga 2 και τα πρόσθετά του χρησιμοποιώντας το αποθετήριο icinga YUM:
sudo rpm --import http://packages.icinga.org/icinga.key
sudo rpm -i https://packages.icinga.org/epel/7/release/noarch/icinga-rpm-release-7-1.el7.centos.noarch.rpm
sudo yum install icinga2 nagios-plugins-all -y
Μπορείτε να μάθετε περισσότερα για αυτές τις προσθήκες από το Monitoring Plugins Project .
Ξεκινήστε την υπηρεσία Icinga 2:
sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service
Από προεπιλογή, το πρόγραμμα Icinga 2 θα ενεργοποιήσει τρεις δυνατότητες: checker, mainlog και ειδοποίηση. Μπορείτε να το επιβεβαιώσετε χρησιμοποιώντας την ακόλουθη εντολή:
sudo icinga2 feature list
Βήμα 6: Ρυθμίστε τα Icinga 2 IDO modules
6.1) Εγκαταστήστε τις μονάδες IDO (Icinga Data Output) για MySQL
sudo yum install icinga2-ido-mysql -y
6.2) Δημιουργήστε μια βάση δεδομένων για το Icinga 2
Συνδεθείτε στο κέλυφος MySQL ως root:
mysql -u root -p
Χρησιμοποιήστε τον κωδικό πρόσβασης root MariaDB που ορίσατε στο βήμα 3 για να συνδεθείτε.
Δημιουργήστε μια βάση δεδομένων με το όνομα "icinga" και έναν χρήστη βάσης δεδομένων icingaμε το όνομα του κωδικού πρόσβασης icingaκαι, στη συνέχεια, εκχωρήστε δικαιώματα σε αυτήν τη βάση δεδομένων σε αυτόν τον χρήστη της βάσης δεδομένων.
CREATE DATABASE icinga;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
FLUSH PRIVILEGES;
EXIT;
6.3) Εισαγάγετε το σχήμα Icinga 2 IDO
mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql
Όταν σας ζητηθεί, εισαγάγετε τον κωδικό πρόσβασης root MariaDB για να ολοκληρώσετε την εργασία.
6.4) Ενεργοποιήστε τη λειτουργική μονάδα IDO MySQL
sudo vi /etc/icinga2/features-available/ido-mysql.conf
Βρείτε αυτές τις γραμμές:
//user = "icinga"
//password = "icinga"
//host = "localhost"
//database = "icinga"
αποσχολιάστε τα ως εξής:
user = "icinga"
password = "icinga"
host = "localhost"
database = "icinga"
Αποθήκευση και έξοδος:
:wq!
Ενεργοποιήστε τη δυνατότητα ido-mysql:
sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service
Βήμα 7: Εγκαταστήστε το Icinga Web 2
7.1) Ρυθμίστε τον εξωτερικό σωλήνα εντολών
sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
Για να μπορέσετε να στείλετε εντολές στο Icinga 2 χρησιμοποιώντας μια διεπαφή ιστού, πρέπει να προσθέσετε τον χρήστη "apache" στην icingacmdομάδα:
sudo usermod -a -G icingacmd apache
Μπορείτε να επαληθεύσετε την τροποποίησή σας χρησιμοποιώντας την ακόλουθη εντολή:
id apache
7.2) Εγκαταστήστε τα πακέτα icingaweb2 και icingacli RPM
sudo yum install icingaweb2 icingacli -y
Τοποθετήστε τον ριζικό κατάλογο ιστού Apache στη θέση του Icinga Web 2:
sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart httpd.service
7.3) Δημιουργήστε ένα διακριτικό ρύθμισης για μελλοντική χρήση στη διεπαφή ιστού
sudo icingacli setup token create
7.4) Τροποποιήστε τους κανόνες του τείχους προστασίας για να επιτρέψετε την πρόσβαση στο διαδίκτυο
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
7.5) Εκκινήστε τον οδηγό εγκατάστασης Icinga 2 στη διεπαφή Ιστού
Κατευθύνετε το πρόγραμμα περιήγησής σας στην ακόλουθη διεύθυνση URL:
http://<your-server-ip>/icingaweb2/setup
7.6) Στη σελίδα καλωσορίσματος, εισαγάγετε το διακριτικό ρύθμισης που δημιουργήσατε νωρίτερα και, στη συνέχεια, κάντε κλικ στο κουμπί "Επόμενο".
7.7) Στη σελίδα Μονάδες, επιλέξτε τις μονάδες που θέλετε να ενεργοποιήσετε (τουλάχιστον, απαιτείται η λειτουργική μονάδα παρακολούθησης) και, στη συνέχεια, κάντε κλικ στο κουμπί "Επόμενο".
7.8) Στη σελίδα Απαιτήσεις, βεβαιωθείτε ότι ικανοποιείται κάθε στοιχείο απαίτησης και, στη συνέχεια, κάντε κλικ στο κουμπί "Επόμενο".
7.9) Στη σελίδα Έλεγχος ταυτότητας, πρέπει να επιλέξετε τη μέθοδο ελέγχου ταυτότητας κατά την πρόσβαση στο Icinga Web 2. Εδώ, μπορείτε να επιλέξετε Databaseκαι, στη συνέχεια, να κάνετε κλικ στο κουμπί "Επόμενο".
7.10) Στη σελίδα Πόροι βάσης δεδομένων, συμπληρώστε όλα τα απαιτούμενα πεδία όπως παρακάτω και, στη συνέχεια, κάντε κλικ στο κουμπί "Επόμενο".
- Όνομα πόρου*: icingaweb_db
- Τύπος βάσης δεδομένων*: MySQL
- Host*: localhost
- Όνομα βάσης δεδομένων*: icingaweb2
- Όνομα χρήστη*: root
- Κωδικός πρόσβασης*:
<MariaDB-root-password>
7.11) Στη σελίδα Backend ελέγχου ταυτότητας, χρησιμοποιώντας το προεπιλεγμένο όνομα backend icingaweb2, κάντε κλικ στο Nextκουμπί για να προχωρήσετε.
7.12) Στη σελίδα Διαχείριση, ρυθμίστε τον πρώτο λογαριασμό διαχείρισης Icinga Web 2 (ας πούμε ότι είναι icingaweb2admin) και τον κωδικό πρόσβασης (icingaweb2pass) και, στη συνέχεια, κάντε κλικ στο κουμπί "Επόμενο".
7.13) Στη σελίδα Διαμόρφωση εφαρμογής, μπορείτε να προσαρμόσετε τις επιλογές διαμόρφωσης που σχετίζονται με την εφαρμογή και την καταγραφή για να ταιριάζουν στις ανάγκες σας. Προς το παρόν, μπορείτε να χρησιμοποιήσετε τις προεπιλεγμένες τιμές που αναφέρονται παρακάτω και να κάνετε κλικ στο κουμπί "Επόμενο" για να συνεχίσετε.
- Εμφάνιση Stacktraces: Ελεγμένο
- Τύπος αποθήκευσης προτιμήσεων χρήστη*: Βάση δεδομένων
- Τύπος καταγραφής*: Syslog
- Επίπεδο καταγραφής*: Σφάλμα
- Πρόθεμα εφαρμογής*: icingaweb2
7.14) Στη σελίδα Αναθεώρηση, ελέγξτε ξανά τη διαμόρφωσή σας και, στη συνέχεια, κάντε κλικ στο Nextκουμπί.
7.15) Στη σελίδα υποδοχής διαμόρφωσης μονάδας παρακολούθησης, κάντε κλικ στο Nextκουμπί.
7.16) Στη σελίδα Monitoring Backend, χρησιμοποιήστε το προεπιλεγμένο όνομα icingabackend και τον τύπο backend IDOκαι, στη συνέχεια, κάντε κλικ στο κουμπί "Next".
7.17) Στη σελίδα Monitoring IDO Resource, εισαγάγετε τις λεπτομέρειες της βάσης δεδομένων IDO που ρυθμίσατε νωρίτερα και, στη συνέχεια, κάντε κλικ στο κουμπί "Επόμενο".
- Όνομα πόρου*: icinga_ido
- Τύπος βάσης δεδομένων*: MySQL
- Host*: localhost
- Όνομα βάσης δεδομένων*: icinga
- Όνομα χρήστη*: icinga
- Κωδικός πρόσβασης*: icinga
7.18) Στη σελίδα Command Transport, συνεχίστε να χρησιμοποιείτε αυτές τις προεπιλεγμένες τιμές που αναφέρονται παρακάτω. Κάντε κλικ στο Nextκουμπί για να προχωρήσετε.
- Όνομα μεταφοράς*: icinga2
- Τύπος μεταφοράς*: Τοπικό αρχείο εντολών
- Αρχείο εντολών*:
/var/run/icinga2/cmd/icinga2.cmd
7.19) Στη σελίδα Ασφάλεια παρακολούθησης, συνεχίστε να χρησιμοποιείτε την προεπιλεγμένη τιμή:
- Προστατευμένες προσαρμοσμένες μεταβλητές: *pw*,*pass*,community
Κάντε κλικ στο κουμπί "Επόμενο" για να μεταβείτε στην επόμενη σελίδα.
7.20) Στη σελίδα κριτικής, ελέγξτε ξανά τη διαμόρφωσή σας και, στη συνέχεια, κάντε κλικ στο Finishκουμπί.
7.21) Στα Συγχαρητήρια! σελίδα, κάντε κλικ στο Login to Icinga Web 2κουμπί για να μεταβείτε στη σελίδα σύνδεσης του Icinga Web 2. Χρησιμοποιήστε τον λογαριασμό διαχείρισης Icinga Web 2 και τον κωδικό πρόσβασης που ρυθμίσατε νωρίτερα για να συνδεθείτε. Μη διστάσετε να εξερευνήσετε τον πίνακα ελέγχου του Icinga Web 2.
Αυτό ολοκληρώνει το σεμινάριο μας. Ευχαριστούμε που το διαβάσατε.