Jump to content



DHT22 Nagios plugin for Single Board Computers


Frostbyte

Recommended Posts

Στο σπιτι εχω εναν αριθμο απο Single Board Computers, οπου κατα κυριο λογω τα χρησιμοποιω ως monitors (Icinga2+Graphite+Grafana) και αλλα lightweight tasks (MySQL, Radius).
Σε καποια δοση θεωρησα πως θα ηταν καλη ιδεα να εκμεταλευτω και τα GPIO headers αυτων των συσκευων, για να εμπλουτισω τα γραφηματα μου και με δεδομενα θερμοκρασιας/υγρασιας περιβαλλοντος, οποτε τσιμπισα και μερικους αισθητηρες DHT22.

Αρχικα το ολο setup ετρεχε σε ενα Raspberry Pi 3 και ενα Raspberry Pi 1 Model B+. Η διαδικασια ηταν αρκετα straightforward, μιας που υπηρχε διαθεσιμο python library (και Νagios check επισης γραμμενο σε python), απο την Adafruit.

Δεν ημουν ομως ευχαριστημενος με δυο πραγματα:

  1. Το Raspberry Pi 1 Model B+, ανα διαστηματα, καθυστερουσε πολυ και ορισμενες φορες βαραγε spikes ή απλα δεν ανταποκρινοταν.
  2. To Raspberry Pi 3, παρολο που ηταν σαφεστατα δυνατοτερο, δεν μπορουσε να διαχειριστει ELK stack λογω του 1GB μνημης που διαθετει.

 

Ξερω πως ισως εχω κρινει λιγο αυστηρα το ASUS Tinker Board στο παρελθον, ομως αποφασισα να του δωσω μια ευκαιρια (προκειμενου να δω αν η επιπλεον μνημη που προσφερει, θα μου επιτρεψει να υλοποιησω το ELK stack, σε μια SBC πλατφορμα). Τα υπολοιπα εξτραδακια τα οποια δινει, σε σχεση με το Raspberry Pi 3, δεν ειναι κατι το συνταρακτικο - but they're nice to have, I guess. Σε γενικες γραμμες ειναι decent, υπαρχει υποστηριξη απο Armbian (που πρακτικα με επεισε να το δοκιμασω), αλλα ακομα αντιμετωπιζει καποιες απο τις παιδικες του ασθενειες.

Αφου λοιπον τελειωσα με την μεταφορα των υπηρεσιων απο το Raspberry Pi 3 στο ASUS Tinker Board και μετα απο το Raspberry Pi 1 Model B+ στο Raspberry Pi 3, το πρωτο πραγμα με το οποιο ηρθα αντιμετωπος ηταν το γεγονος οτι: παρολο που τα GPIO Headers του ASUS Tinker Board και του Raspberry Pi 3 εχουν την ιδια διαταξη και αριθμηση, η διαχειριση τους απο το λειτουργικο ειναι τελειως διαφορετικη. Δυστυχως απο την μερια της Adafruit, το ASUS Tinker Board, δεν ειναι μεσα στις συσκευες για τις οποιες παρεχουν συνοδευτικο λογισμικο.

Κανοντας μια μικρη ερευνα, ανακαλυψα οτι η ASUS παρεχει ενα ειδικα διαμορφωμενο wiringPi library για το Tinker Board, συνεπως αποφασισα να γραψω ενα Nagios plugin το οποιο μπορει να χρησιμοποιηθει τοσο σε Raspberry Pi οσο και σε ASUS Tinker Board και να συλλεγει δεδομενα απο τον αισθητηρα DHT22.


Για οποιον ενδιαφερεται, μπορει να το βρει εδω: https://github.com/FrostbyteGR/check_dht22

  • Like 5
Link to comment
Share on other sites

Δεν ειναι η τελικη του μορφη (θα μπουν κι αλλες συσκευες εν καιρω), but you can get an idea where I'm going with it.

Επισης θα αντικαταστησω τους αισθητηρες με ενα ζευγαρι SHT31-D, καθως οπως φαινεται και σε ενα απο τα παρακατω γραφηματα, ο DHT22 δεν ειναι 100% reliable ακομα και μετα απο τις διαφορες βελτιωσεις που εχω κανει στο plugin. (Αυτο σημαινει οτι θα ακολουθησει ενα ακομα plugin για I2C sensors, stay tuned)

 

Grafana_Network1.PNG

Grafana_Network2.PNG

Grafana_Network3.PNG

Grafana_Health.PNG

Grafana_Power.PNG

Grafana_Storage.PNG

Έγινε επεξεργασία από Frostbyte
Link to comment
Share on other sites

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Δημιουργία...

Important Information

Ο ιστότοπος theLab.gr χρησιμοποιεί cookies για να διασφαλίσει την καλύτερη εμπειρία σας κατά την περιήγηση. Μπορείτε να προσαρμόσετε τις ρυθμίσεις των cookies σας , διαφορετικά θα υποθέσουμε ότι είστε εντάξει για να συνεχίσετε.