監視サーバーをAWS上で構築し、CML上のネットワーク機器/サーバーを監視します。監視ソフトウェアはZabbixを利用します。
【前回】AWS上での監視サーバー(Zabbix)構築【6.監視登録(ICMPノード監視)】
【次回】AWS上での監視サーバー(Zabbix)構築【8.監視登録(SNMP Trap)】
ネットワーク構成
下記のネットワーク環境を構築し、AWS上のEC2(Zabbixサーバー)から、CML上のネットワーク機器/サーバーを監視できるようにしていきます。
Zabbixの監視登録(SNMP)
前回登録したホストの設定を変更し、SNMPによるデータ取得、監視ができるようにします。今回はCPU使用率の高騰を検知できることを検証します。
「設定」→「ホスト」から、”VPN-Router”をクリックします。
SNMPインターフェースの「追加」をクリックします。
インターフェースのIPアドレスを入力します。
“テンプレート”を選択します。前回登録した”Template Module ICMP Ping”の「リンクと保存データを削除」を実施します。※新しく設定するテンプレートにも同様の監視内容が含まれているため削除します。
Zabbixの標準で用意されているCiscoのSNMPテンプレートを適用します。「新規テンプレートをリンク」に”cisco”と入力し、表示される”Template Net Cisco IOS SNMPv2″を選択します。
選択したテンプレートが表示されていることを確認し、「追加」をクリックします。
テンプレートがリンクされたことを確認します。
“マクロ”を選択し、「継承したマクロとホストマクロ」をクリックします。
「{$SNMP_COMMUNITY}」にSNMPコミュニティ名が設定されているため、任意の値に変更します。
値を入力し、「更新」をクリックします。※ここでは、”cmlpublic”に変更しています。
ホストにテンプレートが適用されていることを確認します。
同様にRouter1にも”Template Net Cisco IOS SNMPv2″を適用します。
ネットワーク機器の設定
VPN-RouterとRouter1にSNMPの設定を行います。
snmp-server community cmlpublic RO
snmp-server host 10.0.0.100 cmlpublic
“cmlpublic”の部分は、Zabbix側で設定したコミュニティ名と合わせます。
SNMPデータ取得確認
「監視データ」→「最新データ」からSNMPのデータ取得状況を確認できます。CPU等は、デフォルトのポーリング間隔が1時間となっているため、初回の取得までに少し時間がかかります。
監視確認
CPU使用率高騰が障害として検知される条件を確認します。
「設定」→「テンプレート」を選択します。
名称に”Cisco IOS SNMP”を入力し適用します。表示された”Template Net Cisco IOS SNMPv2″をクリックします。
「マクロ」→「継承したマクロとテンプレートマクロ」を選択します。”{$CPU_UTIL_MAX}”の値が、CPU使用率が何%になると障害扱いとするかを表しています。
検証のために一時的に「30」に変更します。
Router1のCPU使用率を高騰させ、障害検知できることを確認します。
コンフィグ保存(write memory)を連続で実施しCPU使用率を高騰させます。
wr mem
show proc cpu | inc utilization
下記のように5分平均のCPU使用率が徐々に上昇していきます。
Router1#wr mem
Building configuration...
[OK]
Router1#show proc cpu | inc utilization
CPU utilization for five seconds: 62%/0%; one minute: 12%; five minutes: 8%
Router1#
Router1#wr mem
Building configuration...
[OK]
Router1#show proc cpu | inc utilization
CPU utilization for five seconds: 72%/0%; one minute: 16%; five minutes: 9%
Router1#
Router1#wr mem
Building configuration...
[OK]
Router1#show proc cpu | inc utilization
CPU utilization for five seconds: 87%/0%; one minute: 22%; five minutes: 11%
〜〜〜 中略 〜〜〜
Router1#wr mem
Building configuration...
[OK]
Router1#show proc cpu | inc utilization
CPU utilization for five seconds: 83%/0%; one minute: 51%; five minutes: 26%
〜〜〜 中略 〜〜〜
Router1#wr mem
Building configuration...
[OK]
Router1#show proc cpu | inc utilization
CPU utilization for five seconds: 54%/0%; one minute: 46%; five minutes: 36%
Zabbix側でもCPU使用率の変化が確認できます。ZabbixのCPU監視間隔は3分毎になっています。
CPU使用率が30%を超えた段階で、「監視データ」→「障害」を確認すると、”High CPU utilization(CPU使用率高騰)”として障害検知ができています。
時間が経過し、CPU使用率が30%以下になると、障害復旧(解決済み)として扱われます。
パケットキャプチャ確認
SNMP通信をCML上でキャプチャして確認します。
get-responseとしてCPU使用率の値を返していることがわかります。※”1.3.6.1.4.1.9.9.109.1.1.1.1.8″が、cpmCPUTotal5minRev(5分平均のCPU使用率)のOIDです。
以上で、AWS上での監視サーバー(Zabbix)構築【7.監視登録(SNMP)】の説明は完了です!
【前回】AWS上での監視サーバー(Zabbix)構築【6.監視登録(ICMPノード監視)】
【次回】AWS上での監視サーバー(Zabbix)構築【8.監視登録(SNMP Trap)】