TWSNMP FCのポーリング辞典:SNMPの基本
TWSNMP FCのSNMPによるポーリングに関する基本について説明します。
SNMPポーリング設定
TWSNMP FCのSNMPポーリング設定の画面は
オリジナルのTWSNMPでは、
MIBGET:hrSystemNumUsers.0>-1:ABS
のような書式でSNMPのポーリングを設定していましたが、TWSNMP FCでは設定画面の項目を分けて設定できるようになっています。基本的には、種別にSNMPを選択します。モードにSNMPのアクセス方法を設定します。
SNMPポーリングモード
2023/2/10現在対応しているモードは、
です。
再起動監視
sysUpTimeはSNMPのエージェントが起動してからの経過時間を1/100秒単位で示すMIBです。当然、時間とともに増えていきます。前回のポーリングで取得した値から減った場合は再起動したと判断できます。この監視を簡単に行うのがsysUpTimeモードです。
インターフェイス状態
監視対象のインターフェイス(LANポート)の状態を監視するためには、ifOperStatus(動作状態)とifAdminState(設定)のMIBを利用します。ifAdminStateがUPでifOperStatusがUPが正常です。ifAdminStateがDOWNならばifOperStatusがDOWNでも有効にしてないポートなので正常です。ifAdminStateがUPでifOperStatusがDOWNは障害です。有効にしてもリンクがアップしない状態だからです。ケーブルが接続されていない、対向の機器がダウンしているなどが考えられます。TWSNMPでこの監視を行うには、ifOperStatusモードのポーリングを設定します。
このポーリングの設定にはインターフェイスのインデックスが必要です。自動発見で登録したポーリングは自動で設定しています。手動で設定する場合は、MIBブラウザーでifTableの取得して監視したいLANポートのインデックスを確認してください。
サンプルテンプレート
ここで説明したモードのサンプル定義です。
{
"Name": "SNMP再起動監視",
"Type": "snmp",
"Mode": "sysUpTime",
"Level": "low",
"Descr": "対象ノードの再起動を検知",
"AutoMode": ""
},
{
"Name": "インターフェイス監視",
"Type": "snmp",
"Mode": "ifOperStatus",
"Params": "$i",
"Level": "low",
"Descr": "インターフェイスの状態を監視",
"AutoMode": "index:ifIndex"
},
{
"Name": "SNMP通信量測定",
"Type": "snmp",
"Mode": "traffic",
"Params": "$i",
"Level": "off",
"Descr": "インターフェイスの通信量を測定",
"AutoMode": "index:ifIndex"
},
{
"Name": "プロセス起動数監視",
"Type": "snmp",
"Mode": "count",
"Params": "hrSWRunName",
"Filter":"プロセス名を指定",
"Script":"count > 0",
"Level": "low",
"Descr": "プロセスの起動数の監視、フィルタでプロセス名を指定",
"AutoMode": "disable"
},
{
"Name": "プロセス再起動監視",
"Type": "snmp",
"Mode": "process",
"Params": "",
"Filter": "プロセス名",
"Script": "changed == 0",
"Level": "low",
"Descr": "監視対象のプロセスのPIDの変化を検知",
"AutoMode": "disable"
},
{
"Name": "TCP接続数",
"Type": "snmp",
"Mode": "get",
"Params": "tcpCurrEstab.0",
"Script": "tcpCurrEstab < 10000",
"Level": "low",
"Descr": "TCP接続数の監視",
"AutoMode": ""
},
{
"Name": "LANポート送受信",
"Type": "snmp",
"Mode": "ps",
"Params": "ifInOctets.$i,ifOutOctets.$i",
"Script": "Mbps=8*(ifInOctets_PS+ifOutOctets_PS)/1000000;Mbps < 1000",
"Level": "low",
"Descr": "LANポートの送受信の合計量をMbps単位で測定",
"AutoMode": "index:ifIndex"
},
{
"Name": "CPU平均使用率",
"Type": "snmp",
"Mode": "stats",
"Params": "hrProcessorLoad",
"Script": "avg < 90.0",
"Level": "low",
"Descr": "CPU平均使用率",
"AutoMode": ""
},
開発のための諸経費(機材、Appleの開発者、サーバー運用)に利用します。 ソフトウェアのマニュアルをnoteの記事で提供しています。 サポートによりnoteの運営にも貢献できるのでよろしくお願います。