Πώς να παρακολουθείτε την απόδοση του διακομιστή CentOS 8/7 χρησιμοποιώντας το Netdata
Υπάρχουν τόνοι εργαλείων παρακολούθησης που χρησιμοποιούνται για την παρακολούθηση της απόδοσης του συστήματος και την αποστολή ειδοποιήσεων σε περίπτωση που κάτι πάει στραβά. Ωστόσο, τα βήματα εγκατάστασης και διαμόρφωσης είναι συχνά κουραστικά.
Το Netdata είναι ένα ανοιχτού κώδικα εργαλείο παρακολούθησης και αντιμετώπισης προβλημάτων σε πραγματικό χρόνο που απαιτεί μόνο μερικά βήματα για να εγκατασταθεί. Το αποθετήριο Git συνοδεύεται από ένα αυτοματοποιημένο σενάριο που χειρίζεται το μεγαλύτερο μέρος της διαδικασίας εγκατάστασης και διαμόρφωσης και αφαιρεί την περίπλοκη διαμόρφωση που σχετίζεται με άλλα εργαλεία παρακολούθησης.
Το Netdata έχει γίνει εξαιρετικά δημοφιλές από την αρχική του κυκλοφορία τον Οκτώβριο του 2013. Συλλέγει μετρήσεις σε πραγματικό χρόνο, όπως χρήση CPU και RAM, στατιστικά εύρους ζώνης και χρήση δίσκου και τα εμφανίζει σε εύκολα ερμηνευτικά γραφήματα/ γραφικές παραστάσεις.
Έχει κάνει τεράστια άλματα και αυτό του έχει κερδίσει μια θέση στα ανερχόμενα αστέρια του Forbes 2020 Cloud 100. Αυτή η λίστα αποτελεί τις 100 κορυφαίες ιδιωτικές εταιρείες cloud.
Σε αυτό το άρθρο, θα δούμε πώς μπορείτε να εγκαταστήσετε το Netdata στο CentOS 8/7 για να παρακολουθείτε την παρακολούθηση σε πραγματικό χρόνο, την απόδοση και την υγεία των διακομιστών και των εφαρμογών.
Υποστηριζόμενες πλατφόρμες
Το Netdata υποστηρίζει τις ακόλουθες διανομές:
- CentOS 8 και CentOS 7
- RHEL 8 και RHEL 7
- Fedora Linux
Πώς να εγκαταστήσετε το Netdata στο CentOS Linux
1. Πριν ξεκινήσουμε την εγκατάσταση του Netdata, ορισμένα προαπαιτούμενα πακέτα είναι υποχρεωτικά. Αλλά πρώτα, ενημερώστε το σύστημα και εγκαταστήστε το αποθετήριο EPEL όπως φαίνεται.
sudo yum update
sudo yum install epel-release
2. Στη συνέχεια, εγκαταστήστε τα απαραίτητα πακέτα λογισμικού όπως φαίνεται.
sudo yum install gcc make git curl zlib-devel git automake libuuid-devel libmnl autoconf pkgconfig findutils
3. Μόλις ολοκληρώσετε την εγκατάσταση των προαπαιτούμενων πακέτων, κλωνοποιήστε το αποθετήριο git Netdata όπως φαίνεται.
git clone https://github.com/netdata/netdata.git --depth=100
4. Στη συνέχεια, πλοηγηθείτε στον κατάλογο Netdata και εκτελέστε το σενάριο install-required-packages.sh. Το σενάριο ανιχνεύει τη διανομή Linux σας και εγκαθιστά πρόσθετα πακέτα που απαιτούνται κατά την εγκατάσταση του Netdata.
cd netdata/
./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata
5. Τέλος, για να εγκαταστήσετε το Netdata, εκτελέστε την αυτοματοποιημένη δέσμη ενεργειών Netdata όπως φαίνεται παρακάτω.
sudo ./netdata-installer.sh
Κατά την εκτέλεση του σεναρίου, θα ενημερωθείτε για το πού θα αποθηκευτούν τα κρίσιμα αρχεία Netdata. Αυτά περιλαμβάνουν όπως αρχεία διαμόρφωσης, αρχεία ιστού, πρόσθετα, αρχεία βάσης δεδομένων και αρχεία καταγραφής για να αναφέρουμε μόνο μερικά.
6. Πατήστε "ENTER" για να ξεκινήσετε τη διαδικασία εγκατάστασης. Κατά τη διαδικασία εγκατάστασης, θα σας δοθούν μερικές συμβουλές για το πώς να αποκτήσετε πρόσβαση στο Netdata στο πρόγραμμα περιήγησης και να διαχειριστείτε τα Netdata, όπως την εκκίνηση και τη διακοπή του.
Το σενάριο τρέχει για αρκετή ώρα κάνοντας όλες τις απαραίτητες διαμορφώσεις και τροποποιήσεις κατά τη διαδικασία εγκατάστασης. Για την περίπτωσή μου, χρειάστηκαν περίπου 3-5 λεπτά και μόλις ολοκληρωθεί, η έξοδος που εμφανίζεται θα πρέπει να αποτελεί επιβεβαίωση ότι η εγκατάσταση ήταν επιτυχής.
7. Μόλις εγκατασταθεί, πρέπει να έχουμε τον δαίμονα Netdata σε λειτουργία. Για να ξεκινήσετε, ενεργοποιήστε τον δαίμονα Netdata κατά την εκκίνηση και επαληθεύστε την κατάσταση, καλέστε τις ακόλουθες εντολές:
sudo systemctl start netdata
sudo systemctl enable netdata
sudo systemctl status netdata
8. Από προεπιλογή, το Netdata ακούει στη θύρα 19999 και μπορείτε να το επιβεβαιώσετε χρησιμοποιώντας την εντολή netstat όπως φαίνεται:
sudo netstat -pnltu | grep netdata
9. Πρέπει να ανοίξουμε αυτήν τη θύρα στο τείχος προστασίας για να έχουμε πρόσβαση στα Netdata μέσω ενός προγράμματος περιήγησης. Επομένως, εκτελέστε τις παρακάτω εντολές:
sudo firewall-cmd --add-port=19999/tcp --permanent
sudo firewall-cmd --reload
10. Για πρόσβαση στα Netdata, ενεργοποιήστε το πρόγραμμα περιήγησής σας και περιηγηθείτε στη διεύθυνση URL όπως φαίνεται:
http://centos8-ip:19999/
Θα λάβετε έναν πίνακα εργαλείων που θα σας προσφέρει τη συνολική απόδοση του συστήματος σε εύχρηστα και όμορφα γραφήματα.
Μη διστάσετε να ρίξετε μια ματιά σε διαφορετικά γραφήματα κάνοντας κλικ στις μετρήσεις που αναφέρονται στη δεξιά πλαϊνή γραμμή. Για παράδειγμα, για να δείτε τις υπηρεσίες systemd που εκτελούνται, κάντε κλικ στην επιλογή «υπηρεσίες συστήματος», όπως φαίνεται.
Ασφάλεια Netdata με Βασικό έλεγχο ταυτότητας στο CentOS
Όπως μπορεί ανησυχητικά να έχετε παρατηρήσει, δεν υπάρχει καμία μορφή ελέγχου ταυτότητας που παρέχεται από το Netdata. Αυτό σημαίνει ότι σχεδόν οποιοσδήποτε μπορεί να έχει πρόσβαση στον πίνακα εργαλείων, υπό την προϋπόθεση ότι έχει στη διάθεσή του τη διεύθυνση IP του Netdata.
Ευτυχώς, μπορούμε να διαμορφώσουμε τον βασικό έλεγχο ταυτότητας χρησιμοποιώντας το πρόγραμμα htpasswd και τον διακομιστή ιστού Nginx ως αντίστροφο διακομιστή μεσολάβησης. Επομένως, πρόκειται να εγκαταστήσουμε τον διακομιστή ιστού Nginx.
sudo dnf install nginx
Με το Nginx εγκατεστημένο, θα δημιουργήσουμε ένα αρχείο διαμόρφωσης μέσα στον κατάλογο /etc/nginx/conf.d. Ωστόσο, μη διστάσετε να χρησιμοποιήσετε τον κατάλογο διαθέσιμοι ιστότοποι εάν χρησιμοποιείτε το Nginx για άλλους σκοπούς εκτός από το Netdata.
sudo vim /etc/nginx/conf.d/default.conf
Προσθέστε ολόκληρη την ακόλουθη διαμόρφωση και βεβαιωθείτε ότι έχετε αλλάξει τις οδηγίες server_ip και example.com με τη δική σας διεύθυνση IP διακομιστή και όνομα διακομιστή.
upstream netdata-backend {
server 127.0.0.1:19999;
keepalive 64;
}
server {
listen server_ip:80;
server_name example.com;
auth_basic "Authentication Required";
auth_basic_user_file netdata-access;
location / {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://netdata-backend;
proxy_http_version 1.1;
proxy_pass_request_headers on;
proxy_set_header Connection "keep-alive";
proxy_store off;
}
}
Για έλεγχο ταυτότητας χρήστη, θα δημιουργήσουμε ένα όνομα χρήστη και έναν κωδικό πρόσβασης για έναν χρήστη που ονομάζεται tecmint χρησιμοποιώντας το εργαλείο htpasswd και θα διατηρήσουμε τα διαπιστευτήρια στο netdata-access αρχείο.
sudo htpasswd -c /etc/nginx/netdata-access tecmint
Δώστε τον κωδικό πρόσβασης και επιβεβαιώστε τον.
Στη συνέχεια, επανεκκινήστε τον διακομιστή ιστού Nginx για να τεθούν σε ισχύ οι αλλαγές.
sudo systemctl restart nginx
Για να ελέγξετε εάν η διαμόρφωση πήγε σωστά, προχωρήστε και περιηγηθείτε στη διεύθυνση IP του διακομιστή σας.
http://server-ip
Στη συνέχεια, θα έχετε πρόσβαση στον πίνακα εργαλείων Netdata.
Και αυτό είναι, παιδιά. Σας καθοδηγήσαμε στην εγκατάσταση του εργαλείου παρακολούθησης Netdata στο CentOS 8 και διαμορφώσαμε τον βασικό έλεγχο ταυτότητας για την ασφάλεια του εργαλείου παρακολούθησης. Στείλτε μας μια κραυγή και πείτε μας πώς πήγε.