EEM ( Embedded Event Manager )はIOSに搭載された運用管理機能の一つです。IOS内部で動作するEEMが特定のイベントを検知して様々なアクションを実行します。イベントの検知はEvent Detectorが行いEEMへ通知します。Event Detectorは機能によって複数の種類が用意されています。イベントを検知するEvent Detectorとそれに対して行動を起こすアクションはそれぞれが独立しており自由に組み合わせて利用することができます。
ネットワーク管理者や設計者がEEMを応用することでこれまでIOS機能だけでは不可能であったさまざまなロジックを作りこむことができます。従来の運用管理の仕組みと組み合わせて使うことで運用管理業務の効率化や迅速な障害解決に役立つ可能性があります。
EEMを適切に設計すれば様々な障害の予兆となりうるイベントに基づいたプロアクティブな対処が可能となります。以下が例えばの活用例です。
課題 | EEMによる活用 |
数日ごとに不定期にOSPFネイバーダウンが発生 | OSPFネイバーダウンが発生したときのSylogを トリガーとして必要となる情報をIOSコマンドで 自動的に取得し、その情報をフラッシュメモリへ保存。 ルーティング情報が不正な場合は再起動を実行する。 |
数週間おきに低メモリ容量の状態に陥る | メモリ使用率が指定した閾値を超えたらメモリ情報を 取得してSyslogを発行しメールで管理者に通知する。 |
ある一つの冗長リンクがリンクアップ状 態のまま突然高いエラーレートとなり通 信に影響がでることがある。 |
インターフェイスエラーレートが閾値を超えたら そのリンクをシャットダウンしルーティングや HSRPを強制的に切り替える。 またSNMPトラップやSyslogでNMSへ通知する。 |
毎晩午前2時にACLをアップデートしな ければならない |
CRON Timerによって指定した時間にTFTPサーバから 新しくACLを取得し適用する。 |
特定のエラーカウンタが不定期に カウントアップし通信障害を誘発する。 エラーカウント時の障害ログ取得を 行いたいがエラー条件を特定でき ておらずタイムリーなログ取得が困難 |
エラーカウンタのMIB OIDを定期的に監視し、 カウントアップ直後のログを取得して フラッシュメモリへ保存。また同等の内容を ファイルサーバへ転送する。 |
現地での定型的トラブルシューティングや 展開作業がフィールドエンジニアのスキルによって ばらつきがないようにしたい。 |
既存IOSコマンドをよりシンプルにする |
EEMで活用できる主なイベントの種類には以下のものがあります。
・主なEvent Detector
Syslog |
SNMP |
Timer |
Interface Counter |
CLI |
OIR |
None ( Manual ) |
RF ( Redundancy Framework ) |
Counter |
IOS Watchdog / System Monitor |
Generic Online Diagnostic ( Gold ) ( Cat6k Only ) |
Application Specific |
System Manager ( Modular IOS ) |
Watchdog / System Monitor ( Modular IOS ) |
ERM ( EEM 2.2 ) |
Enhanced Object Tracking ( EEM 2.2 ) |
SNMP Proxy ( EEM 2.4 ) |
XML RPC ( EEM 2.4 ) |
Parser ( EEM 3.0 ) |
Routing ( EEM 3.0 ) |
Netflow ( EEM 3.0 ) |
IP SLA ( EEM 3.0 ) |
Neighbor Discovery ( EEM 3.2 ) |
Identity ( EEM 3.2 ) |
Mac Address Table ( EEM 3.2 ) |
・主なアクション
IOS CLIコマンドの実行と結果の取得 |
システム情報の取得 |
SNMPデータへのアクセス ( ローカル、リモート ) |
XML RPCリクエストの送信 |
再起動 |
CNSイベントの送信 |
他のEEMポリシーから参照できるようデータを保存 |
他のEEMポリシーの呼び出し |
EEMカウンタのインクリメント、デクリメント |
冗長構成におけるスイッチオーバー |
システム情報の収集 |
メールの送信 ( SMTP / MUA ) |
Application specificイベントの呼び出し |
カスタマイズしたSNMPトラップの送信 |
カスタマイズしたシスログの送信 |
トラフィックオブジェクトの読み込み、書き込み |