Centreon – Durchsatzüberwachung mit iperf

Du möchtest in regelmäßigen Abständen automatisch den Netzwerkdurchsatz zu einem System ermitteln und dokumentieren? Nachfolgend beschreibe ich eine Möglichkeit dies mit Centreon, dem Tool iperf und dem Monitoring-Plugin check_iperf zu realisieren.

Die Basis für dieses Beispiel bildet Centreon Web in Version 2.7.4 auf Ubuntu Server 14.04 mit Centreon Engine und Centreon Broker. Das Plugin wurde von mir ein wenig modifiziert, da mir die Statusinformation und die fehlenden Performancedaten nicht so recht gefallen haben. Das Original-Plugin gibt es auf Nagios Exchange.

Download Monitoring-Plugin „check_iperf.pl“

Wie funktioniert das Plugin?

Das in Perl geschriebene Plugin führt im Prinzip eine einfache iperf Messung durch. Für eine Bandbreitenmessung benötigt man immer einen iperf-Server (Ziel-Host) und einen iperf-Client (Centreon-Server). In der Default-Einstellung werden die Messdaten vom Client zum Server gesendet, d.h. gemessen wird der Durchsatz vom Centreon-Server zum Ziel-Host. Die Messung dauert 10 Sekunden, je nach Zeitplan wird diese z.B. alle 5 Minuten ausgeführt.

So wird das Plugin angewendet:

check_iperf.pl <Ziel-Host> <critical> <warning>

Test des Plugins unter dem User „Centreon-Engine“:

/usr/lib/nagios/plugins/check_iperf.pl 8.8.8.8 10 20
OK: iperf returns 101 Mbits/sec (wsize 0.02 M) | speed=101

Im Hintergrund wurde folgender Befehl auf dem Centreon-Server ausgeführt:

iperf -c 8.8.8.8 -m -f m

Ziel-System vorbereiten

Auf dem zu überwachenden Ziel-System muss iperf Version 2 als Server ausgeführt werden.

Debian Linux

Auf einem Debian-System wird iperf auf dem gleichen Weg wie auf dem Monitoring-Server installiert.

apt install iperf

Ausgeführt wird der iperf-Server als Deamon mit diesem Befehl. Dies lässt sich auch als Cronjob definieren.

iperf -s -D

Hinweis: Unter Ubuntu 14.04 kann der Parameter „-D“ durch einen Bug zu hoher CPU-Last führen. Hier einfach nur „iperf -s“ ausführen.

RedHat Linux

Installation

yum install iperf

Start

iperf -s -D

Windows

Iperf 2 für Windows kannst du hier downloaden. Einfach in ein Verzeichnis deiner Wahl entpacken und wie folgt ausführen. Auch hier ist ein automatischer Start über die Ausgabenplanung möglich.

C:\tools\iperf.exe -s -D

OpenWRT

Eine Anleitung um iperf auf einem OpenWRT Router zu installieren findest du hier.

Plugin in Centreon einbinden

Als Nächstes wird das Plugin heruntergeladen, ausführbar gemacht und in den Monitoring Plugin Ordner verschoben.

apt-get install git-core
git clone https://github.com/hagen3000/check_iperf.git
cd check_iperf/
chmod +x check_iperf.pl
cp * /usr/lib/nagios/plugins

Auch auf dem Centreon-Server muss das Tool iperf installiert werden.

apt install iperf

Nach erfolgreicher Installation ist iperf unter „/usr/bin/iperf“ zu finden. Falls dieser Pfad bei dir abweichen sollte musst du das Plugin dementsprechend in Zeile 13 anpassen.

vi /usr/lib/nagios/plugins/check_iperf.pl

my $iperf = „/usr/bin/iperf“;

Wenn der korrekte Pfad im Plugin hinterlegt ist kann es im Centreon Webinterface in einen Check eingebunden werden.

„Configuration“ >> „Commands“ >> „Checks“ >> „Add“

Centreon iperf – Command definieren

Command Line $USER1$/check_iperf.pl $HOSTADDRESS$ $ARG2$ $ARG1$
Argument Example !50!10

 

Der angelegte Check kann nun in einem Service verwendet werden.

Centreon iperf – Service anlegen

Durch das Übergeben der Konfigurationsdateien an die Centreon Engine wird die Überwachung aktiv geschaltet.

Centreon iperf – apply configuration

Centreon iperf – Reload Centreon-Engine

 

Hier noch ein Blick auf das Überwachungsergebnis.

Centreon iperf – Ergebnis

Centreon iperf – Graph

Links

Plugin auf Github

iperf Dokumentation

iperf Download

unverändertes Plugin auf Nagios-Exchange

3 Kommentare

  1. nett, gleich mal testweise eingebunden

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

*