Cisco Nexus 9000 シリーズ NX-OS システム管理コンフィギュレーション ガイド リリース 6.x
Embedded Event Manager システム イベントおよびコンフィギュレーション例
Embedded Event Manager システム イベントおよびコンフィギュレーション例

目次

Embedded Event Manager システム イベントおよびコンフィギュレーション例

この付録では、Embedded Event Manager(EEM)システム ポリシー、イベント、およびポリシーのコンフィギュレーション例について説明します。

この付録は、次の項で構成されています。

EEM システム ポリシー

次の表に、組み込みイベント マネージャ(EEM)のシステム ポリシーを示します。

Event

説明

__PortLoopback

CallHome を実行し、Syslog、OBFL、または例外ログにエラーを記録し、GOLD "PortLoopback" テストに 10 回連続で失敗した場合は、その後影響を受けたポートでの HM テストをディセーブルにします。

__RewriteEngineLoopback

CallHome を実行し、Syslog、OBFL、または例外ログにエラーを記録し、GOLD "RewriteEngine" テストに 10 回連続で失敗した場合は、その後影響を受けたポートでの HM テストをディセーブルにします。

__asic_register_check

CallHome を実行し、エラーを記録し、GOLD "ASICRegisterCheck" テストに 20 回連続で失敗した場合は、その後その ASIC デバイスおよびインスタンスの HM テストをディセーブルにします。

__compact_flash

CallHome を実行し、エラーを記録し、GOLD "CompactFlash" テストに 20 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__crypto_device

CallHome を実行し、GOLD "CryptoDevice" テストに失敗するとエラーを記録します。

__eobc_port_loopback

CallHome を実行し、GOLD "EOBCPortLoopback" テストに失敗するとエラーを記録します。

__ethpm_debug_1

アクション:なし

__ethpm_debug_2

アクション:なし

__ethpm_debug_3

アクション:なし

__ethpm_debug_4

アクション:なし

__ethpm_link_flap

420 秒間隔でリンク フラップが 30 を超えています。 アクション:エラー。 ポートをディセーブルにします。

__external_compact_flash

CallHome を実行し、エラーを記録し、GOLD "ExternalCompactFlash" テストに 20 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__lcm_module_failure

2 度電源を切って入れ直し、電源を切ります。

__management_port_loopback

CallHome を実行し、GOLD "ManagementPortLoopback" テストに失敗するとエラーを記録します。

__nvram

CallHome を実行し、エラーを記録し、GOLD "NVRAM" テストに 20 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__pfm_fanabsent_all_systemfan

両方のファン トレイ(f1 と f2)が 2 分間存在しない場合は、シャットダウンします。

__pfm_fanbad_all_systemfan

ファンで障害が発生した場合シスログに記録します。

__pfm_fanbad_any_singlefan

ファンで障害が発生した場合シスログに記録します。

__pfm_power_over_budget

不十分な電力超過バジェットに対するシスログ警告

__pfm_tempev_major

TempSensor メジャーしきい値 アクション:シャットダウン

__pfm_tempev_minor

TempSensor マイナーしきい値 アクション:シスログ

__primary_bootrom

CallHome を実行し、エラーを記録し、GOLD "PrimaryBootROM" テストに 20 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__pwr_mgmt_bus

CallHome を実行し、エラーを記録し、GOLD "PwrMgmtBus" テストに 20 回連続で失敗した場合は、モジュールまたはスパインカードの HM テストをディセーブルにします。

__real_time_clock

CallHome を実行し、エラーを記録し、GOLD "RealTimeClock" テストに 20 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__secondary_bootrom

CallHome を実行し、エラーを記録し、GOLD "SecondaryBootROM" テストに 20 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__spine_control_bus

CallHome を実行し、エラーを記録し、GOLD "SpineControlBus" テストに 20 回連続で失敗した場合は、そのモジュールまたはスパインカードの HM テストをディセーブルにします。

__standby_fabric_loopback

CallHome を実行し、エラーを記録し、10 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__status_bus

CallHome を実行し、エラーを記録し、GOLD "StatusBus" テストに 5 回連続で失敗した場合は、その後 HM テストをディセーブルにします。

__system_mgmt_bus

CallHome を実行し、エラーを記録し、GOLD "SystemMgmtBus" テストに 20 回連続で失敗した場合は、そのファンまたは電源の HM テストをディセーブルにします。

__usb

CallHome を実行し、GOLD "USB" テストに失敗するとエラーを記録します。

EEM イベント

次の表は、デバイスで使用できる EEM イベントについて説明します。

EEM イベント

説明

アプリケーション

アプリケーション固有のイベントをパブリッシュします。

cli

ワイルドカードを使用したパターンを照合する CLI コマンドが入力されます。

counter

EEM カウンタが指定された値または範囲に達します。

fanabsent

システム ファン トレイがありません。

fanbad

システム ファンで障害が生成されます。

fib

ユニキャスト FIB のルートまたは TCAM の使用状況をモニタします。

Gold

GOLD テスト失敗条件がヒットします。

interface

インターフェイス カウンタがしきい値を超えます。

メモリ

使用可能なシステム メモリがしきい値を超えます。

module

指定したモジュールが、選択したステータスになります。

module-failure

モジュール障害が生成されます。

none

指定されたイベントがないポリシー イベントを実行します。

oir

活性挿抜が発生します。

policy-default

デフォルトのパラメータおよびしきい値が、上書きするシステム ポリシーのイベントに使用されます。

poweroverbudget

プラットフォーム ソフトウェアが電力バジェット条件を検出します。

snmp

SNMP オブジェクト ID(OID)の状態が変化します。

storm-control

プラットフォーム ソフトウェアがイーサネット パケット ストーム条件を検出します。

syslog

syslog メッセージを監視し、ポリシーの検索文字列に基づいてポリシーを呼び出します。

sysmgr

システム マネージャがイベントを生成します。

temperature

システムの温度レベルがしきい値を超えます。

timer

指定された時間に到達します。

track

トラッキング対象オブジェクトの状態が変化します。

EEM ポリシーのコンフィギュレーション例

CLI イベントのコンフィギュレーション例

インターフェイス シャットダウンのモニタリング

インターフェイスのシャットダウンをモニタする例を示します。

switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# event manager applet monitorShutdown
switch(config-applet)#
switch(config-applet)# description “Monitors interface shutdown.”
switch(config-applet)# event cli match “conf t; interface *; shutdown”
switch(config-applet)# action 1.0 cli show interface e 3/1
switch(config)# copy running-config startup-config


(注)  


EEM ポリシーの一部として入力された show コマンドの出力は、「eem_archive_」というプレフィックスが付加されたテキスト ファイルとして logflash にアーカイブされます。 アーカイブされている出力を表示するには、show file logflash:eem_archive_n コマンドを使用します。

モジュール パワーダウンのモニタリング

モジュールのパワーダウンをモニタする例を示します。

switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)# event manager applet monitorPoweroff
switch(config-applet)#
switch(config-applet)# description “Monitors module power down.”
switch(config-applet)# event cli match “conf t; poweroff *”
switch(config-applet)# action 1.0 cli show module
switch(config)# copy running-config startup-config

ロールバックを開始するトリガーの追加

ロールバックを開始するトリガーを追加する例を示します。

switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
switch(config)#
switch(config)# event manager applet rollbackTrigger
switch(config-applet)#
switch(config-applet)# description “Rollback trigger.”
switch(config-applet)# event cli match “rollback *”
switch(config-applet)# action 1.0 cli copy running-config bootflash:last_config
switch(config)# copy running-config startup-config

メジャーしきい値を上書き(ディセーブル)するコンフィギュレーション例

メジャーしきい値に達したときにシャットダウンを防ぐ方法

メジャーしきい値に達したことによるシャットダウンを防ぐ例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config)# no event manager applet myappletname override __pfm_tempev_major
switch(config)# end

1 つの不良センサーをディセーブルにする方法

センサー 3 で障害が発生した場合(他のセンサーに影響なし)に、モジュール 2 でセンサー 3 だけをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 3 threshold major
switch(config-applet)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config)# no event manager applet myappletname override __pfm_tempev_major
switch(config)# end

複数の不良センサーをディセーブルにする方法

モジュール 2 のセンサー 5、6、7 で障害が発生した場合(他のセンサーに影響なし)に、これらのセンサーをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 5 threshold major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 6 threshold major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 7 threshold major
switch(config-applet)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config)# no event manager applet myappletname override __pfm_tempev_major
switch(config)# end

モジュール全体の上書き(ディセーブル)

誤動作するモジュール 2 をディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 threshold major
switch(config-applet)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config)# no event manager applet myappletname override __pfm_tempev_major
switch(config)# end

複数のモジュールおよびセンサーの上書き(ディセーブル)

誤動作するモジュール 2 のセンサー 3、4、7 とモジュール 3 のすべてのセンサーをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 3 threshold major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 4 threshold major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 7 threshold major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_tempev_major
switch(config-applet)# event temperature module 3 threshold major
switch(config-applet)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config)# no event manager applet myappletname override __pfm_tempev_major
switch(config)# end

1 つのセンサーをイネーブルにして、すべてのモジュールの残りのセンサーをすべてディセーブルにする方法

モジュール 9 のセンサー 4 を除くすべてのモジュールのすべてのセンサーをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_tempev_major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet2 override __pfm_tempev_major
switch(config-applet)# event temperature module 9 sensor 4 threshold major
switch(config-applet)# action 2 policy-default
switch(config-applet)# end

複数のセンサーをイネーブルにして、すべてのモジュールの残りのセンサーをすべてディセーブルにする方法

モジュール 9 のセンサー 4、6、7 を除くすべてのモジュールのすべてのセンサーをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_tempev_major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet2 override __pfm_tempev_major
switch(config-applet)# event temperature module 9 sensor 4 threshold major
switch(config-applet)# action 2 policy-default
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet3 override __pfm_tempev_major
switch(config-applet)# event temperature module 9 sensor 6 threshold major
switch(config-applet)# action 3 policy-default
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet4 override __pfm_tempev_major
switch(config-applet)# event temperature module 9 sensor 7 threshold major
switch(config-applet)# action 4 policy-default
switch(config-applet)# end

1 つのモジュールのすべてのセンサーをイネーブルにして、残りのモジュールのすべてのセンサーをディセーブルにする方法

モジュール 9 のすべてのセンサーを除く残りのモジュールのすべてのセンサーをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_tempev_major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet2 override __pfm_tempev_major
switch(config-applet)# event temperature module 9 threshold major
switch(config-applet)# action 2 policy-default
switch(config-applet)# end

モジュールのセンサーを組み合わせてイネーブルにして、残りのモジュールのすべてのセンサーをディセーブルにする方法

モジュール 2 の センサー 3、4、7 とモジュール 3 のすべてのセンサーを除くすべてのモジュールのすべてのセンサーをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_tempev_major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet2 override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 3 threshold major
switch(config-applet)# action 2 policy-default
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet3 override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 4 threshold major
switch(config-applet)# action 3 policy-default
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet4 override __pfm_tempev_major
switch(config-applet)# event temperature module 2 sensor 7 threshold major
switch(config-applet)# action 4 policy-default
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet5 override __pfm_tempev_major
switch(config-applet)# event temperature module 3 threshold major
switch(config-applet)# action 5 policy-default
switch(config-applet)# end

ファン トレイ取り外しのためのシャットダウンを上書き(ディセーブル)するコンフィギュレーション例

1 つまたは複数のファン トレイを取り外すためのシャットダウンの上書き(ディセーブル)

1 つまたは複数(またはすべて)のファン トレイを取り外せるように、シャットダウンをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_fanabsent_any_singlefan
switch(config-applet)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config)# no event manager applet myappletname override __pfm_fanabsent_any_singlefan
switch(config-applet)# end

指定したファン トレイを取り外すためのシャットダウンの上書き(ディセーブル)

指定したファン トレイ(ファン トレイ 3)を取り外せるように、シャットダウンをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 3 time 60
switch(config-applet)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config) no event manager applet myappletname override __pfm_fanabsent_any_singlefan
switch(config)# end

指定した複数のファン トレイを取り外すためのシャットダウンの上書き(ディセーブル)

指定した複数のファン トレイ(ファン トレイ 2、3、4)を取り外せるように、シャットダウンをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 2 time 60
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet2 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 3 time 60
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet3 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 4 time 60
switch(config-applet)# end

デフォルト コンフィギュレーションに戻す例を示します。

switch# configure terminal
switch(config)# no event manager applet myappletname override __pfm_fanabsent_any_singlefan
switch(config)# end

1 つを除くすべてのファン トレイを取り外すためのシャットダウンの上書き(ディセーブル)

1 台(ファン トレイ 2)を除くすべてのファン トレイを取り外せるように、シャットダウンをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_fanabsent_any_singlefan
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet2 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 2 time 60
switch(config-applet)# action 2 policy-default
switch(config-applet)# end

ファン トレイの指定したセットを除くファン トレイを取り外すためのシャットダウンの上書き(ディセーブル)

指定したファン トレイのセット(ファン 2、3、4)を除くファン トレイを取り外せるように、シャットダウンをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_fanabsent_any_singlefan
switch(config-applet)# end
switch(config)# event manager applet myapplet2 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 2,3,4 time 60
switch(config-applet)# action 2 policy-default
switch(config-applet)# end

ファン トレイのセットから 1 台を除くすべてのファン トレイを取り外すためのシャットダウンの上書き(ディセーブル)

指定したファン トレイのセット(ファン トレイ 2、3、4)の 1 台を除くすべてのファン トレイを取り外せるように、シャットダウンをディセーブルにする例を示します。

switch# configure terminal
switch(config)# event manager applet myapplet1 override __pfm_fanabsent_any_singlefan
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet2 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 2 time 60
switch(config-applet)# action 2 policy-default
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet3 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 3 time 60
switch(config-applet)# action 3 policy-default
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet myapplet4 override __pfm_fanabsent_any_singlefan
switch(config-applet)# event fanabsent fan 4 time 60
switch(config-applet)# action 4 policy-default
switch(config-applet)# end

補足ポリシーを作成するコンフィギュレーション例

ファン トレイが存在しないイベントの補足ポリシーの作成

event fanabsent コマンドを使用して、補足ポリシーを作成する例を示します。

[no] event fanabsent [fan fan-tray-number] time time-interval

ファン トレイ 1 が 60 秒間存在しない場合に、デフォルトのポリシーに加えて、ポリシー myappletname とアクション 3 を実行する例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname
switch(config-applet)# event fanabsent fan 1 time 60
switch(config-applet)# action 3 cli “show env fan”
switch(config-applet)# end

温度しきい値イベントの補足ポリシーの作成

event temperature コマンドを使用して、補足ポリシーを作成する例を示します。

[no] event temperature [mod module-number] [sensor sensor-number] threshold {major | minor | any}

モジュール 2 のセンサー 3 で温度がマイナーしきい値を超えた場合に、デフォルトのポリシーに加えて、ポリシー myappletname とアクション 1 を実行する例を示します。

switch# configure terminal
switch(config)# event manager applet myappletname
switch(config-applet)# event temperature module 2 sensor 3 threshold minor
switch(config-applet)# action 1 cli “show environ temperature”
switch(config-applet)# end

電力のバジェット超過ポリシーのコンフィギュレーション例

電力のバジェット超過ポリシーは、使用可能な電力がゼロ未満に低下し、前に起動されたモジュールを起動状態で維持できなくなった場合に開始します。 デフォルトのアクションでは、ユーザに電力のバジェット超過が発生したことを通知する syslog を出力します。

利用可能な電力が赤(負)のゾーンから回復するまでモジュールの電源を落とす追加アクションをイネーブルにできます。

モジュールのシャットダウン

モジュールを指定しない場合、電力のバジェット超過シャットダウンはスロット 1 から始まり、電力が赤(負)のゾーンから回復するまでモジュールをシャットダウンします。 空のスロットやスーパーバイザ、スタンバイ スーパーバイザ、スパイン、クロスバーを含むスロットは飛ばされます。

利用可能な電力がゼロ未満に低下した場合に、モジュール 1 からモジュールをシャットダウンする例を示します。

switch# configure terminal
switch(config)# event manager applet <myappletname4a> override __pfm_power_over_budget
switch(config-applet)# event poweroverbudget
switch(config-applet)# action 4 overbudgetshut
switch(config-applet)# end

指定された一連のモジュールのシャットダウン

電力のバジェット超過アクションによって、電力が赤(負)のゾーンから回復するまでシャットダウンされるモジュールのリストを指定できます。 空のスロットやスーパーバイザ、スタンバイ スーパーバイザ、スパイン、クロスバーを含むスロットは飛ばされます。

利用可能な電力がゼロ未満に低下した場合に、指定されたモジュールのリスト(1、2、7、8)からモジュールをシャットダウンする例を示します。

switch# configure terminal
switch(config)# event manager applet <myappletname4b> override __pfm_power_over_budget
switch(config-applet)# event poweroverbudget
switch(config-applet)# action 5 overbudgetshut module 1,2,7,8
switch(config-applet)# end

シャットダウンするモジュールを選択するコンフィギュレーション例

デフォルトでシャットダウンに非上書きモジュールを選択するポリシーの使用

メジャーしきい値を超えた場合に、デフォルトで非上書きモジュールをシャットダウンするよう選択するポリシーを使用する例を示します。

switch# configure terminal
switch(config)# event manager applet my5a1 override __pfm_tempev_major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet my5a2 override __pfm_tempev_major
switch(config-applet)# event temperature module 1-3 sensor 4 threshold major
switch(config-applet)# action 5 policy-default
switch(config-applet)# end

シャットダウンに非上書きモジュールを選択するパラメータ置き換えの使用

メジャーしきい値を超えた場合に、パラメータの置き換えを使用してシャットダウンする非上書きモジュールを選択する例を示します。

switch# configure terminal
switch(config)# event manager applet my5b1 override __pfm_tempev_major
switch(config-applet)# end
switch# configure terminal
switch(config)# event manager applet my5b2 override __pfm_tempev_major
switch(config-applet)# event temperature module 1-3 sensor 8 threshold major
switch(config-applet)# action 6 forceshut module my_module_list reset “temperature-sensor policy trigger”
switch(config-applet)# end

イベント マネージャ パラメータを作成するには、event manager environment コマンドを使用します。 イベント マネージャ パラメータの値を表示するには、show event manager environment all コマンドを使用します。

活性挿抜イベントのコンフィギュレーション例

活性挿抜イベント(OIR)には、デフォルトのポリシーがありません。

event oir コマンドを使用して、OIR イベントを設定する例を示します。

event oir device-type event-type [device-number]

device-type は、fanmodule または powersupply です。

event-type は、insertremove、または anyoir(装着または取り外し)です。

オプションの device-number では 1 台のデバイスを指定します。 省略すると、すべてのデバイスが選択されます。

装着イベントを設定する例を示します。

switch# configure terminal
switch(config)# event manager applet myoir
switch(config-applet)# event oir module insert
switch(config-applet)# action 1 syslog priority critical msg “OIR insert event: A Module is inserted”

取り外しイベントを設定する例を示します。

switch# configure terminal
switch(config)# event manager applet myoir
switch(config-applet)# event oir module remove
switch(config-applet)# action 1 syslog priority critical msg “OIR remove event: A Module is removed”

ユーザ syslog を生成するコンフィギュレーション例

action syslog コマンドを使用して、ユーザ syslog を生成する例を示します。

switch# configure terminal
switch(config)# event manager applet myoir
switch(config-applet)# event oir module remove
switch(config-applet)# action 1 syslog priority critical msg “Module is removed”

このイベントが発生すると、次の syslog が生成されます。

switch(config)# 2013 May 20 00:08:27 p1b-57 %$ VDC-1 %$ %EEM_ACTION-2-CRIT: “Module is removed”

Syslog メッセージをモニタする設定例

次に、スイッチからの Syslog メッセージをモニタする例を示します。

switch(config)# event manager applet a1
switch(config-applet)# event syslog occurs 6 period 4294967 pattern "authentication failed"

このイベントがトリガーされると、ポリシーで定義されているアクションが実行されます。

SNMP 通知のコンフィギュレーション例

SNMP OID のポーリングによる EEM イベントの生成

スイッチの CPU 使用率を問い合わせるには、SNMP オブジェクト ID(OID)CISCO-SYSTEM-EXT-MIB::cseSysCPUUtilization が使用されます。

cseSysCPUUtilization OBJECT-TYPE
SYNTAX Gauge32 (0..100 )
UNITS "%"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The average utilization of CPU on the active supervisor."
::= { ciscoSysInfoGroup 1 }

10 秒間隔でポーリングされ、しきい値が 95 % の SNMP ODI を使用する例を示します。

switch# configure terminal
switch(config)# event manager applet test_policy
switch(config-applet)# event snmp oid 1.3.6.1.4.1.9.9.305.1.1.1.0 get-type exact entry-op gt entry-val 95 exit-op lt exit-val 90 poll-interval 10

イベント ポリシーのイベントへの応答で SNMP 通知を送信

このタイプのコンフィギュレーションを使用して、重大なイベント トリガーで SNMP 通知を生成できます。

イベント マネージャのアプレット コンフィギュレーション モードからイベントに対して SNMP 通知を送信する例を示します。

switch(config-applet)# action 1.1 snmp-trap intdata1 100 intdata2 300 strdata "CPU Hogging at switch1"
switch(config-applet)# action 1.1 snmp-trap intdata1 100 intdata2 300 strdata "Port Failure eth9/1"

このコンフィギュレーションでは、スイッチから SNMP ホストに SNMP 通知(トラップ)を行います。 SNMP ペイロードには、ユーザ定義フィールド intdata1、intdata2、および strdata の値が含まれます。

ポート トラッキングのコンフィギュレーション例

1 つのポートの状態を別のポートの状態と一致させるように設定する例を示します(ポート トラッキング)。

イーサネット インターフェイス 1/2 によるイーサネット インターフェイス 3/23 のポート トラッキングを設定するには、次のステップに従います。

手順
    ステップ 1   イーサネット インターフェイス 3/23 のステータスを追跡するオブジェクトを作成します。

    例:
    switch# configure terminal
    switch(config)# track 1 interface ethernet 3/23
    switch(config-track)# end
    
    
    ステップ 2   トラッキング オブジェクトがシャットダウンされたらイーサネット インターフェイス 1/2 をシャットダウンする EEM イベントを設定します。

    例:
    switch(config)# event manager applet track_3_23_down
    switch(config-applet)# event track 1 state down
    switch(config-applet)# action 1 syslog msg EEM applet track_3_23_down shutting down port eth1/2 due to eth3/23 being down
    switch(config-applet)# action 2 cli conf term
    switch(config-applet)# action 3 cli interface ethernet 1/2
    switch(config-applet)# action 4 cli shut
    switch(config-applet)# end
    
    
    ステップ 3   イーサネット インターフェイス 3/23 が起動したらイーサネット インターフェイス 1/2 を起動する EEM イベントを設定します。

    例:
    switch# configure terminal
    switch(config)# event manager applet track_3_23_up
    switch(config-applet)# event track 1 state up
    switch(config-applet)# action 1 syslog msg EEM applet track_3_23_down bringing up port eth1/2 due to eth3/23 being up
    switch(config-applet)# action 2 cli conf term
    switch(config-applet)# action 3 cli interface ethernet 1/2
    switch(config-applet)# action 4 cli no shut
    switch(config-applet)# end
    
    

    EEM によって EEM ポリシーを登録する設定例

    次に、EEM によって EEM ポリシーを登録する例を示します。

    基本的なスイッチ設定:

    event manager applet vpc_check_peer_at_startup
    event track 101 state up
    action 1.0 cli copy bootflash:eem/user_script_policies/load_schedules running-config
     
    feature scheduler
     
    !!## 2 x dummy loopbacks are required ##!!
    interface loopback 101
    interface loopback 102
     
    track 1 list boolean or
    object 13
    object 12
    object 102
    track 2 list boolean and
    object 13
    object 12
    track 12 interface Ethernet 2/24 line-protocol
    track 13 interface port-channel 3000 line-protocol
    track 101 interface loopback 101 line-protocol
    track 102 interface loopback 102 line-protocol
    
    

    (注)  


    この例では、ポート チャネル 3000 が vPC ピア リンクで、イーサネット 2/24 が vPC キープアライブ リンクです。

    ブートフラッシュに次のファイルをコピーする必要があります。

    • スーパーバイザのブートフラッシュに作成する必要がある、/eem/user_script_policies と呼ばれるディレクトリ。
    • 次の 5 つのファイルを上記のディレクトリに作成してロードする必要があります。
      • load_schedules
      • remove_vpc_if_peer_failed
      • clean_up
      • unload_schedules
      • restore_vpc

    load_schedules ファイルの設定

    feature scheduler
     
    configure terminal
    scheduler job name vpc_check
    configure terminal
    event manager policy remove_vpc_if_peer_failed
    end
     
    configure terminal
    scheduler job name clean_up
    configure terminal
    event manager policy clean_up
    end
     
    configure terminal
    scheduler job name trigger
    configure terminal
    interface loopback 102
    shutdown
    no shutdown
    end
     
    configure terminal
    scheduler schedule name load_vpc_check
    time start +00:00:04
    job name vpc_check
     
    scheduler schedule name trigger_vpc_check
    time start +00:00:05
    job name trigger
     
    scheduler schedule name load_clean_up
    time start +00:00:08
    job name clean_up
    
    
    scheduler schedule name trigger_clean_up
    time start +00:00:10
    job name trigger
    
    

    remove_vpc_if_peer_failed ファイルの設定

    event manager applet remove_vpc_if_peer_failed
    event track 1 state down
    action 1.0 cli show run vpc > bootflash://sup-active/eem/user_script_policies/vpc_saved.cfg
    action 2.0 cli show run vpc > bootflash://sup-standby/eem/user_script_policies/vpc_saved.cfg
    action 3.0 cli configure terminal
    action 4.0 cli no feature vpc
    action 5.0 syslog msg severity alert "##### WARNING!!!! PEER SWITCH FAILED TO COME ONLINE. VPC CONFIG REMOVED #####"
    action 6.0 cli event manager policy restore_vpc
    action 7.0 cli copy bootflash:eem/user_script_policies/unload_schedules running-config
    action 8.0 cli no event manager applet remove_vpc_if_peer_failed
    action 9.0 cli end
    
    

    clean_up ファイルの設定

    event manager applet clean_up
    event track 102 state up
    action 1.0 cli configure terminal
    action 2.0 cli no event manager applet remove_vpc_if_peer_failed
    action 3.0 cli copy bootflash:eem/user_script_policies/unload_schedules running
    action 4.0 cli no event manager applet clean_up
    action 5.0 end
    
    

    unload_schedules ファイルの設定

    no scheduler schedule name load_vpc_check
    no scheduler schedule name trigger_vpc_check
    no scheduler schedule name load_clean_up
    no scheduler schedule name trigger_clean_up
    no scheduler job name vpc_check
    no scheduler job name trigger
    no scheduler job name clean_up
    
    

    restore_vpc ファイルの設定

    event manager applet restore_vpc
    event track 2 state up
    action 1.0 cli copy bootflash:eem/user_script_policies/vpc_saved.cfg running-config
    action 2.0 syslog msg severity alert "##### VPC PEER DETECTED. VPC CONFIG RESTORED #####"
    action 3.0 cli configure terminal
    action 4.0 cli copy bootflash:eem/user_script_policies/unload_schedules running-config
    action 5.0 cli no event manager applet restore_vpc
    action 6.0 cli end