Serverüberwachung · 4 min read · Oct 18, 2025

Überwachung der Temperaturen von Linux- und Unix-Servern mit Opsview

Überwachung der Temperaturen von Linux- und Unix-Servern mit Opsview

Die Verwaltung des Stromverbrauchs in einem Rechenzentrum ist ein Schlüsselfaktor, um die Gesamtkosten für Energie im Unternehmen niedrig zu halten und sicherzustellen, dass die Server mit optimaler Leistung laufen. Überhitzung kann zu erhöhten Kühlkosten führen und birgt auch das Risiko, dass Server abstürzen.

Die Opsview-Serverüberwachungssoftware kann verwendet werden, um die Servertemperatur sowie die Temperatur einzelner Komponenten innerhalb eines Servers (Speicher, CPU und Festplatten) zu überprüfen und zu alarmieren. Schwellenwerte und Warnungen können festgelegt werden, wenn kritische Temperaturen überschritten werden, um heiß laufende Server im Griff zu behalten.

Dieser Blogbeitrag beschreibt, wie man Opsview konfiguriert, um die Temperatur von Linux- und Unix-Servern zu überwachen.

Schritte:

[ Hinweis: Diese Anleitung geht davon aus, dass das System, das wir überwachen möchten, bereits den Opsview-Agenten installiert hat]

1. Als root müssen wir “lm_sensors” und “hddtemp” installieren (die Namen können je nach Linux-Distribution variieren); auf CentOS/RHEL werden sie über “ yum install lm_sensors hddtemp “ bezogen.

2. Sobald diese Elemente installiert sind, müssen wir “sensors-detect” als root ausführen, um die Elemente zu erkennen, deren Temperatur wir überwachen möchten. Nach Abschluss müssen wir dies speichern (einfach ENTER drücken) und der sensors-detect ist abgeschlossen.

3. Jetzt, da lm_sensors und hddtemp installiert sind, können wir sie lokal wie folgt testen:

HDD Temp:

[root@rhelserver ~]# hddtemp /dev/sda
/dev/sda: ST3120811AS: 31°C

lm_sensors:

[root@rhelserver ~]# sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0:      +38.0°C  (hoch = +84.0°C, kritisch = +100.0°C)
Core 1:      +39.0°C  (hoch = +84.0°C, kritisch = +100.0°C)
Core 2:      +37.0°C  (hoch = +84.0°C, kritisch = +100.0°C)
Core 3:      +38.0°C  (hoch = +84.0°C, kritisch = +100.0°C)  
  
i5k_amb-isa-0000
Adapter: ISA adapter
Ch. 0 DIMM 0: +67.0°C  (niedrig  = +110.5°C, hoch = +124.0°C)

Ch. 1 DIMM 0: +62.0°C  (niedrig  = +110.5°C, hoch = +124.0°C)

Wir können sehen, dass gemäß der obigen Ausgabe unsere Sensoren und deren Temperaturwerte erkannt und wie gewünscht funktionieren. Jetzt müssen wir Plugins hinzufügen, um diese Ausgabe auf einer “pro Sensor”-Basis zu erfassen, damit wir sie zu einer Dienstüberprüfung zur Überwachung der Servertemperatur hinzufügen können.

4. Laden Sie das Plugin “check_lm_sensors” von dem hier angegebenen Link herunter und kopieren Sie es nach /usr/local/nagios/libexec. Sobald dies erledigt ist, extrahieren Sie es mit

tar -zxvf check_lm_sensors-3.1.1.tar.gz

5. Wir können unser neues Plugin als root testen, indem wir Folgendes ausführen:

/usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors –list

was erneut die Sensoren und deren Temperaturen auflisten sollte. Wenn dies nicht funktioniert oder Perl-Fehler ausgibt, bearbeiten Sie die Datei check_lm_sensors mit nano/vim und fügen Sie am Anfang des Skripts Folgendes hinzu:

use lib "/usr/local/nagios/perl/lib/";

6. Um uns zu ermöglichen, diesen Befehl als Benutzer „nagios“ auszuführen (erforderlich für die Dienstüberprüfungen von check_nrpe), müssen wir:

chmod +x /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors
chown –R nagios:nagios /usr/local/nagios/libexec/check_lm_sensors-3.1.1/

7. Wir müssen auch eine Zeile zur Datei /etc/sudoers hinzufügen. Als root-Benutzer fügen Sie die folgende Zeile am Ende von /etc/sudoers hinzu:

nagios ALL=(root) NOPASSWD:/usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors

Dies ermöglicht es dem Benutzer nagios, check_lm_sensors als root auszuführen, ohne sich mit einem Passwort authentifizieren zu müssen.

8. Jetzt müssen wir unsere Überprüfungsbefehle zu unserem Agenten hinzufügen, da wir sie lokal auf dem Server ausführen und die Ausgabe über den check_nrpe-Befehl an unseren Opsview-Server weitergeben. Dazu müssen wir festlegen, was unsere Befehle sind und wie wir sie benennen werden. Dazu müssen wir die Datei „overrides.cfg“ bearbeiten, die sich unter /usr/local/nagios/etc/nrpe_local/override.cfg befindet.

9. Wir müssen diese Datei mit einem Texteditor wie vim oder nano bearbeiten, z. B.

nano /usr/local/nagios/etc/nrpe_local/override.cfg

und Zeilen ähnlich den folgenden hinzufügen:

check_command[core0_temp]=sudo /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors --sanitize --high Core0=45,55

check_command[core1_temp]=sudo /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors --sanitize --high Core1=45,55

check_command[core2_temp]=sudo /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors --sanitize --high Core2=45,55

check_command[core3_temp]=sudo /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors --sanitize --high Core3=45,55

check_command[dimm0_temp]=sudo /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors --sanitize --high Ch.0DIMM0=60,75

check_command[dimm1_temp]=sudo /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors --sanitize --high Ch.1DIMM0=60,75

check_command[sda_temp]=sudo /usr/local/nagios/libexec/check_lm_sensors-3.1.1/check_lm_sensors --sanitize --high sdaTemp=60,75

Dies wird 7 neue Befehle erstellen, wie „core0_temp“, die den vollständigen Pfad ausführen, der auf der rechten Seite des „=“ angegeben ist.

10. Als Nächstes müssen wir den Opsview-Agenten neu laden, indem wir Folgendes ausführen:

service opsview-agent restart

zum Beispiel.

11. Wir können jetzt diese neuen Befehle als Benutzer nagios testen, indem wir zu /usr/local/nagios/libexec navigieren und einen Befehl wie folgt ausführen:

./check_nrpe –H localhost –c dimm0_temp

Dies wird das Ergebnis ausgeben, wie unten, wenn es erfolgreich abgeschlossen wird:

[nagios@rhelserver libexec]$ ./check_nrpe -H localhost -c dimm0_temp  
LM_SENSORS WARNING - Ch.0DIMM0=67.0|Ch.0DIMM0=67.0;60;75;;

12. Jetzt, da alles funktioniert, müssen wir einfach unsere Dienstüberprüfungen in Opsview erstellen und sie einem Host hinzufügen. Dazu melden Sie sich einfach bei Opsview an und navigieren zu „ EINSTELLUNGEN > DIENSTÜBERPRÜFUNGEN “ und klicken auf das grüne „PLUS“-Symbol. Dies lädt eine neue Seite, die Sie mit verschiedenen Einstellungen wie Name, Dienstgruppe usw. ausfüllen müssen.

Die wichtigen Abschnitte für dieses Beispiel sind Plugin und Argumente; im „Plugin“ müssen wir check_nrpe auswählen und in den Argumenten müssen wir etwas Ähnliches wie „ -H $HOSTADDRESS$ -c dimm0_temp “ eingeben; wobei „dimm0_temp“ der Befehl ist, den wir zuvor ausgeführt und zu unserer overrides.cfg-Datei hinzugefügt haben.

13. Sobald wir Dienstüberprüfungen für alle unsere Zeilen erstellt haben, die wir in „overrides.cfg“ auf unserem Server hinzugefügt haben, können wir dann zu „ EINSTELLUNGEN > HOSTS “ navigieren, auf den entsprechenden Host klicken (oder ihn hinzufügen, wenn er derzeit nicht in Opsview ist) und zum Tab ÜBERWACHUNGEN navigieren, wo Sie Ihre neuen Dienstüberprüfungen wie unten auswählen können:

14. Nachdem Sie diese hinzugefügt haben, müssen wir schließlich Opsview neu laden, um unsere Änderungen anzuwenden, über „ EINSTELLUNGEN > ÄNDERUNGEN ANWENDEN “ und „Konfiguration neu laden“. Nach dem Neuladen können wir dann zu unserem Host navigieren und unsere neuen Servertemperaturüberwachungen wie unten anzeigen:

15. Wir können jetzt beginnen, Benachrichtigungsprofile basierend auf Temperaturen zu erstellen, z. B. „Benachrichtigen Sie mich, wenn eine Temperatur für einen meiner Server im Rechenzentrum ‘XYZ’ während dieser Zeiten kritisch wird“, zum Beispiel. Auf diese Weise können wir sicherstellen, dass wir sofort erfahren, wenn die Temperatur eines Servers kritisch wird, über SMS/E-Mail/iOS-Push-Benachrichtigungen, und sofort untersuchen.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.