2007年 7月 24日 火曜日
やっぱり Sun がスキ!
System Management Agent ( SNMP Agent )
Solaris 10 から標準でバンドルされている SNMP Agent が追加・変更されているのはご存知でしょうか?
Solaris では Solaris 2.6 の頃から Solstice Enterprise Agents がバンドルされておりましたが、 Solaris 10 になって System Management Agent (以下 SMA) という 新しい SNMP Agent が追加されています。
( 代表的な Sun の SNMP Agent は下記をご覧下さい。 )
Solaris では Solaris 2.6 の頃から Solstice Enterprise Agents がバンドルされておりましたが、 Solaris 10 になって System Management Agent (以下 SMA) という 新しい SNMP Agent が追加されています。
( 代表的な Sun の SNMP Agent は下記をご覧下さい。 )
- System Management Agent (SMA)
-
Solaris 10 から新たに追加された SNMP Agent です。
-
Solaris 10 から新たに追加された SNMP Agent です。
- Solstice Enterprise Agents
-
Solaris 2.6 以降にバンドルされている SNMP Agent。
( Solaris 10 にもバンドルされています )
今後は System Management Agent に統合予定です。
-
Solaris 2.6 以降にバンドルされている SNMP Agent。
- Sun SNMP Management Agent ※ Sun Download Center から取得できます
http://www.sun.com/servers/entry/sun_management.html-
Sun Hardware Product System 用の SNMP Agent
Sun Fire V215/245/445 Server 等の H/W 情報を監視できます。
※ 上記の他に、Sun MC ( Sun Management Center ) などにも SNMP Agent が含まれています。 -
Sun Hardware Product System 用の SNMP Agent
この SMA では、MIB ファイルや SNMP 関連のコマンドが大幅に追加されています。
そこで今回は SMA を利用して、SNMP の情報取得例をご紹介したいと思います。
まず SMA の大きな変更点として、いくつかピックアップしてみました。
そこで今回は SMA を利用して、SNMP の情報取得例をご紹介したいと思います。
まず SMA の大きな変更点として、いくつかピックアップしてみました。
[ SMA の変更点 ]
- SMA の Version
SMA の Version 情報を確認してみると、 NET-SNMP を元に作成されている事が確認できます。
% /usr/sfw/sbin/snmpd -v NET-SNMP version: 5.0.9 Web: http://www.net-snmp.org/ Email: net-snmp-coders@lists.sourceforge.net %
- SMA の MIB ファイル
SMA になって、Solstice Enterprise Agent の時よりも多くの MIB ファイル が追加されました。 その為、SNMP で監視できる項目も大幅に増えています。
SMA の MIB 定義ファイルは /etc/sma/snmp/mibs 配下にあります。
% pwd /etc/sma/snmp/mibs % % ls AGENTX-MIB.txt RFC-1215.txt DISMAN-EVENT-MIB.txt RFC1155-SMI.txt DISMAN-SCHEDULE-MIB.txt RFC1213-MIB.txt : : 省略 : NET-SNMP-SYSTEM-MIB.txt UCD-IPFWACC-MIB.txt NET-SNMP-TC.txt UCD-SNMP-MIB.txt NETWORK-SERVICES-MIB.txt UDP-MIB.txt NOTIFICATION-LOG-MIB.txt smatrap.mib %
ちなみに、Solstice Enterprise Agents の MIB File は下記の2つだけでした。
( Solaris 10 でも Solstice Enterprise Agents はインストールされているので、下記のファイルも確認する事ができます。)% pwd /var/snmp/mib % % ls snmpdx.mib sun.mib %
- SNMP 関連のコマンド
SNMP の情報取得に役立つ snmpwalk, snmpget といったコマンドも追加されています。
その為、他にパッケージ等を追加しなくても、SNMP の動作確認などが行えます。
-
/usr/sfw/bin/snmpwalk コマンド
指定した OID 配下の情報を取得 ( ツリー単位 )
例 ) OID : .1.3.6.1.2.1 配下を全表示% /usr/sfw/bin/snmpwalk -v 1 -c public HOSTNAME .1.3.6.1.2.1
-
/usr/sfw/bin/snmpget コマンド
指定した OID の情報を取得 ( エントリ単位 )
例 ) OID : .1.3.6.1.4.1.2021.10.1.5.1 の情報 ( CPU 使用率 ) を表示% /usr/sfw/bin/snmpget -v 1 -c public HOSTNAME .1.3.6.1.4.1.2021.10.1.5.1
-
/usr/sfw/bin/snmptranslate コマンド
MIB シンボル名や OID Tree を表示
例 ) MIB シンボル名と OID をツリー構造で表示% snmptranslate -Tp +--iso(1) | +--org(3) | +--dod(6)
-
/usr/sfw/bin/snmpwalk コマンド
- SNMP Trap 関連のコマンド
SNMP Trap 関連のコマンドも標準で入っています。
-
/usr/sfw/bin/snmptrap コマンド
特定ホストに Test Trap を上げる事ができる。
例 ) SNMP Ver1% /usr/sfw/bin/snmptrap -v 2c -c public HOSTNAME .1.3.6.1.4.1.8072.999999999
6 1 '' .1.3.6.1.4.1.8072.999999999.1 s "Test Trap" -
/usr/sfw/sbin/snmptrapd デーモン
SNMP Trap を受信する事ができる
-
/usr/sfw/bin/snmptrap コマンド
上記の様に SMA では、かなり多くの MIB や SNMP コマンドが追加されています。
それでは SMA を利用して、Solaris 10 のシステム同士 ( HOST-1, HOST-2 の計 2 台 ) で SNMP の情報を取得してみたいと思います。
それでは SMA を利用して、Solaris 10 のシステム同士 ( HOST-1, HOST-2 の計 2 台 ) で SNMP の情報を取得してみたいと思います。
- SMA を利用してメモリ関連の情報取得例
HOST-1 から snmpwalk コマンドを利用して HOST-2 の物理メモリサイズを取得してみます。
-
まず HOST-2 上でメモリの��報を持っていそうな MIB シンボル名を調べます。
snmptranslate -Tp コマンドは OID と MIB シンボル名をツリー構造で表示してくれるコマンドです。
snmptranslate コマンドを利用すると、かなり長い出力になるので、 grep などで絞り込んだ方が良いと思います。
HOST-2% snmptranslate -Tp +--iso(1) | +--org(3) | +--dod(6) | +--internet(1) | +--private(4) | | | +--enterprises(1) | | | +--ucdavis(2021) | | | | | +--memory(4) | | | | | | | +-- -R-- Integer32 memIndex(1) | | | +-- -R-- String memErrorName(2) | | | | Textual Convention: DisplayString | | | | Size: 0..255 | | | +-- -R-- Integer32 memTotalSwap(3) | | | +-- -R-- Integer32 memAvailSwap(4) | | | +-- -R-- Integer32 memTotalReal(5) | | | +-- -R-- Integer32 memAvailReal(6) | | | +-- -R-- Integer32 memTotalSwapTXT(7) : : 省略 : HOST-2%これで memory に関連しそうな MIB シンボル名と OID が確認できました。
-
次に先程の mem から始まる MIB シンボル名を利用して、HOST-1 から HOST-2 に snmpwalk コマンドを実行します。
HOST-1% /usr/sfw/bin/snmpwalk -v 1 -c public HOST-2 mem | grep Real UCD-SNMP-MIB::memTotalReal.0 = INTEGER: 262144 <== K bytes UCD-SNMP-MIB::memAvailReal.0 = INTEGER: 10448 <== K bytes HOST-1%
Total Memory Size ( Real ) が確認できました。
-
試しに HOST-2 で prtdiag -v コマンドを実行してみると、
Memory Size が同じ 256M byte ( 262144K byte ) である事が確認できます。
HOST-2% prtdiag -v | grep Memory Memory size: 256 Megabytes HOST-2%
-
まず HOST-2 上でメモリの��報を持っていそうな MIB シンボル名を調べます。
- SMA を利用して SNMP Trap を受け取る
今度は snmptrap コマンドを利用して、HOST-1 から HOST-2 に SNMP Trap を上げて見たいと思います。
-
まず SNMP Trap を受け取る HOST-2 で snmptrapd デーモンを上げておきます。
( ログファイルは /tmp/snmptrapd.log です )HOST-2# /usr/sfw/sbin/snmptrapd -o /tmp/snmptrapd.log HOST-2# HOST-2# cat /tmp/snmptrapd.log 2007-07-24 09:53:12 NET-SNMP version 5.0.9 Started. HOST-2#
-
次に HOST-1 から HOST-2 に snmptrap コマンドで Test Trap を送信します。
HOST-1% /usr/sfw/bin/snmptrap -v 2c -c public HOST-2 '' .1.3.6.1.4.1.8072.999999999 .1.3.6.1.4.1.8072.999999999.1 s "Test Trap" HOST-1%
-
SNMP Trap を受け取る HOST-2 のログファイルを確認すると、
SNMP Trap が記録されています。
HOST-2# cat /tmp/snmptrapd.log 2007-07-24 09:53:12 NET-SNMP version 5.0.9 Started. 2007-07-24 09:54:12 ************* [***.***.***.***]: DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (335864288) 38 days, 20:57:22.88 SNMPv2-MIB::snmpTrapOID.0 = OID: NET-SNMP-MIB::netSnmp.999999999 NET-SNMP-MIB::netSnmp.999999999.1 = STRING: "Test Trap" HOST-2#
-
まず SNMP Trap を受け取る HOST-2 で snmptrapd デーモンを上げておきます。
今回は SMA を利用して MIB の項目の値を取得したり、SNMP Trap を実際に受け取ったりしてみました。
snmptrapd を利用すれば簡単に SNMP trap を受け取ることができますので、 SNMP Agent になれるシステムや機器 ( router など ) の検証を行うときなどにも 力を発揮すると思います。
又、snmptranslate コマンドや MIB 定義ファイル ( /etc/sma/snmp/mibs 配下 ) のコメント欄を参照すれば、 対象のホストで、どのような情報が取得できるのかご確認頂けます。
システムのパフォーマンス等の情報を cron で定期的に取得するのにも便利ですので、 Solaris 10 のシステムがありましたら、是非一度、お試し下さい。
*** 参考資料 ***
-
Solaris 10 System Administrator Collection - Japanese
==> Solaris のシステム管理 (システム管理エージェント)
http://docs.sun.com/app/docs/doc/819-0387/6n2qm8knf?a=view
Posted at 04:15午後 7 24, 2007 by Naoyuki Yamada in Sun | 投稿されたコメント[0]