check_ganglia_metric είναι ένα plugin Nagios που σας επιτρέπει να προκαλέσει προειδοποιήσεις σχετικά με οποιαδήποτε Ganglia μετρικό.
check_ganglia_metric ήταν σε μεγάλο βαθμό εμπνέεται από check_ganglia_metric.php Βλαντιμίρ Vuksan, αλλά έρχεται με μια σειρά από βελτιώσεις.
Εγκατάσταση
# PiP εγκαταστήσετε check_ganglia_metric
... Ή:
# Easy_install check_ganglia_metric
Ganglia Διαμόρφωση
Εκτός αν ο διακομιστής σας Nagios και τα γάγγλια Meta Δαίμονα εκτελούνται στον ίδιο ξενιστή, τότε μάλλον πρέπει να επεξεργαστείτε gmetad.conf σας να επιτρέπει τις απομακρυσμένες συνδέσεις από το διακομιστή σας Nagios.
Για να επιτρέψετε συνδέσεις από nagios-server.example.com:
trusted_hosts nagios-server.example.com
Για να επιτρέψετε συνδέσεις από όλους τους κεντρικούς υπολογιστές (πιθανώς κίνδυνο για την ασφάλεια):
all_trusted για
Έλεγχος για τη γραμμή εντολών
Κατ 'αρχάς, ας δούμε αν check_ganglia_metric μπορεί να επικοινωνήσει με γάγγλια Μέτα Δαίμονα:
check_ganglia_metric.py --gmetad_host = gmetad-server.example.com
& Nbsp? - Metric_host = host.example.com --metric_name = cpu_idle
Κατάσταση Εντάξει, CPU Idle = 99,3% | cpu_idle = 99,3% ;;;;
Η «Κατάσταση Ok" μήνυμα υποδεικνύει ότι check_ganglia_metric εργάζεται. Αν έχετε πρόβλημα να πάρει αυτό στην εργασία, δοκιμάστε ξανά με λεπτομερή καταγραφή ενεργοποιημένη (--verbose), προκειμένου να αποκτήσουν καλύτερη εικόνα για το τι πηγαίνει στραβά.
Τώρα ας προσπαθήσουμε να ρυθμίσουμε ένα όριο συναγερμού:
check_ganglia_metric.py --gmetad_host = gmetad-server.example.com
& Nbsp? - Metric_host = host.example.com --metric_name = cpu_idle --critical = 99
Κατάσταση Κρίσιμη, CPU Idle = 99,6% | cpu_idle = 99,6% ;; 99 ;;
Είπαμε check_ganglia_metric να επιστρέψει μια "κρίσιμη" κατάσταση, εάν η κατάσταση της CPU ήταν μεγαλύτερη από 99. Η «Κατάσταση Κρίσιμη" μήνυμα δηλώνει ότι λειτούργησε. Σημειώστε ότι check_ganglia_metric αναλύει κλίμακες και όρια, σύμφωνα με τις επίσημες οδηγίες της ανάπτυξης της προσθήκης του Nagios.
Για να δείτε μια πλήρη λίστα των επιλογών γραμμής εντολών με σύντομες επεξηγήσεις, τρέχει check_ganglia_metric με την επιλογή --help.
Nagios Διαμόρφωση
Πρώτον, να δημιουργήσει έναν ορισμό εντολή:
εντολή καθορίζουν {
& Nbsp? Command_name check_ganglia_metric
& Nbsp? Command_line /usr/bin/check_ganglia_metric.py --gmetad_host = gmetad-server.example.com --metric_host = $ HOSTADDRESS $ --metric_name = $ ARG1 $ --warning = $ ARG2 $ --critical = $ $ ARG3
}
Τώρα μπορείτε να χρησιμοποιήσετε την παραπάνω εντολή σε ορισμούς των υπηρεσιών σας:
ορίζουν την υπηρεσία {
& Nbsp? Service_description άεργου - Ganglia
& Nbsp? Χρήση some_template
! & Nbsp? Check_command check_ganglia_metric cpu_idle 0: 20 0: 0!
& Nbsp? Host_name host.example.com
}
Αυτό θα λειτουργήσει το πρόστιμο έως ότου κάτι πάει στραβά με check_ganglia_metric (π.χ. το αρχείο cache δεν μπορεί να διαβάσει / γράψει, τα γάγγλια Meta Daemon δεν μπορεί να επιτευχθεί, κλπ). Σε εκείνο το σημείο, κάθε υπηρεσία που βασίζεται σε check_ganglia_metric θα αποτύχει, ίσως πλημμυρίζοντας σας με ειδοποιήσεις. Μπορούμε να αποφευχθεί αυτό, μέσω της χρήσης των υπηρεσιών εξαρτήσεις.
Το πρώτο πράγμα που χρειαζόμαστε είναι ένας ορισμός εντολή για τον έλεγχο της ηλικίας ενός αρχείου:
εντολή καθορίζουν {
& Nbsp? Command_name check_file_age
& Nbsp? Command_line / usr / lib / nagios / plugins / check_file_age -f $ ARG1 $ -w $ ARG2 $ -C $ ARG3 $
}
Στη συνέχεια, ορίζουμε μια υπηρεσία που ελέγχει την ηλικία του αρχείο cache check_ganglia_metric του. Σημειώστε ότι για να είναι πραγματικά αποτελεσματική, η υπηρεσία αυτή πρέπει να ελέγχεται τουλάχιστον ως (κατά προτίμηση περισσότερο) συχνά από ό, τι όλες οι άλλες ελέγχους που βασίζονται σε check_ganglia_metric:
ορίζουν την υπηρεσία {
& Nbsp? Cache service_description για check_ganglia_metric
& Nbsp? Χρήση some_template
& Nbsp?!!! Check_command check_file_age /var/lib/nagios/.check_ganglia_metric.cache 60 120
& Nbsp? HOST_NAME localhost
& Nbsp? Check_interval 1
& Nbsp? Max_check_attempts 1
}
Και τέλος, έχουμε δημιουργήσει την πραγματική εξάρτηση της υπηρεσίας. Σημειώστε ότι έχω ενεργοποιημένη use_regexp_matching στο Nagios, η οποία μου επιτρέπει να χρησιμοποιήσετε τις συνήθεις εκφράσεις στις οδηγίες μου. Με κολλήσει "- Ganglia" στο τέλος του κάθε υπηρεσία που βασίζεται σε check_ganglia_metric, εγώ μπορώ να αποθηκεύσετε μια μεγάλη προσπάθεια:
καθορίζουν servicedependency {
& Nbsp? HOST_NAME localhost
& Nbsp? Cache service_description για check_ganglia_metric
& Nbsp? Dependent_host_name *.
& Nbsp?. Dependent_service_description * - Ganglia $
& Nbsp? Execution_failure_criteria γ, σ
}
Τώρα, αν κάτι πάει στραβά με check_ganglia_metric, μόνο ένα σήμα θα σταλεί έξω σχετικά με το αρχείο της μνήμης cache, και όλα εξαρτώνται από ελέγχους των υπηρεσιών θα πρέπει να διακοπεί μέχρι να διορθώσετε το πρόβλημα που προκάλεσε check_ganglia_metric να αποτύχει. Μόλις διορθωθεί το πρόβλημα, θα πρέπει να ενημερώσετε το timestamp στο αρχείο προσωρινής αποθήκευσης, προκειμένου να θέσει το "Cache για check_ganglia_metric" υπηρεσία πίσω σε μια κατάσταση ΟΚ (το οποίο θα επιτρέψει εξαρτώνται από ελέγχους των υπηρεσιών για να συνεχίσετε):
& Nbsp? /var/lib/nagios/.check_ganglia_metric.cache Αφής
Συμβουλές και Κόλπα
Είναι δυνατόν να πάρετε μια πλήρη λίστα των διαθέσιμων δυνάμεων και τις μετρήσεις με την ενεργοποίηση του "πιο φλύαρη" καταγραφής (-vv). Δεδομένου ότι οι metric_host και METRIC_NAME επιλογές που απαιτούνται, έχετε ένα μικρό κομμάτι από ένα «κότας και του αυγού" πρόβλημα εδώ, αλλά αυτό είναι εντάξει. Απλά παρέχει κάποια εικονικά δεδομένα. Το plugin θα παρουσιάσουν σφάλμα στο τέλος με ένα "υποδοχής / μετρικό δεν βρέθηκε" σφάλμα, αλλά όχι πριν από αυτήν χωματερές μνήμη cache του:
& Nbsp? Check_ganglia_metric.py --gmetad_host = gmetad-server.example.com
& Nbsp? - Metric_host = ομοίωμα --metric_name = ομοίωμα -vv
Τι είναι καινούργιο σε αυτήν την έκδοση:
- Προσθήκη - -metrics_max_age επιλογή
- Συγχώνευση CHANGELOG.rst σε README.rst
Απαιτήσεις :
- Python
- Nagios
Περιορισμοί :
- Δεν λειτουργεί με την Python 2.4
Τα σχόλια δεν βρέθηκε