メモのページ - チラシの裏メモ 3枚目

通信技術や気になった事を黙々とメモし続ける

今更ながらのEEM設定

Cisco IOSにおけるEEM(Embedded Event Manager)とは、対象機器にてイベントのモニタリングを実行し、対象となるイベントが発生した場合にそのイベントと関連付けられたアクションを実行する事が出来る機能を指す。
商用環境にて動作しているCatalyst4500やCatalyst6500のshow runを眺めると、たまに見かける設定でもある。
回線断により運用担当者等が機器にログインしコマンドを叩けない状態になっても、自動でログ取得や簡単且つパターン化された操作が出来る為、設定次第では強力なトラブルシューティングツールとなる。
例えば、回線断発生前後のログ取得なんかに有用だ。
 
EEMによるアクションの実行方法は、Cisco IOSコマンドにて制御するApplet版とTcl Scriptも利用するTcl版の2通りがあるが、今回はCatalyst6500側にてApplet版で遊んでみた。
今回設定したEEMの処理の流れは以下のとおり。
・WAN Router向けInterfaceにてEIGRP Neighborステータスが変化。(Neighbor Up/Down)
・EIGRP Neighborステータスの変化を検知すると、show ip eigrp neighbor detail、show ip eigrp topology all-links、show tech-suppotの各コマンドが実行される。
・上記のコマンドの実行結果は、それぞれCHG_eigrp_neighbor.log、CHG_eigrp_topology.log、CHG_show_tech.logのログファイルでsup-bootdisk上に保存される。


構成(クリックすると拡大表示)


MI-CAT6503-S32-SW-01:Catalyst6503 (WS-SUP32-GE-3B)
MI-CSO3640-SI-RT-01:Cisco3640
 
1. 以下は、MI-CAT6503-S32-SW-01の設定内容から抜粋。

interface GigabitEthernet3/1
 description *** To MI-CSO3640-SI-RT-01_ETH0/0 ***
 ip address 10.200.10.1 255.255.255.252
 no ip redirects
 no ip unreachables
 no ip proxy-arp
 speed 10
 duplex full
end

interface Loopback0
 description *** Management Segment ***
 ip address 10.1.1.10 255.255.255.255
 no ip redirects
 no ip proxy-arp
 logging event link-status
end

router eigrp 1
 network 10.1.1.10 0.0.0.0
 network 10.200.10.0 0.0.0.3
 passive-interface default
 no passive-interface GigabitEthernet3/1
 eigrp router-id 10.1.1.10

 

2. 以下は、MI-CAT6503-S32-SW-01〜MI-CSO3640-SI-RT-01間のEIGRPネイバ関係の状態を確認結果。

MI-CAT6503-S32-SW-01#show ip eigrp neighbor
EIGRP-IPv4 Neighbors for AS(1)
H  Address       Interface   Hold Uptime  SRTT RTO Q Seq
                     (sec)     (ms)   Cnt Num
0  10.200.10.2      Gi3/1     13 00:04:06 1600 5000 0 31
MI-CAT6503-S32-SW-01#

 

3. 今回、投入されているEEMは以下のとおり。
EIGRP Neighborのステータスに変化(Up/Down)が発生すると、ログを取得しsup-bootdisk:に保存するという内容。

MI-CAT6503-S32-SW-01#show run | be EIGRP_Neighbor_Change_Log 
event manager applet EIGRP_Neighbor_Change_Log 
 event syslog pattern "%DUAL-5-NBRCHANGE: EIGRP-IPv4 1"
 action 1.0 cli command "enable"
 action 10.0 syslog msg "***** Log: taken and saved at sup-bootdisk: *****"
 action 2.0 cli command "show ip eigrp neighbor detail | append sup-bootdisk:CHG_eigrp_neighbor.log"
 action 3.0 cli command "show ip eigrp topology all-links | append sup-bootdisk:CHG_eigrp_topology.log"
 action 5.0 cli command "show tech-support | append sup-bootdisk:CHG_show_tech.log"
 action 6.0 cli command "exit"

 

4. 早速ではあるが、WAN RouterであるMI-CSO3640-SI-RT-01側にて、MI-CAT6503-S32-SW-01向けInterface Eth0/1に挿入されているUTPケーブルを抜去。
ケーブル抜去後、MI-CAT6503-S32-SW-01側では、EIGRP Neighbor Changeのログと共にEEMスクリプトで記載したLog: taken and saved at sup-bootdisk:が出力された。

MI-CAT6503-S32-SW-01#
Apr  5 11:20:08.787 JST: %DUAL-5-NBRCHANGE: EIGRP-IPv4 1: Neighbor 10.200.10.2(GigabitEthernet3/1) is
 down: interface down
Apr  5 11:20:08.819 JST: %HA_EM-6-LOG: EIGRP_Neighbor_Change_Log: ***** Log: taken and saved
 at sup-bootdisk: *****
MI-CAT6503-S32-SW-01#

 

5. ログ保存先として定義したのsup-bootdisk:の内容を確認。
新規にCHG_eigrp_neighbor.log、CHG_eigrp_topology.log、CHG_show_tech.logの各ログファイルが作成された。
この後、何度もEIGRP NeighborがUp/Downを繰り返すと取得されたログの内容は既存のログファイルに追記されるのだが、EIGRPのNeighbor DownとUpを別のログファイル名で保存する内容でEEM Appletの設定をする事は可能である。

MI-CAT6503-S32-SW-01#show sup-bootdisk: 
:
(省略)
9    398900 Apr 5 2015 11:20:28 +09:00 CHG_show_tech.log
10     166 Apr 5 2015 11:20:08 +09:00 CHG_eigrp_topology.log
11     4048 Apr 5 2015 11:20:08 +09:00 CHG_eigrp_neighbor.log

795967488 bytes available (205881344 bytes used)

 

6. show event manager history eventsコマンドを叩くと、EEMの実行履歴が出力される。
Statusの項目を確認するとsuccessの出力がある為、EEM Appletの実行は正常終了した事が分かる。

MI-CAT6503-S32-SW-01#show event manager history events
No. Job Id  Status Time of Event      Event Type  Name
1  6    success Sun Apr 5 11:20:08 2015 syslog   applet: EIGRP_Neighbor_Change_Log 

MI-CAT6503-S32-SW-01#

 

今回はEEMをApplet版で設定し、動作確認およびログが出力されたところまで見る事が出来た。
Tcl版の場合はもっと細かな制御が可能である。
 
 
参照サイト
https://gblogs.cisco.com/jp/2017/12/ios-use-case-embedded-event-manager/ Cisco IOS フル活用への道:第1回 EEM (Embedded Event Manager)
https://www.itbook.info/network/eem.html EEM (Embedded Event Manager)
https://www.n-study.com/eem_2/ EEMの設定 - ネットワークのおべんきょしませんか?