SNMPカバレッジを強化するエンタープライズ固有のユーティリティMIB
Utility MIB
ジュニパーネットワークスのエンタープライズ固有のUtility MIBは、オブジェクトIDが{jnxUtilMibRoot 1}で、カウンター、整数値、文字列のオブジェクトを定義します。このUtility MIBには、以下の5種類のデータタイプごとに1つのテーブルが含まれています。
32ビットのカウンター
64ビットのカウンター
符号付き整数
符号なし整数
オクテット文字列
これらのコンテナMIBオブジェクトを使用して、他の方法ではSNMP操作でサポートされないデータを格納できます。これらのオブジェクトのデータを入力するには、CLI コマンドを使用するか、Op スクリプトや CLI コマンドを呼び出せる RPC API を使用します。
各データタイプには、データ入力時に定義される任意のASCII名や、最後にデータインスタンスを変更した時間を示すタイムスタンプがあります。MIBのダウンロード可能なバージョンについては、ルーティングポリシー、ファイアウォールフィルター、およびトラフィックポリサーユーザーガイドを参照してください。
エンタープライズ固有のUtility MIBオブジェクトの詳細については、以下のトピックを参照してください。
エンタープライズ固有のユーティリティMIBを使用して、SNMPカバレッジを強化
Junos OSには、パフォーマンスメトリックとモニタリングオプションが組み込まれていますが、パフォーマンスメトリックをカスタマイズする必要がある場合があります。Junos OSでは、この種のカスタマイズされたデータを標準監視システムで簡単に監視できるように、エンタープライズに固有のUtility MIBを提供しています。このMIBにこの種のデータを格納できるため、SNMPサポートを拡張して、選択したデータの管理と監視を行うことができます。
以下のCLIコマンドで、Utility MIBオブジェクトの値を設定およびクリアできます。
-
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>
コマrequest snmp utility-mib <set | clear>ンドの オinstance nameプションは、データ インスタンスの名前を指定し、データの主な識別子となります。object-type <counter | counter 64 | integer | string | unsigned integer>オプションでオブジェクト タイプを指定し、 object-value valueオプションでオブジェクトの値を設定できます。
Utility MIB データの入力プロセスを自動化する場合、イベント ポリシーとイベント スクリプトを組み合わせて使用できます。以下の例では、イベント ポリシーで 1 時間show system buffersごとに を実行し、イベント スクリプト(check-mbufs.slax)を実行して デーshow system buffersタを Utility MIB オブジェクトに格納する構成を示します。
イベント ポリシーの構成
1 時間ごとに show system buffers コマンドを実行し、check-mbufs.slax を呼び出して show system buffers データを Utility MIB オブジェクトに格納するイベント ポリシーを構成するには、[edit] 階層レベルで以下のステートメントを記述します。
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 スクリプト
以下の例は、 に格納されている スクリプcheck-mbufs.slaxトを示します/var/db/scripts/event/。
------ 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 ------
以下のコマンドを実行すると、前の例で示したイベント ポリシーとスクリプトの結果として Utility MIB に格納されたデータを確認できます。
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>
show snmp mib walk コマンドは QFabric システムでは使用できませんが、外部の SNMP クライアント アプリケーションを使用してこの操作を実行できます。