イベント ポリシーとイベント通知の概要
イベント ポリシーのメリット
イベント ポリシーには、以下のメリットがあります。
-
システムログメッセージ、SNMPトラップ、シャーシアラーム、内部タイマーなどのシステムイベントに自動的に応答することで、ネットワークの信頼性を向上させ、ネットワーク稼働時間を最大化します。
-
トラブルシューティングタスクを自動化することで、トラブルシューティングの時間を短縮し、ネットワーク問題の解決に要する時間を短縮
-
手動によるシステム監視と介入に必要な時間を短縮
イベントポリシーとイベント通知について
デバイスの障害やエラーの状態を診断するには、プラットフォームの状態に関する関連情報が必要です。 イベント通知から状態情報を導き出すことができます。イベント通知は、システムログメッセージとSNMPトラップです。 イベントプロセス (eventd)と呼ばれるJunosプロセスは、他のJunosプロセスからイベント通知を受信するため、単純に呼び出された イベントです。
タイムリーな診断と介入により、エラー状態を修正し、デバイスの動作を維持できます。イベント処理がイベントを受信すると、 イベント ポリシーをトリガーできます。イベント ポリシーは if-then-else 構成要素であり、イベントが発生したプロセスに対して、特定のイベントを選択し、イベントを関連付け、イベントを受信した時点で一連のアクションを実行するよう指示します。これらのアクションは、障害の診断と是正措置の実行に役立ちます。たとえば、イベント処理では、ログ ファイルの作成、デバイス ファイルの特定の宛先へのアップロード、運用モード コマンドの発行、構成の変更、イベント スクリプトの呼び出しなどを実行できます。イベント・スクリプトが呼び出されると、イベントの詳細が XML 入力の形式でイベント・スクリプトに渡されます。
イベントに対して処理される複数のポリシーを設定できます。ポリシーは、設定に表示された順序で実行されます。ポリシーごとに、複数のアクションを設定できます。アクションは、設定に表示された順序で実行されます。
Junos OS Evolvedでは、表示される順序ポリシーは実行された順序でない場合があります。そのため、あるポリシーにオプションがある場合、イベントに ignore
関連付けられたポリシーのいずれも実行されないため、動作が変更されます。
Junos OSでは、eventdは、ポリシーが重複している場合、コミット時間警告メッセージをスローします。Junos OS Evolvedでは、eventd は警告メッセージをスローしません。ポリシーは、先着順で受け付けます。
イベントの定義
イベントは、SNMP トラップまたはシステム ログ メッセージとして発信できます。イベント プロセスは、ルーティング プロトコル プロセス(rpd)や管理プロセス(mgd)など、他の Junos プロセスからイベント メッセージを受信します。 図 1 は、イベント プロセス(イベント化)が他の Junos プロセスとどのようにやり取りするかを示しています。
イベント ポリシーを作成する場合、ポリシーをトリガーする 1 つ以上のイベントを定義します。ポリシーで使用するイベントを決定するには、さまざまな方法があります。以下のリソースを使用して、イベントを探索できます。
-
help syslog
CLI での動作モード コマンド -
CLIでイベントポリシーを設定する際のコンテキストに応じたヘルプ
システム ログ エクスプローラー アプリケーションを使用すると、特定のオペレーティング システムとリリースでサポートされている標準システム ログ メッセージを検索できます。
CLI の操作モード コマンドは、 help syslog ?
イベント ポリシーで参照できるイベントを一覧表示します。
user@host> help syslog ? Possible completions: <syslog-tag> System log tag ACCT_ACCOUNTING_FERROR Error occurred during file processing ACCT_ACCOUNTING_FOPEN_ERROR Open operation failed on file ...
パイプ(|
)記号を使用して、検索の出力をフィルタリングできます。次の例では、パイプ 記号で使用できるフィルターを一覧表示しています。
user@host> help syslog | ? Possible completions: count Count occurrences display Show additional kinds of information except Show only text that does not match a pattern find Search for first occurrence of pattern hold Hold text without exiting the --More-- prompt last Display end of output only match Show only text that matches a pattern no-more Don't paginate output request Make system-level requests resolve Resolve IP addresses save Save output text to file trim Trim specified number of columns from start of line
パイプ記号の使用の詳細については、 CLIユーザーガイドを参照してください。
また、イベントポリシーの設定時にイベントを一覧表示することもできます。イベント ポリシーで参照できるイベントの一部を表示するには、 設定モード コマンドを set event-options policy policy-name events ?
発行します。
[edit] user@host# set event-options policy policy-name events ? Possible completions: <event> [ Open a set of values acct_accounting_ferror acct_accounting_fopen_error ...
イベント・ポリシーで参照できるシステム・ログ・メッセージの一部は、 コマンドの set event-options policy policy-name events ?
出力にリストされていません。イベント ポリシーでこれらのシステム ログ メッセージを参照する方法については、「 非標準システム ログ メッセージを使用してイベント ポリシーをトリガーする」を参照してください。
さらに、特定の時間または時間間隔で内部イベントを生成し、イベントポリシー内のイベントを参照することができます。詳細については、「 内部イベントを生成してイベント ポリシーをトリガーする」を参照してください。
また、1 つのイベントまたは 2 つ以上の相関イベントに対してトリガーするイベント ポリシーを構成することもできます。イベントの関連付けについては、「 相関イベントを 使用してイベント ポリシーをトリガーする」を参照してください。
ラボ環境では、Junos ロガー ユーティリティを使用して、特定の設定では再現が難しい 1 つ以上のイベントをシミュレートできます。イベントをシミュレートすることで、それ以外のテストが難しい可能性のあるイベント ポリシーをトリガーおよびテストできます。詳細については、 Junos ロガー ユーティリティを参照してください。
イベント ポリシー アクション
イベントポリシーを設定して、イベントに応じて特定のアクションを実行できます。イベント ポリシーは、以下の 1 つ以上のアクションを実行できます。
イベントを無視する — このイベントのシステム ログ メッセージは生成せず、このイベントに関するそれ以上のポリシー手順は処理しません。
ファイルのアップロード — 指定した宛先にファイルをアップロードします。転送遅延を指定して、イベントを受信すると、設定された転送遅延の後にファイルのアップロードが開始されるようにすることができます。例えば、コア・ファイルをアップロードする場合、転送遅延によって、アップロードが開始される前にコア・ファイルが完全に生成されていることを確認できます。
運用モード コマンドの実行 — イベントの受信時にコマンドを実行します。これらのコマンドの XML またはテキスト出力はファイルに保存され、指定された URL にアップロードされます。トリガー・イベントのデータをコマンド構文に自動的に含めることができる変数をコマンドに含めることができます。
設定モードコマンドの実行 — イベント受信時に設定を変更するコマンドを実行します。設定モードコマンドを使用して設定を変更するイベントポリシーを設定し、更新された設定をコミットすることができます。
イベント スクリプトの実行 — イベントの受信時にイベント スクリプトを実行します。イベント スクリプトは、XSLT(Extensible Stylesheet Language Transformations)、Stylesheet Language Alternative syntaX(SLAX)、または Junos XML または Junos XML プロトコルリモート プロシージャ コール(RPC)を介して利用可能な機能を実行するために作成した Python スクリプトです。たとえば、スクリプトで動作モード コマンドを実行し、コマンド出力を検査して、次に適切なアクションを判断できます。この処理は、問題の原因が特定されるまで繰り返すことができる。スクリプトの出力はファイルに保存され、指定された URL にアップロードされます。トリガー・イベントのデータをスクリプトに組み込むことができるスクリプトに、引数に変数を含めることができます。さらに、イベント スクリプトの呼び出し時に渡される独自の引数セットを定義できます。
SNMP トラップを発生させます。