ReadyNAS Ultra4 Plusに触ってみた その6
ReadyNAS Ultra4 PlusでSNMPを使ってみる。
本来、ストレージとしての選定理由の一つにSNMPが使えることを入れていたので、標準でSNMPが使えなかったのは予想外だった。
調べてみるとReadyNAS Proでは対応しているが、コンシューマ向けモデルでは対応してない模様。
使えないと致命的な訳では無いが、使えると便利なのでなんとかならないか調べてみる。
Webユーザインターフェイスの設定画面では項目が無いためどうしようも無いが、rootを取ってSSHでログインしてみるとSNMPが導入済みのように見える。
# /etc/init.d/snmpd start
でsnmpdを起動して、リモートサーバからsnmpwalkで確認してみる。
# snmpwalk -v 1 -c public 192.168.101.201 SNMPv2-MIB::sysDescr.0 = STRING: Linux nas-C1-28-9A 2.6.37.6.RNx86_64.2.1 #1 SMP Mon Aug 15 16:19:41 PDT 2011 x86_64 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (71936062) 8 days, 7:49:20.62 SNMPv2-MIB::sysContact.0 = STRING: root SNMPv2-MIB::sysName.0 = STRING: nas-C1-28-9A SNMPv2-MIB::sysLocation.0 = STRING: Unknown SNMPv2-MIB::sysORLastChange.0 = Timeticks: (1) 0:00:00.01 (略)
無事にSNMPで監視できそう。
ReadyNASの再起動時に自動的にsnmpdが起動するように設定しておく。
# update-rc.d snmpd defaults Adding system startup for /etc/init.d/snmpd ... /etc/rc0.d/K20snmpd -> ../init.d/snmpd /etc/rc1.d/K20snmpd -> ../init.d/snmpd /etc/rc6.d/K20snmpd -> ../init.d/snmpd /etc/rc2.d/S20snmpd -> ../init.d/snmpd /etc/rc3.d/S20snmpd -> ../init.d/snmpd /etc/rc4.d/S20snmpd -> ../init.d/snmpd /etc/rc5.d/S20snmpd -> ../init.d/snmpd
ReadyNAS固有の情報でどのようなものが取得できるか確認するため、ReadyNAS Communityに置いてあるREADYNAS-MIB.txtを確認する。
$ snmpwalk -v 2c -c public 192.168.101.201 1.3.6.1.4.1.4526.18 SNMPv2-SMI::enterprises.4526.18.1.0 = STRING: "Seagate ST2000DL003-9VT166 1863 GB" SNMPv2-SMI::enterprises.4526.18.3.1.1.1 = INTEGER: 1 SNMPv2-SMI::enterprises.4526.18.3.1.1.2 = INTEGER: 2 SNMPv2-SMI::enterprises.4526.18.3.1.1.3 = INTEGER: 3 SNMPv2-SMI::enterprises.4526.18.3.1.1.4 = INTEGER: 4 SNMPv2-SMI::enterprises.4526.18.3.1.2.1 = INTEGER: 1 SNMPv2-SMI::enterprises.4526.18.3.1.2.2 = INTEGER: 2 SNMPv2-SMI::enterprises.4526.18.3.1.2.3 = INTEGER: 3 SNMPv2-SMI::enterprises.4526.18.3.1.2.4 = INTEGER: 4 SNMPv2-SMI::enterprises.4526.18.3.1.3.1 = STRING: "Seagate ST2000DL003-9VT166 1863 GB" SNMPv2-SMI::enterprises.4526.18.3.1.3.2 = STRING: "Seagate ST2000DL003-9VT166 1863 GB" SNMPv2-SMI::enterprises.4526.18.3.1.3.3 = STRING: "Seagate ST2000DL003-9VT166 1863 GB" SNMPv2-SMI::enterprises.4526.18.3.1.3.4 = STRING: "Seagate ST2000DL003-9VT166 1863 GB" SNMPv2-SMI::enterprises.4526.18.3.1.4.1 = STRING: "ok" SNMPv2-SMI::enterprises.4526.18.3.1.4.2 = STRING: "ok" SNMPv2-SMI::enterprises.4526.18.3.1.4.3 = STRING: "ok" SNMPv2-SMI::enterprises.4526.18.3.1.4.4 = STRING: "ok" SNMPv2-SMI::enterprises.4526.18.3.1.5.1 = INTEGER: 78 SNMPv2-SMI::enterprises.4526.18.3.1.5.2 = INTEGER: 82 SNMPv2-SMI::enterprises.4526.18.3.1.5.3 = INTEGER: 80 SNMPv2-SMI::enterprises.4526.18.3.1.5.4 = INTEGER: 78 SNMPv2-SMI::enterprises.4526.18.4.1.1.1 = INTEGER: 1 SNMPv2-SMI::enterprises.4526.18.4.1.2.1 = INTEGER: 1691 SNMPv2-SMI::enterprises.4526.18.4.1.3.1 = STRING: "SYS" SNMPv2-SMI::enterprises.4526.18.5.1.1.1 = INTEGER: 1 SNMPv2-SMI::enterprises.4526.18.5.1.1.2 = INTEGER: 2 SNMPv2-SMI::enterprises.4526.18.5.1.2.1 = INTEGER: 53 SNMPv2-SMI::enterprises.4526.18.5.1.2.2 = INTEGER: 73 SNMPv2-SMI::enterprises.4526.18.5.1.3.1 = STRING: "ok" SNMPv2-SMI::enterprises.4526.18.5.1.3.2 = STRING: "ok" SNMPv2-SMI::enterprises.4526.18.7.1.1.1 = INTEGER: 1 SNMPv2-SMI::enterprises.4526.18.7.1.2.1 = STRING: "Volume C" SNMPv2-SMI::enterprises.4526.18.7.1.3.1 = STRING: "RAID Level X2" SNMPv2-SMI::enterprises.4526.18.7.1.4.1 = STRING: "ok" SNMPv2-SMI::enterprises.4526.18.7.1.5.1 = INTEGER: 5676032 SNMPv2-SMI::enterprises.4526.18.7.1.6.1 = INTEGER: 5409792
何度か試してみるとenterprises.4526.18.1.0の項目が化けることがあり、上記の結果でも正常な値が表示されていない。おそらくバグと思われる。
監視サーバからCactiで監視してみる。
設定は他のsnmpdの動作しているサーバと同様なので省略。表示すると以下のようになる。
温度の項目は通常だと取れないが、Cactiの公式フォーラムから拾ってきたテンプレートを導入して表示している。
温度の項目だけを拡大すると以下のような感じになる。
SNMPトラップについては省略。