EEM (Embedded Event Manager)について実用例を踏まえながら解説

Cisco
スポンサーリンク
スポンサーリンク

EEM (Embedded Event Manager)とは

EEM(Embedded Event Manager)とはイベントモニタを行い、対象となるイベントが発生した際やカウンタが閾値を超えた場合にそれを検知し、そのイベントと関連づけたアクションを起こすことのできる機能です。

EEMは、IOSやNX-OS上のスクリプトで自律的に実行可能であり、外部のネットワークマネジメントシステムなどで行っていたノード管理が、EEMにより、ノード内部つまりIOSやNX-OS上のスクリプトで自律的に実行可能になります。

EEMをコントロールする方法は大きく二つに分けられます。IOS(NX-OS)のコマンドラインから制御するApplet版(CLI)と、Tcl Scriptを利用するTcl版が存在します。

EEMの3つの要素

Event Detector:イベントを監視する役割を担います。
Embedded Event Managerサーバ:Detectorからのイベント通知を受け取りそれに対するアクションを実行します。
Action:通知を受け取った際に実行させる処理を定義します。

コマンドについて解説

複数のコマンドを使用することでEEMを実行することができます。
3つの要素で成り立っています。

EEMにアプレットを登録:event manager applet ‘applet-name’
例:event manager applet monitorShutdown
アプレットの実行をトリガーするイベント基準を指定:event ‘event-statement’
例:event cli match “conf t ; interface * ; shutdown”
実行するアクションを指定:action number action-statement
例: action 1.0 cli show interface e 3/1

また、手動実行の場合はevent maanger run ‘applet-name’を使用します。

具体的にどういったことができるの?

EEMは使い方次第で、運用管理を行う中で「こういうことができると便利なんだけどな」という課題に対して解決策を提示してくれます。例えば、以下に示すようなことをEEMによって実現することが可能です。FANや電源故障の場合はSNMP Trapが自動的に出力されることから、これらのイベントを使用したEEMはあまり使い道がないと思います。実運用を考慮すると、特定の状態になったときにSYSLOGにMSGを残す、SNMP Trapを出力させる、機器を再起動する、といった使い方が多いと思います。

①特定のコマンドが入力された場合にSYSLOGに任意のレベルの特定のメッセージを出力させて、さらに任意のMSGを含んだSNMP Trapを出力させる。
②configureと入力される度にcheckpointコマンドを使用してrunnning-configの情報を保存する。
③configureと入力された場合にSNMP Trapを出力させる。
④ルーティングテーブルが追加、変更、削除された場合にSNMP Trapを出力させてリアルタイムで障害等や環境変更に気づくことができるようにする。
⑤特定のMIBで、任意の閾値を超過した場合にSNMP Trapを出力させる。
⑥IP SLAによるモニタリングが失敗してトラッキングしているオブジェクトのステータスが変更になった場合にSNMP Trapを出力させる。
⑦メモリが閾値を超過した場合に自動的に機器を再起動する。
⑧毎日特定の時間にshow系のコマンドを入力する。

実行された場合はログファイルが筐体内のメモリに自動的に保存されます。ログファイルの容量が閾値を超過すると自動的に最も古いログから削除されます。

また、外部サーバに保存することも可能です。しかし、公式ドキュメントには詳細が書かれていないのでCisco TACに問い合わせが必要となります。

構成図

Coming Soon

検証方法

Coming Soon

検証結果

Coming Soon

コメント