Unternehmensspezifisches Dienstprogramm MIB zur Verbesserung der SNMP-Abdeckung
Dienstprogramm MIB
Das unternehmensspezifische Dienstprogramm MIB von Juniper Networks, dessen Objekt-ID {jnxUtilMibRoot 1} lautet, definiert Objekte für Zähler, ganze Zahlen und Zeichenfolgen. Die Utility-MIB enthält eine Tabelle für jeden der folgenden fünf Datentypen:
32-Bit-Zähler
64-Bit-Zähler
Ganzzahlen mit Vorzeichen
Ganzzahlen ohne Vorzeichen
Oktett-Streicher
Sie können diese Container-MIB-Objekte verwenden, um die Daten zu speichern, die für SNMP-Vorgänge nicht unterstützt werden. Sie können Daten für diese Objekte entweder mithilfe von CLI-Befehlen oder mithilfe von Op-Skripts und einer RPC-API auffüllen, die die CLI-Befehle aufrufen kann.
Jeder Datentyp verfügt über einen beliebigen ASCII-Namen, der beim Auffüllen der Daten definiert wird, und einen Zeitstempel, der den Zeitpunkt anzeigt, zu dem die Dateninstanz zuletzt geändert wurde. Eine herunterladbare Version dieser MIB finden Sie unter Routing-Richtlinien, Firewall-Filter und Traffic Policers-Benutzerhandbuch.
Informationen zu den unternehmensspezifischen Utility-MIB-Objekten finden Sie in den folgenden Themen:
Verwenden Sie das unternehmensspezifische Dienstprogramm MIB, um die SNMP-Abdeckung zu verbessern
Möglicherweise benötigen Sie angepasste Leistungsmetriken, obwohl das Junos-Betriebssystem über integrierte Leistungsmetriken und Überwachungsoptionen verfügt. Um Ihnen die Überwachung solcher benutzerdefinierten Daten durch ein Standard-Überwachungssystem zu erleichtern, stellt Ihnen das Junos-Betriebssystem eine unternehmensspezifische Utility-MIB zur Verfügung, die solche Daten speichern und so die SNMP-Unterstützung für die Verwaltung und Überwachung der Daten Ihrer Wahl erweitern kann.
Mit den folgenden CLI-Befehlen können Sie Utility-MIB-Objektwerte festlegen und löschen:
-
request snmp utility-mib set instance name object-type <counter | counter 64 | integer | string | unsigned integer> object-value value
-
request snmp utility-mib clear instance name object-type <counter | counter 64 | integer | string | unsigned integer>
Die instance name
Option des request snmp utility-mib <set | clear>
Befehls gibt den Namen der Dateninstanz an und ist der Hauptbezeichner der Daten. Mit object-type <counter | counter 64 | integer | string | unsigned integer>
dieser Option können Sie den Objekttyp angeben und den object-value value
Wert des Objekts festlegen.
Um das Auffüllen von Utility-MIB-Daten zu automatisieren, können Sie eine Kombination aus einer Ereignisrichtlinie und einem Ereignisskript verwenden. Die folgenden Beispiele zeigen die Konfiguration für eine Ereignisrichtlinie, die stündlich ausgeführt wird show system buffers
und die show system buffers
Daten in Utility-MIB-Objekten gespeichert werden, indem ein Ereignisskript (check-mbufs.slax
) ausgeführt wird.
Konfiguration der Ereignisrichtlinie
Um eine Ereignisrichtlinie zu konfigurieren, die den show system buffers
Befehl stündlich ausführt und check-mbufs.slax
aufruft, die show system buffers
Daten in Utility-MIB-Objekten zu speichern, fügen Sie die folgenden Anweisungen auf der Hierarchieebene [edit
] ein:
event-options { generate-event { 1-HOUR time-interval 3600; } policy MBUFS { events 1-HOUR; then { event-script check-mbufs.slax; # script stored at /var/db/scripts/event/ } } event-script { file check-mbufs.slax; } }
check-mbufs.slax Skript
Das folgende Beispiel zeigt das Skript, das check-mbufs.slax
unter /var/db/scripts/event/
gespeichert ist:
------ script START ------ version 1.0; ns junos = "http://xml.juniper.net/junos/*/junos"; ns xnm = "http://xml.juniper.net/xnm/1.1/xnm"; ns jcs = "http://xml.juniper.net/junos/commit-scripts/1.0"; ns ext = "http://xmlsoft.org/XSLT/namespace"; match / { <op-script-results>{ var $result = jcs:invoke("get-buffer-informations"); var $rpc = <request-snmp-utility-mib-set> { <object-type> "integer"; <instance> "current-mbufs"; <object-value> $result/current-mbufs; } var $res = jcs:invoke($rpc); expr jcs:syslog("external.info", $res/..//snmp-utility-mib-results/snmp-utility-mib-result); } } ------ script END ------
Sie können den folgenden Befehl ausführen, um die in der Utility-MIB gespeicherten Daten als Ergebnis der Ereignisrichtlinie und des Skripts zu überprüfen, die in den vorherigen Beispielen gezeigt wurden:
user@host> show snmp mib walk jnxUtilData ascii jnxUtilIntegerValue."current-mbufs" = 0 jnxUtilIntegerTime."current-mbufs" = 07 da 05 0c 03 14 2c 00 2d 07 00 user@caramels>
Der show snmp mib walk
Befehl ist auf dem QFabric-System nicht verfügbar, aber Sie können externe SNMP-Client-Anwendungen verwenden, um diesen Vorgang auszuführen.