Raumeffizient Temperaturen mit Raspberry Pi und Nagios überwachen
Über die letzten paar Monate habe ich eine Monitoring-Lösung für unsere Entwicklungs- und Produktionssysteme implementiert und ausgebaut. Da Nagios die meistgeliebte / meistgehasste Monitoring-Lösung ist, fühlte ich mich verpflichtet zu lernen, wie es funktioniert. Nach Kämpfen mit Benutzerrechten, Firewall-Regeln, kaputten Abhängigkeiten und im Grunde jedem anderen Problem, das es werfen konnte, habe ich endlich ein funktionierendes Nagios-System. Da ich Bootstrap mag und Konfiguration so schmerzlos wie möglich machen will, nahm ich mir die Zeit, Adagios oben drauf zu installieren. Ich empfehle es dringend, da es den Umgang mit Nagios zu einem viel angenehmeren Erlebnis macht und verdammt viel besser aussieht.
Jetzt zum spaßigen Teil: Da der Trend anhält, liebe ich es, Raspberry Pis überall einzusetzen, wo ich kann. Sie sind klein, ziehen wenig Strom und haben genug Inputs für Sensoren. Kürzlich scrollte ich durch r/sysadmin und stieß auf folgenden Post: „Letzten Monat haben die Putzfrauen meine geliebten Server verletzt.“ Das ließ mich nachdenken… jetzt, wo ich Festplattenplatz, Speichernutzung, CPU-Last überwache, vielleicht sollte ich anfangen, Serverraum-Temperaturen zu monitoren.
Benötigte Tools
- Raspberry Pi
- 4,7k Ohm Widerstand
- DS18B20
Verdrahtung
Ich testete mein Setup zuerst mit Breadboard und Jumperkabeln, bevor ich etwas verlötete. Falls das für Sie keine Option ist, löten Sie den 4,7k Ohm Widerstand zwischen 3,3V (rotes Kabel) und Datenleitung (gelbes Kabel).
Unten ein Diagramm, wie alles verdrahtet sein sollte, entnommen aus dem Adafruit-Tutorial.
NRPE einrichten
Damit Nagios die Temperatur überwachen kann, braucht es einen NRPE-Agenten auf dem Raspberry Pi. Hier ein schneller Guide zur NRPE-Installation.
- NRPE-2.x von folgender Seite herunterladen und entpacken: https://sourceforge.net/projects/nagios/files/nrpe-2.x/
- Inhalt entpacken:
tar -zxvf nrpe-2.15.tar.gz - In extrahiertes Verzeichnis wechseln:
cd nrpe-2.15/ - Symbolischen Link erstellen, damit NRPE die ARM SSL-Bibliothek findet:
sudo rm /usr/lib/libssl.so && sudo ln -s /usr/lib/arm-linux-gnueabihf/libssl.so /usr/lib/libssl.so - Konfigurationsprozess ausführen, fehlende Dependencies beheben:
./configure - Nagios User und Gruppe anlegen, als Root bauen und installieren:
sudo useradd nagios && sudo make all && sudo make install && sudo make install-plugin && sudo make install-daemon - Sample-Config in NRPE-Install-Verzeichnis kopieren:
sudo mkdir /usr/local/nagios/etc && sudo cp sample-config/nrpe.cfg /usr/local/nagios/etc/nrpe.cfg && sudo chown -R nagios:nagios /usr/local/nagios/etc/ - Debian init.d Skript kopieren und ausführbar machen:
sudo cp init-script.debian /etc/init.d/nrpe && sudo chmod 700 /etc/init.d/nrpe - nrpe.cfg editieren, Nagios-Server zu allowed_hinzufügen und check_temp Kommando definieren:
sudo vim /usr/local/nagios/etc/nrpe.cfg→allowed_hosts=127.0.0.1,YOUR_NAGIOS_SERVER_IP_HERE→command[check_temp]=/usr/local/nagios/libexec/check_temp.sh -w 30 -c 40→ Port 5666 freigeben:nrpe 5666/tcp #nrpe - NRPE Service starten:
sudo service nrpe start - Laufen bestätigen:
ps aux | grep nrpe→ solltenagios 8869 0.0 0.2 4084 980 ? Ss 21:43 0:00 /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -danzeigen - NRPE bei Reboot autostarten:
sudo update-rc.d nrpe defaults
NRPE-Agent auf Raspberry Pi installiert – jetzt check_temp Skript installieren.
Code
Folgendes Skript als check_temp.sh in /usr/local/nagios/libexec/ speichern. Ausführbar machen: chmod +x /usr/local/nagios/libexec/check_temp.sh
Für mehr Details: Monitoring Room Temperatures with a Raspberry Pi and Nagios
Herstellungsprozess
- Mehrere DS18B20 1-Wire Sensoren an Raspberry Pi anschließen für präzises Temperaturmonitoring
- Temperatur mit DS18B20 am Raspberry Pi 2 auslesen
- Heim-Temperatur- & Feuchtigkeitsmonitor mit Raspberry Pi & Web-Dashboard – Echtzeit-Fernüberwachung
- Professionelle Temperaturüberwachung mit Raspberry Pi und DS18B20
- Temperaturmessung mit Maxim 1-Wire Sensoren und DS2482 I2C-Bridge am Raspberry Pi
- Home Energy Centre: Solar PV, Thermische Panels & Raumtemperaturen mit Raspberry Pi & Moteino überwachen
- Präzise Temperaturüberwachung im Server-Schrank mit Raspberry Pi
- Remote-Wetterüberwachung mit Raspberry Pi 3 & PubNub
- Raspberry Pi Raumtemperatur-Überwachung mit Gnuplot-Graphen & E-Mail-Alerts
- 433 MHz Smart-Home-Controller mit Sensorflare und Raspberry Pi selbst bauen