イベント ディテクタ
イベント ディテクタは EEM ソフトウェア プログラムであり、EEM イベントの発生を検知します。イベント ディテクタは独立したシステムであり、モニタ対象のエージェント(たとえば SNMP)とアクションが実行される EEM ポリシーとの間のインターフェイスとなります。イベント ディテクタはマスター スイッチによってのみ生成されます。また、CLI およびルーティング処理もマスター スイッチからのみ実行されます。
(注) スタック メンバー スイッチはイベントを生成せず、メモリしきい値の通知および IOSWdSysmon イベント ディテクタをサポートしません。
• アプリケーション固有のイベント ディテクタ:どの EEM ポリシーでもイベントをパブリッシュできます。
• IOS CLI イベント ディテクタ:CLI を使用して入力されたコマンドに基づいてポリシーを生成します。
• Generic Online Diagnostics(GOLD; 汎用オンライン診断)イベント ディテクタ:特定のカードおよびサブカードで GOLD 障害イベントが検出されると、イベントをパブリッシュします。
• カウンタ イベント ディテクタ:特定のカウンタが特定のしきい値を超えると、イベントをパブリッシュします。
• インターフェイス カウンタ イベント ディテクタ:特定のインターフェイスの汎用 Cisco IOS インターフェイス カウンタが定義されたしきい値を超えると、イベントをパブリッシュします。しきい値は絶対値または差分値として指定できます。たとえば、差分値を 50 に設定すると、インターフェイス カウントが 50 増えるとイベントがパブリッシュされます。
このディテクタは、エントリ値と終了値に対する変更の比率に基づいて、インターフェイスに関するイベントもパブリッシュします。
• None イベント ディテクタ:event manager run CLI コマンドが EEM ポリシーを実行すると、イベントをパブリッシュします。EEM は、ポリシー自身でのイベント指定に基づいてポリシーをスケジュールして実行します。event manager run コマンドを実行する前に、EEM ポリシーを手動で指定し、登録する必要があります。
• Online Insertion and Removal(OIR; ホットスワップ)イベント ディテクタ:ハードウェアの OIR イベントが発生すると、イベントをパブリッシュします。
• リソースしきい値イベント ディテクタ:グローバル プラットフォーム値およびしきい値に基づいてポリシーを生成します。リソースには CPU 使用率および残りのバッファ容量などがあります。マスター スイッチにだけ適用されます。
• Remote Procedure Call(RPC; リモート プロシージャ コール)イベント ディテクタ:Secure Shell(SSH; セキュア シェル)を使用する暗号化された接続を介してスイッチの外部から EEM ポリシーを呼び出し、Simple Object Access Protocol(SOAP)データ符号化を使用して XML ベースのメッセージを交換します。また、EEM ポリシーを実行した後、SOAP XML 形式の応答で出力を取得します。
• SNMP イベント ディテクタ:標準 SNMP MIB オブジェクトが
– 指定された値と一致するか、指定されたしきい値を超えると、標準 SNMP MIB オブジェクトがモニタされ、イベントが生成されます。
– SNMP のデルタ値は、期間の開始時においてモニタされた Object Identifier(OID; オブジェクト識別子)の値とイベントがパブリッシュされた時点での実際の OID 値の差異であり、指定された値と一致します。
• SNMP 通知イベント ディテクタ:SNMP トラップを代行受信し、スイッチが受信したメッセージを通知します。着信メッセージが指定されている値と一致するか、定義されているしきい値を超えると、イベントが生成されます。
• Syslog イベント ディテクタ:正規表現のパターン マッチにより Syslog メッセージがスクリーニングされます。選択されたメッセージにはさらに条件を設定して、特定の時間内に特定の回数の発生が記録されることを必要とするようにできます。特定のイベント条件での一致により、設定されたポリシー アクションがトリガーされます。
• タイマー イベント ディテクタ:次のタイマーによってイベントがパブリッシュされます。
– absolute-time-of-day タイマーは、特定の絶対日時の場合にイベントをパブリッシュします。
– カウントダウン タイマーは、タイマーがゼロになるとイベントをパブリッシュします。
– Watchdog タイマーは、タイマーがゼロになるとイベントをパブリッシュします。タイマーは自動的に初期値にリセットされ、再度カウントダウンを開始します。
– CRON タイマーは、イベントをパブリッシュする時間を定義するために UNIX 標準 CRON 仕様を使用してイベントをパブリッシュします。CRON タイマーは 1 秒に 1 つしかイベントをパブリッシュしません。
• Watchdog イベント ディテクタ(IOSWDSysMon):マスター スイッチが次のときにだけイベントをパブリッシュします。
– Cisco IOS 処理の CPU 使用率がしきい値を超える場合。
– Cisco IOS 処理のメモリ使用率がしきい値を超える場合。
2 つのイベントを同時にモニタできます。イベントのパブリッシング条件では、1 つまたは両方のイベントが特定のしきい値を超える必要があります。
組み込みイベント マネージャ ポリシー
EEM はイベントをモニタして情報を提供したり、モニタ対象のイベントが発生するかしきい値に到達したときに修正操作を行ったりすることができます。EEM ポリシーは、イベントおよびイベントが発生したときに実行する操作を定義するエンティティです。
EEM ポリシーにはアプレットとスクリプトの 2 種類があります。アプレットは CLI コンフィギュレーションで定義される単純なポリシーで、イベントのスクリーニング条件およびイベント発生時に実行する操作を定義する簡単な方法です。スクリプトは ASCII エディタを使用してネットワーキング装置に定義されます。スクリプトにはバイトコード(.tbc)スクリプトとテキスト(.tcl)スクリプトがあり、ネットワーキング装置にコピーされて EEM に登録されます。1 つの .tcl ファイルで複数のイベントを登録することもできます。
EEM は、EEM ポリシーのツール コマンド言語(TCL)スクリプトを使用して独自のポリシーを作成および実装します。マスター スイッチ上で TCL スクリプトを設定すると、スクリプト ファイルがメンバー スイッチに自動的に送信されます。マスター スイッチが変わっても TCL スクリプト ポリシーが引き続き動作するようにするためには、ユーザが定義した TCL スクリプトは、メンバー スイッチで利用可能である必要があります。
シスコはキーワード拡張の形で TCL を拡張したため、EEM ポリシーの開発は容易になっています。これらのキーワードを使用して、検出されたイベント、その後の操作、ユーティリティ情報、カウンタ値、およびシステム情報を特定します。
EEM ポリシーおよびスクリプトの設定の詳細については、『Cisco IOS Network Management Configuration Guide』 Release 12.4T を参照してください。
組み込みイベント マネージャの環境変数
EEM は、EEM ポリシーで環境変数を使用します。環境変数は、EEM ポリシーの TCL スクリプトで CLI コマンドおよび event manager environment コマンドを実行して定義します。
• ユーザ定義の変数
ユーザがユーザ定義のポリシー用に定義します。
• シスコ定義の変数
シスコが特定のサンプル ポリシー用に定義します。
• シスコの組み込み変数(EEM アプレットで使用可能)
シスコが定義する読み取り専用または読み取りと書き込みが可能な変数です。読み取り専用変数は、アプレットが実行を開始する前にシステムによって設定されます。_exit_status という読み取りと書き込み変数を使用すると、同期イベントによってトリガーされるポリシーの終了ステータスを設定できます。
シスコ定義の環境変数およびシスコのシステム定義の環境変数は、1 つの特定のイベント ディテクタまたはすべてのイベント ディテクタに適用されます。ユーザ定義の環境変数またはサンプル ポリシーでシスコが定義する環境変数は、event manager environment グローバル コンフィギュレーション コマンドを使用して設定されます。ポリシーを登録する前に、EEM ポリシーで変数を定義する必要があります。
EEM がサポートする環境変数の詳細については、『Cisco IOS Network Management Configuration Guide』 Release 12.4T を参照してください。