Drucker mit MRTG überwachen
Das Programm MRTG von Tobias Oetiker ist inzwischen ja schon sehr bekannt. Es eignet sich perfekt um Router per SNMP zu überwachen. Allerdings kann man damit auch Drucker, die SNMP unterstützen überwachen.
Im Geschäft habe ich nun einen Linux Server mit Ubuntu 6.06 und mit diesem möchte ich auch die Netzwerk-Auslastung unserer Drucker Monitoren. An diesem Beispiel zeige ich die Installation von MRTG und die Konfiguration für einen HP Laserjet 2500. Allerdings gibt es keinen (grossen) unterschied vom Laserjet 2500 zu anderen Druckern. Solange diese SNMP unterstützen.
Mit dem folgenden Befehl habe ich noch die zusätzlich benötigte Software installiert
Nun sollte MRTG Installiert sein.
Ich lege die Konfigurationsdatei im Ordner /root/scripts/mrtg/. Dort kann ich auch noch andere Konfigurationsdateien ablegen. Die soeben erstelle Konfigurationsdatei sieht nun so aus. (Die auskommentierten Dateien habe ich entfernt)
Damit die neuen Daten auf der rechten Seite der Grafik angezeigt werden füge ich die folgende Zeile oben in die Konfigurationsdatei ein.
Da ich schlussendlich mehrere Drucker überwachen will, erstelle ich ein kleines Script, dass den MRTG aufruft. Dort kann ich dann auch noch zusätzliche Zeilen einfügen
Damit man das Script nun auch ausführen kann, muss man die Benutzerrechte noch ändern.
Nun ja. Dann wollen wir mal sehen, ob alles funktioniert.
Bei den ersten beiden Malen kam bei mir eine Fehlermeldung. Beim dritten mal war aber alles OK.
Jetzt das Script noch in den Cron installieren. Es reicht, wenn das Script alle 10 Minuten ausgeführt wird.
Jetzt sind die Dateien im Ordner /var/www/mrtg/ gespeichert. Da auf meinem Server noch ein Webserver läuft, kann man die Dateien über den Browser ansehen. Das sollte etwa so aussehen:

Auf der MRTG Homepage steht auch, dass man die Daten vom MRTG als RRD speichern kann. Also sollte eine Auswertung mit dem RRDTool möglich sein. Mal sehen wie das funktioniert.
Im Geschäft habe ich nun einen Linux Server mit Ubuntu 6.06 und mit diesem möchte ich auch die Netzwerk-Auslastung unserer Drucker Monitoren. An diesem Beispiel zeige ich die Installation von MRTG und die Konfiguration für einen HP Laserjet 2500. Allerdings gibt es keinen (grossen) unterschied vom Laserjet 2500 zu anderen Druckern. Solange diese SNMP unterstützen.
Installation
Mit apt-get habe ich MRTG nicht gefunden. Also habe ich das DEB File heruntergeladen und installiert.dpkg --install mrtg_2.12.2-1_i386.deb
Mit dem folgenden Befehl habe ich noch die zusätzlich benötigte Software installiert
apt-get -f install
Nun sollte MRTG Installiert sein.
Konfiguration
MRTG wird nicht über eine zentrale Konfigurationsdatei verwaltet. Man kann pro Gerät eine eigene Datei erstellen und diese dann als Parameter angeben. Die Konfigurationsdateien kann man mit dem Befehl cfgmaker erstellen. Als Parameter gibt man die IP Adresse des Gerätes an. Natürlich kann man noch zusätzliche Parameter angeben, aber die Standardvorgaben sind eigentlich ganz gut.cfgmaker *.*.*.230 > /root/scripts/mrtg/lj2500.jpg
Ich lege die Konfigurationsdatei im Ordner /root/scripts/mrtg/. Dort kann ich auch noch andere Konfigurationsdateien ablegen. Die soeben erstelle Konfigurationsdatei sieht nun so aus. (Die auskommentierten Dateien habe ich entfernt)
cat /root/scripts/mrtg/lj2500.cfg
# for Debian
WorkDir: /var/www/mrtg
EnableIPv6: no
Target[*.*.*.230_1]: 1:public@*.*.*.230:
SetEnv[*.*.*.230_1]: MRTG_INT_IP="*.*.*.230" MRTG_INT_DESCR=""
MaxBytes[*.*.*.230_1]: 1250000
Title[*.*.*.230_1]: Traffic Analysis for 1 -- NPI821398
PageTop[*.*.*.230_1]: <h1>Traffic Analysis for 1 -- NPI821398</h1>
<div id="sysdetails">
<table>
<tr>
<td>System:</td>
<td>NPI821398 in </td>
</tr>
<tr>
<td>Maintainer:</td>
<td></td>
</tr>
<tr>
<td>Description:</td>
<td> </td>
</tr>
<tr>
<td>ifType:</td>
<td>ethernetCsmacd (6)</td>
</tr>
<tr>
<td>ifName:</td>
<td></td>
</tr>
<tr>
<td>Max Speed:</td>
<td>1250.0 kBytes/s</td>
</tr>
<tr>
<td>Ip:</td>
<td>*.*.*.230 ()</td>
</tr>
</table>
</div>Damit die neuen Daten auf der rechten Seite der Grafik angezeigt werden füge ich die folgende Zeile oben in die Konfigurationsdatei ein.
Options[_]: growright
Da ich schlussendlich mehrere Drucker überwachen will, erstelle ich ein kleines Script, dass den MRTG aufruft. Dort kann ich dann auch noch zusätzliche Zeilen einfügen
cat /root/scripts/mrtg/update.sh #!/bin/bash env LANG=C mrtg /root/scripts/mrtg/lj2500.cfg -logging /var/log/mrtg/lj2500.log
Damit man das Script nun auch ausführen kann, muss man die Benutzerrechte noch ändern.
chmod 755 /root/scripts/mrtg/update.sh
Nun ja. Dann wollen wir mal sehen, ob alles funktioniert.
/root/scripts/mrtg/update.sh
Bei den ersten beiden Malen kam bei mir eine Fehlermeldung. Beim dritten mal war aber alles OK.
Jetzt das Script noch in den Cron installieren. Es reicht, wenn das Script alle 10 Minuten ausgeführt wird.
# MRTG */10 * * * * root /root/scripts/mrtg/update.sh
Jetzt sind die Dateien im Ordner /var/www/mrtg/ gespeichert. Da auf meinem Server noch ein Webserver läuft, kann man die Dateien über den Browser ansehen. Das sollte etwa so aussehen:

Auf der MRTG Homepage steht auch, dass man die Daten vom MRTG als RRD speichern kann. Also sollte eine Auswertung mit dem RRDTool möglich sein. Mal sehen wie das funktioniert.