Ich monitore schon länger Switch-Interfaces, allerdings bisher per check_snmp_int. Das funktioniert soweit, ist aber für den Einsatz mit Nagvis nicht zu gebrauchen.
Durch einen Tipp bin ich auf check_iftraffic64 gestoßen. Der Vorteil hierbei – man kann die reale Bandbreite festlegen.
Interface Speed = 100 Mbit, der reale Speed ist aber nur z.B. 10Mbit. (Beispiel Internet Zugang)
Plugin heruntergeladen, ausgeführt. Erste Fehlermeldung:
Can't locate Net/DNS.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.12.4 /usr/local/share/perl/5.12.4 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.12 /usr/share/perl/5.12 /usr/local/lib/site_perl .) at ./check_iftraffic64.pl line 698.
Wird gefixt durch:
apt-get install libnet-dns-perl
Beispielausgabe:
nagios@Server:/usr/local/nagios/libexec$ ./check_iftraffic64.pl -H 1.1.1.1 -C community -i ge-0/0/3 -I 12 -O 12 -u m -w 90 -c 96
ge-0/0/3 = 1.3.6.1.2.1.2.2.1.2.540 / 540 Average IN: 38.83KBs (2.59%), Average OUT: 1.26MBs (83.72%)<br>Total RX: 47.02GBytes, Total TX: 399.10GBytes|inUsage=2.59%;90;96 outUsage=83.72%;90;96 inBandwidth=38.83KBs outBandwidth=1.26MBs inAbsolut=47023414615B outAbsolut=399095801006B
Das Auflösen des Interface Namens hat bei unseren Juniper Switchen direkt funktioniert.
Hat man das Skript zum Testen via Commandozeile ausgeführt, wird auch ein Unterordner „traffic“ mit diesem User angelegt.
Das kann dazu führen, dass im Nagios/Centreon erst einmal nur folgende Fehlermeldung erscheint:
(Return code of 13 is out of bounds)
Die Berechtigungen / Besitzer von dem Ordner:
/usr/local/nagios/libexec/traffic/
anpassen und fertig.
Echt super Sache – so funktioniert auch die grafische Anzeige im Nagvis korrekt.