Überwachung von Ubiquiti UniFi bei Centreon

Und es ist an der Zeit, die APs und Switches von Ubiquiti zu beherrschen! Wenn Sie also ein solches Gerät in Ihrer Organisation haben… Es ist an der Zeit, es von Centreon aus zu zentralisieren und zu steuern. Mit der bloßen Tatsache, dass alles überwacht wird und mögliche Probleme antizipiert werden, Gestartet! 😛

 

Brunnen, Für viele der Dienste, die wir überwachen werden, verlassen wir uns auf das wunderbare Skript check_unifi.php von Jörg Hörter; also laden Sie es herunter und speichern Sie es wie immer im Centreon-Skriptverzeichnis. Mit diesem Skript werden wir in der Lage sein, viele Informationen aus dem UniFi-Teil von Ubiquiti zu erhalten, Wie ist der Gesundheitszustand der einzelnen PA?, Ihr Traffic, Klienten, Verbindungen, Ressourcenverbrauch… Gleiches gilt für Switches, Und das Gleiche gilt für den Controller, Verfügbarkeit, Versionierung, Anzahl der APs/SWs..

Wir müssen PHP auf dem Rechner installiert haben und 'php-curl', Sobald die Anforderungen installiert sind, versuchen wir, es auszuführen:

yum install php-curl /usr/bin/php check_unifi.php

 

 

Dieses Skript, wenn wir '-h übergeben’ Sie wird uns Informationen mit all ihren Einsatzmöglichkeiten geben:

Verwendung: /usr/bin/php check_unifi.php -H [Controller] -u [ControllerBenutzer] -p [ControllerPasswort] -P [Controller-Anschluss] -m [Modus] -An [Zugangspunkt] -w [Warnung] -c [Kritisch] (-S [Platz] -s =https -C [Konfigurationsdatei]) -d = debuggen)

Modus - controller = Controller-Version, Warnung, wenn eine Update-Site = Alle Site-ID auflisten und Clients benennen = Alle Clients auflisten (Nur in der Konsole verwenden)
       clients_wifi ( + Zugänge)            = Liste aller WLAN-Clients mit Verbindungsgeschwindigkeit, optional für einen Accesspoint (Nur in der Konsole verwenden)
       clients_name + Accesspoint = Liste aller Clients eines Accesspoints clients_name_guest + Accesspoint = Liste aller Clients und Gäste eines Accesspoints clients_count + Accesspoint = Anzahl der Clients eines Accesspoints clients_count_guest + Accesspoint = Clients und Gäste eines Accesspoint-Channels zählen + Accesspoint = Kanäle 2GHz/5GHz einer Accesspoint-Übertragung + Accesspoint = rx/tx-Übertragung eines Accesspoints (KBit/MBit)
       Übertragen+ + Accesspoint = rx/tx-Übertragung eines Accesspoints (KByte/MByte)
       Betriebszeit + Accesspoint/Switch = Uptime und Firmware eines Accesspoint/Switch-Updates + Accesspoint/Switch = Update-Firmware ist von einem Accesspoint/Switch verfügbar und warnt/kritisch (Veröffentlichung von Punkten, Hauptversion, Nebenversion)
       Uplink + Accesspoint warn crit = Uplink eines Accesspoints (drahtlos: mit Verbindungsgeschwindigkeit und Warn-/Kritik)
       Erfahrung + Accesspoint warn crit = Wireless-Erlebnis eines Accesspoints mit warnender/kritischer Auslastung + Accesspoint warn crit = drahtlose Nutzung eines Accesspoints mit warn/critical (2Ghz,5Ghz)
       Mem + Accesspoint warn crit = Ausgabe der Speicherauslastung Mb eines Accesspoints oder eines Switches mit warn/critical percent mem% + Accesspoint warn crit = Speicherauslastung Ausgabe in Prozent eines Accesspoints oder eines Switches mit warn/critical Prozent CPU + Accesspoint/Switch warn crit = CPU- und Lastkombinationsnutzung eines Accesspoints oder eines Switches mit warn/critical percent CPU% + Accesspoint/Switch warn crit = CPU-Auslastung eines Accesspoints oder eines Switches mit warnender/kritischer prozentualer Last + Accesspoint/Switch warn crit = Linux-Lastnutzung eines Accesspoints oder eines Switches mit warn/critical 1,5,15
       Temperatur + Switch = Temperatur eines Schalters mit warn/critical ap warn crit = count Accesspoint (Online und Offline) mit Warnung und kritischen Offline-Accesspoints Switch warnen crit = count Switch (Online und Offline) mit Warnung und kritischem Offline-Switch -C   - Konfigurationsdatei (default=unifi.php) anstelle der Reglerparameter -H,-u,-p,-P,-s -S (Sie können eine beliebige Datei mit Pfad angeben)
       Beispiel:

       <?php
       $host='192.168.2.213';    # IP or Hostname unifi controller Server
       $prot='https';            # Value http or https
       $port='8443';             # Controller Port
       $user='nagios';           # Loginuser Controller
       $pass='nagios';           # Password Loginuser
       $siteid='default';        # Site ID
       $dir_unifi_client='';     # Verzeichnis unifi_client.php
       ?>

 

Brunnen, Wenn Sie in Shell daran herumbasteln und sehen möchten, wie es läuft/probieren Sie es aus, Hier sind einige Beispiele, Nicht alle Möglichkeiten, aber diejenigen, die ich für am nützlichsten hielt (Für mich):

Überprüfen Sie die Controller-Version und geben Sie eine Warnung aus, wenn ein Update verfügbar ist:

/usr/bin/php /usr/lib/centreon/plugins/check_unifi.php/check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u USER -p PASSWORT -m controller -s https

 

Clients pro Access Point:

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m clients_count -a NOMBRE_AP -s https

 

2-GHz-/5-GHz-Kanäle jedes AP:

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u USER -p PASSWORT -m Kanäle -a NOMBRE_AP -s https

 

Überprüfen Sie die AP/SW-Firmware-Version:

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m update -a NOMBRE_AP -s https

 

Qualität der AP-Erfahrung:

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u USER -p PASSWORT -m experience -a NOMBRE_AP -w 90: -c 80: -s https

 

CPU del AP/SW

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m cpu% -a NOMBRE_AP -w 80 -c 90 -s https

 

AP/SW-Speicher

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m mem% -a NOMBRE_AP -w 80 -c 90 -s https

 

AP/SW-Last

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u USER -p PASSWORT -m load -a NOMBRE_AP -w 4,3,2 -c 6,5,4 -s https

 

SW Temperatur

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m Temperatur -a NOMBRE_SWITCH -w 40 -c 50 -s https

 

SW- oder AP-Betriebszeit

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u USERNAME -p PASSWORT -m uptime -a NOMBRE_SWITCH -w 80 -c 90 -s https

 

Anzahl der APs

/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u USER -p PASSWORT -m ap -w 1 -c 0 -s https

 

Anzahl der SWs
/usr/bin/php ./check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u USER -p PASSWORT -m schalter -w 1 -c 0 -s https

 

Jetzt, Wenn man einmal gebastelt und probiert hat, es ist Zeit, es wie üblich nach Centreon zu nehmen, wie gewöhnlich, Zunächst definieren wir die Befehle, die wir benötigen, um dann die Dienste zu erstellen, die uns interessieren. In meinem Fall habe ich diese erstellt 4 Befehle, Ich überlasse sie Ihnen, falls Sie sie kopieren möchten, einige gehen mit mehr oder weniger Argumenten und der Möglichkeit, Warnung / Kritisch, wenn wir interessiert waren. Wir werden “Konfiguration” > “Befehle” > “Prüft” > “Hinzufügen…”

  • Name des Befehls: check_unifi.php
  • Befehlszeile: /usr/bin/php $CENTREONPLUGINS$/check_unifi.php/check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m $ARG 1$ -s https

 

  • Name des Befehls: check_unifi.php_wc
  • Befehlszeile: /usr/bin/php /usr/lib/centreon/plugins/check_unifi.php/check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m $ARG 1$ -w $ARG 2$ -c $ARG 3$ -s https

 

  • Name des Befehls: check_unifi.php_a
  • Befehlszeile: /usr/bin/php /usr/lib/centreon/plugins/check_unifi.php/check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m $ARG 1$ -a $ARG 2$ -s https

 

  • Name des Befehls: check_unifi.php_ein_wc
  • Befehlszeile: /usr/bin/php /usr/lib/centreon/plugins/check_unifi.php/check_unifi.php -H DIRECCION_IP_CONTROLLER -P 8443 -u BENUTZERNAME -p PASSWORT -m $ARG 1$ -a $ARG 2$ -w $ARG 3$ -c $ARG 4$ -s https

 

Und dann von “Konfiguration” > “Wirte” > “Hinzufügen…” wir müssen die PAs wie üblich registrieren, SW, Maschine mit Controller… mit dem ultimativen Ziel, die Dienste hinzuzufügen, an denen wir interessiert sind, um jeden Host zu überwachen.

Also endlich von “Konfiguration” > “Dienste” > “Dienstleistungen nach Host” Wir fügen die Dienste hinzu, und wir verknüpfen jedes einzelne mit dem Befehl, der getragen werden muss, und füttern sie mit den entsprechenden Argumenten.

Wenn wir den Zustand der Hardware auf die Switches übertragen wollen, Wir werden das wunderbare Centreon-Plugin-Paket namens 'centreon-plugins' verwenden., dass wir bereits gesehen haben, wie man es benutzt und nutzt In diesem Beitrag. Und dieses Skript verwendet SNMP, Sie müssen es also zuvor in der Konsole "UniFi Network" aktivieren, seit “Einstellungen” > “Erweiterte Funktionen” > “Erweiterte Gateway-Einstellungen” > “SNMP” und richten Sie eine Community für v2 ein oder wenn wir v3 einige Anmeldeinformationen wünschen. Und mit dem nächsten Befehl hätten wir es gesaugt:

perl $CENTREONPLUGINS$/centreon-plugins/centreon_plugins.pl --plugin=Netzwerk::Ubiquiti::Rand::snmp::plugin --hostname $HOSTADDRESS$ --snmp-community=$_HOSTSNMPCOMMUNITY$ --mode Hardware

 

Wie gewöhnlich, Einstellungen aufzeichnen und exportieren.

 

Wenn wir alle Schritte befolgt haben, haben wir so etwas wie das oben, Entschuldigung, aber du weißt, dass es verrückt ist, wenn ich einen nach dem anderen mache. Wenn Sie Zweifel an der Verwendung von Centreon haben, ist es besser, sich an die ersten Dokumente zu wenden, in denen mehr Details zur Erstellung eines Dienstes enthalten sind, ein Kommando… Also bist du fertig! Wir haben die CPUs, Netzwerkschnittstellen/Ports, Memoiren, Lädt, Wifi-Kanäle, Versionierung und Firmwares, Erlebnisse, Temperaturen, Hardware Status… unserer gesteuerten Ubiquiti Access Points und Switches!

 

Und wenn wir eine Grafana Nun, wir können ein paar coole Visualisierungen machen, Meins ist ein bisschen beschissen, aber akzeptabel, Ich habe diesen für einen winzigen 😉 Bildschirm entworfen, also konnte ich nicht mehr hineinstecken.

Empfohlene Beiträge

Verfasser

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Zögern Sie nicht, mich zu kontaktieren, Ich werde versuchen, dir zu helfen, wann immer ich kann, Teilen ist Leben ;) . Genießen Sie Dokumente!!!