SNMPを介していくつかのサービスのステータスを監視したい。
マンページは言う:
proc NAME [MAX [MIN]] monitors the number of processes called NAME (as reported by "/bin/ps -e") running on the local system.
だから私はこれらの行を/etc/snmp/snmpd.conf
に追加しました:
proc smbd
proc nfsd
ただし、対応するOIDはゼロを返します。
iso.3.6.1.4.1.2021.2.1.100.4 = INTEGER: 0
iso.3.6.1.4.1.2021.2.1.100.5 = INTEGER: 0
ps -e
はsmbd
およびnfsd
プロセスを示していますが、
> ps -e | grep "smbd\|nfsd"
8267 ? 00:00:01 smbd
10179 ? 00:00:04 smbd
11068 ? 00:00:00 nfsd4_callbacks
11072 ? 00:12:53 nfsd
11073 ? 00:13:33 nfsd
11074 ? 00:14:35 nfsd
11075 ? 00:16:23 nfsd
11076 ? 00:21:52 nfsd
11077 ? 00:33:34 nfsd
11078 ? 00:48:10 nfsd
11079 ? 01:02:44 nfsd
15135 ? 00:00:03 smbd
15137 ? 00:00:17 smbd
15141 ? 00:00:05 smbd
20603 ? 00:00:00 smbd
OID 1.3.6.1.2.1.25.4.2.1.2
には、smbd
およびnfsd
プロセスも含まれています。実行中のプロセスのリストを取得することもできます。
> snmpwalk -v 2c -c secret Host 1.3.6.1.2.1.25.4.2.1.2 | grep "smbd\|nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11068 = STRING: "nfsd4_callbacks"
iso.3.6.1.2.1.25.4.2.1.2.11072 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11073 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11074 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11075 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11076 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11077 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11078 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11079 = STRING: "nfsd"
iso.3.6.1.2.1.25.4.2.1.2.11724 = STRING: "smbd"
iso.3.6.1.2.1.25.4.2.1.2.12367 = STRING: "smbd"
iso.3.6.1.2.1.25.4.2.1.2.15135 = STRING: "smbd"
iso.3.6.1.2.1.25.4.2.1.2.15137 = STRING: "smbd"
iso.3.6.1.2.1.25.4.2.1.2.15141 = STRING: "smbd"
iso.3.6.1.2.1.25.4.2.1.2.29897 = STRING: "smbd"
これはこのように機能するはずであり、SNMPのproc
ディレクティブを使用してサービスを監視するのは良い考えですか、それともextend
sを使用する必要がありますか(ZFSおよびSLURMステータスですでに機能しています)。
環境:
1.3.6.1.4.1.2021.2.1.100
以下のOIDで報告されるゼロは、実際にはすべてが正常であり、ゼロ以外がエラーを示すことを意味します。
将来の参照用:1.3.6.1.4.1.2021.2.1.101
以下のOIDは、エラーが発生した場合の詳細情報を提供します。