Cisco Nexus 3000 シリーズ NX-OS システム管理コンフィギュレーション ガイド リリース 5.0(3)U4(1)
Embedded Event Manager の設定
Embedded Event Manager の設定
発行日;2012/11/14   |   ドキュメントご利用ガイド   |   ダウンロード ;   この章 pdf   ,   ドキュメント全体 pdf    |   フィードバック

目次

Embedded Event Manager の設定

この章は、次の内容で構成されています。

Embedded Event Manager について

Cisco NX-OS システム内のクリティカル イベントを検出して処理する機能は、ハイ アベイラビリティにとって重要です。 Embedded Event Manager(EEM)は、デバイス上で発生するイベントをモニタし、設定に基づいてこれらのイベントを回復またはトラブルシューティングするためのアクションを実行することによってシステム内のイベントを検出して処理する、中央のポリシー駆動型のフレームワークを提供します。

EEM は次の 3 種類の主要コンポーネントからなります。

イベント文

何らかのアクション、回避策、または通知が必要になる可能性のある、別の Cisco NX-OS コンポーネントからモニタするイベント。

アクション文

電子メールの送信やインターフェイスのディセーブル化などの、イベントから回復するために EEM が実行できるアクション。

ポリシー

イベントのトラブルシューティングまたはイベントからの回復を目的とした 1 つまたは複数のアクションとペアになったイベント。

EEM を使用しない場合は、個々のコンポーネントが独自のイベントの検出および処理を行います。 たとえば、ポートでフラップが頻繁に発生する場合は、「errDisable ステートにする」のポリシーが ETHPM に組み込まれます。

Embedded Event Manager ポリシー

EEM ポリシーは、イベント文および 1 つまたは複数のアクション文からなります。 イベント文では、探すイベントとともに、イベントのフィルタリング特性を定義します。 アクション文では、イベントの発生時に EEM が実行するアクションを定義します。

たとえば、いつカードがデバイスから取り外されたかを識別し、カードの取り外しに関する詳細を記録する EEM ポリシーを設定できます。 カードの取り外しのインスタンスすべてを探すようにシステムに指示するイベント文および詳細を記録するようにシステムに指示するアクション文を設定します。

コマンドライン インターフェイス(CLI)または VSH スクリプトを使用して EEM ポリシーを設定できます。

EEM からデバイス全体のポリシー管理ビューが得られます。 EEM ポリシーが設定されると、対応するアクションがトリガーされます。 トリガーされたイベントのすべてのアクション(システムまたはユーザ設定)がシステムによって追跡され、管理されます。

設定済みのシステム ポリシー

Cisco NX-OS には、設定済みのさまざまなシステム ポリシーがあります。 これらのシステム ポリシーでは、デバイスに関連する多数の一般的なイベントおよびアクションが定義されています。 システム ポリシー名は、2 個の下線記号(__)から始まります。

一部のシステム ポリシーは上書きできます。 このような場合、イベントまたはアクションに対する上書きを設定できます。 設定した上書き変更がシステム ポリシーの代わりになります。


(注)  


上書きポリシーにはイベント文を含める必要があります。 イベント文が含まれていない上書きポリシーは、システム ポリシーで想定されるすべてのイベントを上書きします。


設定済みのシステム ポリシーを表示し、上書きできるポリシーを決定するには、show event manager system-policy コマンドを使用します。

ユーザ作成ポリシー

ユーザ作成ポリシーを使用すると、ネットワークの EEM ポリシーをカスタマイズできます。 ユーザ ポリシーがイベントに対して作成されると、ポリシーのアクションは、EEM が同じイベントに関連するシステム ポリシー アクションをトリガーした後にのみトリガーされます。

ログ ファイル

EEM ポリシーの一致に関連するデータが格納されたログ ファイルは、/log/event_archive_1 ディレクトリにある event_archive_1 ログ ファイルで維持されます。

イベント文

対応策、通知など、一部のアクションが実行されるデバイス アクティビティは、EEM によってイベントと見なされます。 イベントは通常、インターフェイスやファンの誤動作といったデバイスの障害に関連します。

イベント文は、どのイベントがポリシー実行のトリガーになるかを指定します。


ヒント


ポリシー内に複数の EEM イベントを作成し、区別してから、カスタム アクションをトリガーするためのイベントの組み合わせを定義することで、イベントの組み合わせに基づいた EEM ポリシーをトリガーするように EEM を設定できます。


EEM ではイベント フィルタを定義して、クリティカル イベントまたは指定された時間内で繰り返し発生したイベントだけが関連付けられたアクションのトリガーになるようにします。

一部のコマンドまたは内部イベントが他のコマンドを内部的にトリガーします。 これらのコマンドは表示されませんが、引き続きアクションをトリガーするイベント指定と一致します。 これらのコマンドがアクションをトリガーするのを防ぐことはできませんが、どのイベントがアクションを引き起こしたかを確認できます。

サポートされるイベント

EEM はイベント文で次のイベントをサポートします。

  • カウンタ イベント
  • ファン欠損イベント
  • ファン不良イベント
  • メモリしきい値イベント
  • 上書きされたシステム ポリシーで使用されるイベント
  • SNMP 通知イベント
  • syslog イベント
  • システム マネージャ イベント
  • 温度イベント
  • 追跡イベント

アクション文

アクション文は、イベントが発生したときに、ポリシーによってトリガーされるアクションを説明します。 各ポリシーに複数のアクション文を設定できます。 ポリシーにアクションを関連付けなかった場合、EEM はイベント観察を続けますが、アクションは実行されません。

トリガーされたイベントがデフォルト アクションを処理するために、デフォルト アクションを許可する EEM ポリシーを設定する必要があります。 たとえば、一致文で CLI コマンドを照合する場合、EEM ポリシーに event-default アクション文を追加する必要があります。この文がないと、EEM ではコマンドを実行できません。


(注)  


ユーザ ポリシーまたは上書きポリシー内のアクション文を設定する場合、アクション文が、相互に否定したり、関連付けられたシステム ポリシーに悪影響を与えるようなことがないように確認することが重要です。


サポートされるアクション

EEM がアクション文でサポートするアクションは、次のとおりです。

  • CLI コマンドの実行
  • カウンタのアップデート
  • デバイスをリロードします。
  • syslog メッセージの生成
  • SNMP 通知の生成
  • システム ポリシー用デフォルト アクションの使用

VSH スクリプト ポリシー

テキスト エディタを使用して、VSH スクリプトでポリシーを作成できます。 VSH スクリプトを使用して作成されたポリシーには、他のポリシーと同様にイベント文とアクション文が含まれます。また、これらのポリシーはシステム ポリシーを拡張するか、または無効にすることができます。

VSH スクリプト ポリシーを定義したら、それをデバイスにコピーしてアクティブにします。

Embedded Event Manager のライセンス要件

この機能にはライセンスは不要です。 ライセンス パッケージに含まれていない機能はすべて Cisco NX-OS システム イメージにバンドルされており、追加費用は一切発生しません。 NX-OS ライセンス方式の詳細については、『Cisco NX-OS Licensing Guide』を参照してください。

Embedded Event Manager の前提条件

EEM を設定するには、network-admin の権限が必要です。

Embedded Event Manager の注意事項および制約事項

EEM の設定を計画するときは、次の点を考慮します。

  • 設定可能な EEM ポリシーの最大数は 500 です。
  • ユーザ ポリシーまたは上書きポリシー内のアクション文が、相互に否定したり、関連付けられたシステム ポリシーに悪影響を与えるようなことがないようにする必要があります。
  • 発生したイベントでデフォルトのアクションを処理できるようにする場合は、デフォルトのアクションを許可する EEM ポリシーを設定する必要があります。 たとえば、一致文でコマンドを照合する場合、EEM ポリシーに event-default アクション文を追加する必要があります。この文がないと、EEM ではコマンドを実行できません。
  • イベント文が指定されていて、アクション文が指定されていない上書きポリシーを設定した場合、アクションは開始されません。また、障害も通知されません。
  • 上書きポリシーにイベント文が含まれていないと、システム ポリシーで可能性のあるイベントがすべて上書きされます。
  • 通常コマンドの表現の場合:すべてのキーワードを拡張する必要があり、アスタリスク(*)記号のみが引数の置換に使用できます。
  • EEM イベント相関は 1 つのポリシーに最大 4 つのイベント文をサポートします。 イベント タイプは同じでも別でもかまいませんが、サポートされるイベント タイプは、cli、カウンタ、snmp、syslog、追跡だけです。
  • 複数のイベント文が EEM ポリシーに存在する場合は、各イベント文に tag キーワードと一意な tag 引数が必要です。
  • EEM イベント相関はシステムのデフォルト ポリシーを上書きしません。
  • デフォルト アクション実行は、タグ付きのイベントで設定されているポリシーではサポートされません。
  • イベント指定が CLI のパターンと一致する場合、SSH 形式のワイルド カード文字を使用できます。 たとえば、すべての show コマンドを照合する場合は、show * コマンドを入力します。 show . * コマンドを入力すると、機能しません。
  • イベント指定が一致する syslog メッセージの正規表現の場合、適切な正規表現を使用できます。 たとえば、syslog が生成されているポート上で ADMIN_DOWN イベントを検出するには、.ADMIN_DOWN を使用します。 ADMIN_DOWN コマンドを入力すると、機能しません。
  • syslog のイベント指定では、regex は、EEM ポリシーのアクションとして生成される syslog メッセージと一致しません。
  • EEM イベントが CLI の show コマンドと一致し、画面に表示するために(および EEM ポリシーによってブロックされないために)show コマンドの出力が必要な場合は、EEM ポリシーの最初のアクションに対して、event-default コマンドを指定する必要があります。

Embedded Event Manager のデフォルト設定

表 1 デフォルトの EEM パラメータ
パラメータ デフォルト
システム ポリシー アクティブ

Embedded Event Manager の設定

環境変数の定義

環境変数の定義はオプションの手順ですが、複数のポリシーで繰り返し使用する共通の値を設定する場合に役立ちます。

手順
     コマンドまたはアクション目的
    ステップ 1configure terminal


    例:
    switch# configure terminal
    switch(config)#
     

    グローバル コンフィギュレーション モードを開始します。

     
    ステップ 2event manager environment variable-name variable-value


    例:
    switch(config) # event manager
    environment emailto "admin@anyplace.com"
     

    EEM 用の環境変数を作成します。

    variable-name は大文字と小文字を区別し、最大 29 文字の英数字を使用できます。

    variable-value は大文字と小文字が区別され、引用符で囲んだ最大 39 文字の英数字を使用できます。

     
    ステップ 3show event manager environment {variable-name | all}


    例:
    switch(config) # show event manager
    environment all
     
    (任意)

    設定した環境変数に関する情報を表示します。

     
    ステップ 4copy running-config startup-config


    例:
    switch(config)# copy running-config startup-config
    
     
    (任意)

    リブートおよびリスタート時に実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーして、変更を継続的に保存します。

     
    次の作業

    ユーザ ポリシーを設定します。

    CLI によるユーザ ポリシーの定義

    手順
       コマンドまたはアクション目的
      ステップ 1configure terminal


      例:
      switch# configure terminal
      switch(config)#
       

      グローバル コンフィギュレーション モードを開始します。

       
      ステップ 2 event manager applet applet-name


      例:
      switch(config)# event manager applet monitorShutdown
      switch(config-applet)# 
       

      EEM にアプレットを登録し、アプレット コンフィギュレーション モードを開始します。

      applet-name は大文字と小文字を区別し、最大 29 文字の英数字を使用できます。

       
      ステップ 3 description policy-description


      例:
      switch(config-applet)# description "Monitors interface shutdown."
       
      (任意)

      ポリシーの説明になるストリングを設定します。

      string には最大 80 文字の英数字を使用できます。 ストリングは引用符で囲みます。

       
      ステップ 4 event event-statement


      例:
      switch(config-applet)# event cli match "shutdown"
       

      ポリシーのイベント文を設定します。

       
      ステップ 5 tag tag {and | andnot | or} tag [and | andnot | or {tag}] {happens occurs in seconds}


      例:
      switch(config-applet)# tag one or two happens 1 in 10000
       
      (任意)

      ポリシー内の複数のイベントを相互に関連付けます。

      occurs 引数の範囲は 1 ~ 4294967295 です。

      seconds 引数の範囲は 0~4294967295 秒です。

       
      ステップ 6 action number[.number2] action-statement


      例:
      switch(config-applet)# action 1.0 cli show interface e 3/1
       

      ポリシーのアクション文を設定します。 アクション文が複数ある場合、このステップを繰り返します。

       
      ステップ 7 show event manager policy-state name [module module-id]


      例:
      switch(config-applet)# show event manager policy-state monitorShutdown
       
      (任意)

      設定したポリシーの状態に関する情報を表示します。

       
      ステップ 8copy running-config startup-config


      例:
      switch(config)# copy running-config startup-config
      
       
      (任意)

      リブートおよびリスタート時に実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーして、変更を継続的に保存します。

       
      次の作業

      イベント文およびアクション文を設定します。

      イベント文の設定

      イベント文を設定するには、EEM コンフィギュレーション モード(config-applet)で次のいずれかのコマンドを使用します。

      はじめる前に

      ユーザ ポリシーを定義します。

      手順
         コマンドまたはアクション目的
        ステップ 1 event cli [tag tag] match expression [count repeats | time seconds


        例:
        switch(config-applet) # event cli match "shutdown"
         

        正規表現と一致するコマンドが入力された場合に、イベントを発生させます。

        tag tag キーワードと引数のペアは、複数のイベントがポリシーに含まれている場合、この特定のイベントを識別します。

        repeats の範囲は 1 ~ 65000 です。

        time の範囲は 0 ~ 4294967295 です。0 は無制限を示します。

         
        ステップ 2 event counter [tag tag] name counter entry-val entry entry-op {eq | ge | gt | le | lt | ne} {exit-val exit exit-op {eq | ge | gt | le | lt | ne}


        例:
        switch(config-applet) # event counter name mycounter entry-val 20 gt
         

        カウンタが、開始演算子に基づいて開始のしきい値を超えた場合にイベントを発生させます。 イベントはただちにリセットされます。 任意で、カウンタが終了のしきい値を超えたあとでリセットされるように、イベントを設定できます。

        tag tag キーワードと引数のペアは、複数のイベントがポリシーに含まれている場合、この特定のイベントを識別します。

        counter name は大文字と小文字を区別し、最大 28 の英数字を使用できます。

        entry および exit の値の範囲は 0 ~ 2147483647 です。

         
        ステップ 3 event fanabsent [fan number] time seconds


        例:
        switch(config-applet) # event fanabsent time 300
         

        秒数で設定された時間を超えて、ファンがデバイスから取り外されている場合に、イベントを発生させます。

        number の範囲はモジュールに依存します。

        seconds の範囲は 10 ~ 64000 です。

         
        ステップ 4 event fanbad [fan number] time seconds


        例:
        switch(config-applet) # event fanbad time 3000
         

        秒数で設定された時間を超えて、ファンが故障状態の場合に、イベントを発生させます。

        number の範囲はモジュールに依存します。

        seconds の範囲は 10 ~ 64000 です。

         
        ステップ 5 event memory {critical | minor | severe}


        例:
        switch(config-applet) # event memory critical
         

        メモリのしきい値を超えた場合にイベントを発生させます。

         
        ステップ 6 event policy-default count repeats [time seconds]


        例:
        switch(config-applet) # event policy-default count 3
         

        システム ポリシーで設定されているイベントを使用します。 このオプションは、ポリシーを上書きする場合に使用します。

        repeats の範囲は 1 ~ 65000 です。

        seconds の範囲は 0 ~ 4294967295 秒です。0 は無制限を示します。

         
        ステップ 7 event snmp [tag tag] oid oid get-type {exact | next} entry-op {eq | ge | gt | le | lt | ne} entry-val entry [exit-comb {and | or}]exit-op {eq | ge | gt | le | lt | ne} exit-val exit exit-time time polling-interval interval


        例:
        switch(config-applet) # event snmp oid 
        1.3.6.1.2.1.31.1.1.1.6 get-type next 
        entry-op lt 300 entry-val 0 exit-op eq 400 
        exit-time 30 polling-interval 300
         

        SNMP OID が、開始演算子に基づいて開始のしきい値を超えた場合にイベントを発生させます。 イベントはただちにリセットされます。または任意で、カウンタが終了のしきい値を超えたあとでリセットされるように、イベントを設定できます。 OID はドット付き 10 進表記です。

        tag tag キーワードと引数のペアは、複数のイベントがポリシーに含まれている場合、この特定のイベントを識別します。

        entry および exit の値の範囲は 0 ~ 18446744073709551615 です。

        time の範囲は 0 ~ 2147483647 秒です。

        interval の範囲は 0 ~ 2147483647 秒です。

         
        ステップ 8 event sysmgr memory [module module-num] major major-percent minor minor-percent clear clear-percent


        例:
        switch(config-applet) # event sysmgr memory minor 80
         

        指定したシステム マネージャのメモリのしきい値を超えた場合にイベントを発生させます。

        percent の範囲は 1 ~ 99 です。

         
        ステップ 9 event temperature [module slot] [sensor number] threshold {any | down | up}


        例:
        switch(config-applet) # event temperature module 2 threshold any
         

        温度センサーが設定されたしきい値を超えた場合に、イベントを発生させます。

        sensor の範囲は 1 ~ 18 です。

         
        ステップ 10 event track [tag tag] object-number state {any | down | up


        例:
        switch(config-applet) # event track 1 state down
         

        トラッキング対象オブジェクトが設定された状態になった場合に、イベントを発生させます。

        tag tag キーワードと引数のペアは、複数のイベントがポリシーに含まれている場合、この特定のイベントを識別します。

        指定できる object-number の範囲は 1 ~ 500 です。

         
        次の作業

        アクション文を設定します。

        すでにアクション文を設定した場合、または設定しないことを選択した場合は、次のオプション作業のいずれかを実行します。

        • VSH スクリプトを使用してポリシーを定義します。 その後、VSH スクリプト ポリシーを登録し、アクティブにします。
        • メモリのしきい値を設定します。
        • EEM パブリッシャとして syslog を設定します。
        • EEM 設定を確認します。

        アクション文の設定

        EEM のコンフィギュレーション モード(config-applet)で次のいずれかのコマンドを使用して、アクションを設定できます。


        (注)  


        発生したイベントでデフォルトのアクションを処理できるようにする場合は、デフォルトのアクションを許可する EEM ポリシーを設定する必要があります。

        たとえば、一致文でコマンドを照合する場合、EEM ポリシーに event-default アクション文を追加する必要があります。この文がないと、EEM ではコマンドを実行できません。 terminal event-manager bypass コマンドを使用すると、一致するすべての EEM ポリシーでコマンドを実行できます。


        はじめる前に

        ユーザ ポリシーを定義します。

        手順
           コマンドまたはアクション目的
          ステップ 1 action number[.number2] cli command1[command2.] [local]


          例:
          switch(config-applet) # action 1.0 cli "show interface e 3/1"
           

          設定済みコマンドを実行します。 任意で、イベントが発生したモジュール上でコマンドを実行できます。

          アクション ラベルのフォーマットは number1.number2 です。

          number には 1 ~ 16 桁の任意の番号を指定できます。

          number2 の範囲は 0 ~ 9 です。

           
          ステップ 2 action number[.number2] counter name counter value val op {dec | inc | nop | set}


          例:
          switch(config-applet) # action 2.0 counter name mycounter value 20 op inc
           

          設定された値および操作でカウンタを変更します。

          アクション ラベルのフォーマットは number1.number2 です。

          number には 1 ~ 16 桁の任意の番号を指定できます。

          number2 の範囲は 0 ~ 9 です。

          counter は大文字と小文字を区別し、最大 28 文字の英数字を使用できます。

          val には 0 ~ 2147483647 の整数または置換パラメータを指定できます。

           
          ステップ 3 action number[.number2] event-default


          例:
          switch(config-applet) # action 1.0 event-default
           

          関連付けられたイベントのデフォルト アクションを実行します。

          アクション ラベルのフォーマットは number1.number2 です。

          number には 1 ~ 16 桁の任意の番号を指定できます。

          number2 の範囲は 0 ~ 9 です。

           
          ステップ 4 action number[.number2] policy-default


          例:
          switch(config-applet) # action 1.0 policy-default
           

          上書きしているポリシーのデフォルト アクションを実行します。

          アクション ラベルのフォーマットは number1.number2 です。

          number には 1 ~ 16 桁の任意の番号を指定できます。

          number2 の範囲は 0 ~ 9 です。

           
          ステップ 5 action number[.number2] reload [module slot [- slot]]


          例:
          switch(config-applet) # action 1.0 reload module 3-5
           

          システム全体に 1 つ以上のモジュールをリロードします。

          アクション ラベルのフォーマットは number1.number2 です。

          number には 1 ~ 16 桁の任意の番号を指定できます。

          number2 の範囲は 0 ~ 9 です。

           
          ステップ 6 action number[.number2] snmp-trap [intdata1 integer-data1] [intdata2 integer-data2] [strdata string-data]


          例:
          switch(config-applet) # action 1.0 snmp-trap strdata "temperature problem"
           

          設定されたデータを使用して SNMP トラップを送信します。 アクション ラベルのフォーマットは number1.number2 です。

          number には 1 ~ 16 桁の任意の番号を指定できます。

          number2 の範囲は 0 ~ 9 です。

          data 要素には 80 桁までの任意の数を指定できます。

          string には最大 80 文字の英数字を使用できます。

           
          ステップ 7 action number[.number2] syslog [priority prio-val] msg error-message


          例:
          switch(config-applet) # action 1.0 syslog priority notifications msg "cpu high"
           

          設定されたプライオリティで、カスタマイズした syslog メッセージを送信します。

          アクション ラベルのフォーマットは number1.number2 です。

          number には 1 ~ 16 桁の任意の番号を指定できます。

          number2 の範囲は 0 ~ 9 です。

          error-message には最大 80 文字の英数字を引用符で囲んで使用できます。

           
          次の作業

          イベント文を設定します。

          すでにイベント文を設定した場合、または設定しないことを選択した場合は、次のオプション作業のいずれかを実行します。

          • VSH スクリプトを使用してポリシーを定義します。 その後、VSH スクリプト ポリシーを登録し、アクティブにします。
          • メモリのしきい値を設定します。
          • EEM パブリッシャとして syslog を設定します。
          • EEM 設定を確認します。

          VSH スクリプトによるポリシーの定義

          これはオプションのタスクです。 VSH スクリプトを使用して EEM ポリシーを記述する場合は、次の手順を実行します。

          手順
            ステップ 1   テキスト エディタで、ポリシーを定義するコマンド リストを指定します。
            ステップ 2   テキスト ファイルに名前をつけて保存します。
            ステップ 3   次のシステム ディレクトリにファイルをコピーします。bootflash://eem/user_script_policies

            次の作業

            VSH スクリプト ポリシーを登録してアクティブにします。

            VSH スクリプト ポリシーの登録およびアクティブ化

            これはオプションのタスクです。 VSH スクリプトを使用して EEM ポリシーを記述する場合は、次の手順を実行します。

            はじめる前に

            ポリシーを VSH スクリプトを使用して定義し、システム ディレクトリにファイルをコピーします。

            手順
               コマンドまたはアクション目的
              ステップ 1configure terminal


              例:
              switch# configure terminal
              switch(config)#
               

              グローバル コンフィギュレーション モードを開始します。

               
              ステップ 2event manager policy policy-script


              例:
              switch(config)# event manager policy moduleScript
               

              EEM スクリプト ポリシーを登録してアクティブにします。

              policy-script は大文字と小文字を区別し、最大 29 文字の英数字を使用できます。

               
              ステップ 3event manager policy internal name


              例:
              switch(config)# event manager policy internal moduleScript
               
              (任意)

              EEM スクリプト ポリシーを登録してアクティブにします。

              policy-script は大文字と小文字を区別し、最大 29 の英数字を使用できます。

               
              ステップ 4copy running-config startup-config


              例:
              switch(config)# copy running-config startup-config
              
               
              (任意)

              リブートおよびリスタート時に実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーして、変更を継続的に保存します。

               
              次の作業

              システム要件に応じて、次のいずれかを実行します。

              • メモリのしきい値を設定します。
              • EEM パブリッシャとして syslog を設定します。
              • EEM 設定を確認します。

              システム ポリシーの上書き

              手順
                 コマンドまたはアクション目的
                ステップ 1configure terminal


                例:
                switch# configure terminal
                switch(config)#
                 

                グローバル コンフィギュレーション モードを開始します。

                 
                ステップ 2show event manager policy-state system-policy


                例:
                switch(config-applet)# show event
                manager policy-state __ethpm_link_flap
                Policy __ethpm_link_flap
                   Cfg count : 5
                   Cfg time interval : 10.000000
                (seconds)
                   Hash default, Count 0
                 
                (任意)

                上書きするシステム ポリシーの情報をしきい値を含めて表示します。 システム ポリシー名を突き止めるには、show event manager system-policy コマンドを使用します。

                 
                ステップ 3event manager applet applet-name override system-policy


                例:
                switch(config-applet)# event manager applet
                ethport override __ethpm_link_flap
                switch(config-applet)#
                 

                システム ポリシーを上書きし、アプレット コンフィギュレーション モードを開始します。

                applet-name は大文字と小文字を区別し、最大 80 文字の英数字を使用できます。

                system-policy は、システム ポリシーの 1 つにする必要があります。

                 
                ステップ 4description policy-description


                例:
                switch(config-applet)# description
                "Overrides link flap policy"
                 

                ポリシーの説明になるストリングを設定します。

                policy-description は大文字と小文字を区別し、最大 80 文字の英数字を使用できますが、引用符で囲む必要があります。

                 
                ステップ 5event event-statement


                例:
                switch(config-applet)# event
                policy-default count 2 time 1000
                 

                ポリシーのイベント文を設定します。

                 
                ステップ 6section number action-statement


                例:
                switch(config-applet)# action 1.0 syslog
                priority warnings msg "Link is
                flapping."
                 

                ポリシーのアクション文を設定します。 複数のアクション文では、この手順を繰り返します。

                 
                ステップ 7show event manager policy-state name


                例:
                switch(config-applet)# show event
                manager policy-state ethport
                 
                (任意)

                設定したポリシーに関する情報を表示します。

                 
                ステップ 8copy running-config startup-config


                例:
                switch(config)# copy running-config startup-config
                
                 
                (任意)

                リブートおよびリスタート時に実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーして、変更を継続的に保存します。

                 

                メモリのしきい値の設定

                メモリのしきい値は、イベントをトリガーし、メモリを割り当てることができない場合にオペレーティング システムがプロセスを停止するかどうかを設定するために使用されます。

                手順
                   コマンドまたはアクション目的
                  ステップ 1configure terminal


                  例:
                  switch# configure terminal
                  switch(config)#
                   

                  グローバル コンフィギュレーション モードを開始します。

                   
                  ステップ 2system memory-thresholds minor minor severe severe critical critical


                  例:
                  switch(config)# system memory-thresholds minor 60 severe 70 critical 80
                   

                  EEM メモリ イベントを生成するシステム メモリしきい値を設定します。

                  デフォルト値は次のとおりです。

                  • minor:85
                  • severe:90
                  • critical:95

                  これらのメモリのしきい値を超えた場合、システムは次の syslog を生成します。

                  • 2009 May 7 17:06:30 switch %$ VDC-1 %$ %PLATFORM-2-MEMORY_ALERT: Memory Status Alert : MINOR
                  • 2009 May 7 17:06:30 switch %$ VDC-1 %$ %PLATFORM-2-MEMORY_ALERT: Memory Status Alert : SEVERE
                  • 2009 May 7 17:06:30 switch %$ VDC-1 %$ %PLATFORM-2-MEMORY_ALERT: Memory Status Alert : CRITICAL
                  • 2009 May 7 17:06:35 switch %$ VDC-1 %$ %PLATFORM-2-MEMORY_ALERT: Memory Status Alert : MINOR ALERT RECOVERED
                  • 2009 May 7 17:06:35 switch %$ VDC-1 %$ %PLATFORM-2-MEMORY_ALERT: Memory Status Alert : SEVERE ALERT RECOVERED
                  • 2009 May 7 17:06:35 switch %$ VDC-1 %$ %PLATFORM-2-MEMORY_ALERT: Memory Status Alert : CRITICAL ALERT RECOVERED
                   
                  ステップ 3system memory-thresholds threshold critical no-process-kill


                  例:
                  switch(config)# system memory-thresholds threshold critical no-process-kill
                   
                  (任意)

                  メモリを割り当てることができない場合にプロセスを停止しないようにシステムを設定します。

                  デフォルト値では、最もメモリを消費するプロセスから終了できます。

                   
                  ステップ 4show running-config | include "system memory"


                  例:
                  switch(config)# show running-config | include "system memory"
                   
                  (任意)

                  システム メモリ設定に関する情報を表示します。

                   
                  ステップ 5copy running-config startup-config


                  例:
                  switch(config)# copy running-config startup-config
                  
                   
                  (任意)

                  リブートおよびリスタート時に実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーして、変更を継続的に保存します。

                   
                  次の作業

                  システム要件に応じて、次のいずれかを実行します。

                  • EEM パブリッシャとして syslog を設定します。
                  • EEM 設定を確認します。

                  EEM パブリッシャとしての syslog の設定

                  EEM パブリッシャとして syslog を設定すると、スイッチから syslog メッセージをモニタできます。


                  (注)  


                  syslog メッセージをモニタする検索文字列の最大数は 10 です。


                  はじめる前に
                  • EEM が syslog による登録で利用できることを確認します。
                  • syslog デーモンが設定され、実行されていることを確認します。
                  手順
                     コマンドまたはアクション目的
                    ステップ 1configure terminal


                    例:
                    switch# configure terminal
                    switch(config)#
                     

                    グローバル コンフィギュレーション モードを開始します。

                     
                    ステップ 2event manager applet applet-name


                    例:
                    switch(config)# event manager applet abc
                    switch (config-appliet)#
                     

                    EEM にアプレットを登録し、アプレット コンフィギュレーション モードを開始します。

                     
                    ステップ 3event syslog [tag tag] {occurs number | period seconds | pattern msg-text | priority priority}


                    例:
                    switch(config-applet)# event syslog occurs 10
                    
                     

                    EEM にアプレットを登録し、アプレット コンフィギュレーション モードを開始します。

                     
                    ステップ 4copy running-config startup-config


                    例:
                    switch(config)# copy running-config startup-config
                    
                     
                    (任意)

                    リブートおよびリスタート時に実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーして、変更を継続的に保存します。

                     
                    次の作業

                    EEM 設定を確認します。

                    Embedded Event Manager の設定確認

                    設定を確認するには、次のいずれかのコマンドを使用します。

                    コマンド 目的

                    show event manager environment [variable-name | all]

                    イベント マネージャの環境変数に関する情報を表示します。

                    show event manager event-types [event | all | module slot]

                    イベント マネージャのイベント タイプに関する情報を表示します。

                    show event manager history events [detail] [maximum num-events] [severity {catastrophic | minor | moderate | severe}]

                    すべてのポリシーについて、イベント履歴を表示します。

                    show event manager policy internal [policy-name] [inactive]

                    設定したポリシーに関する情報を表示します。

                    show event manager policy-state policy-name

                    しきい値を含め、ポリシーの状態に関する情報を表示します。

                    show event manager script system [policy-name | all]

                    スクリプト ポリシーに関する情報を表示します。

                    show event manager system-policy [all]

                    定義済みシステム ポリシーに関する情報を表示します。

                    show running-config eem

                    EEM の実行コンフィギュレーションに関する情報を表示します。

                    show startup-config eem

                    EEM のスタートアップ コンフィギュレーションに関する情報を表示します。

                    Embedded Event Manager の設定例

                    次に、モジュール 3 の中断のないアップグレードの障害のしきい値だけを変更することによって、__lcm_module_failure システム ポリシーを上書きする例を示します。 また、syslog メッセージも送信します。 その他のすべての場合、システム ポリシー __lcm_module_failure の設定値が適用されます。

                    event manager applet example2 override __lcm_module_failure
                    event module-failure type hitless-upgrade-failure module 3 count 2
                       action 1 syslog priority errors msg module 3 "upgrade is not a hitless upgrade!"
                       action 2 policy-default

                    次に、__ethpm_link_flap システム ポリシーを上書きし、インターフェイスをシャット ダウンする例を示します。

                    event manager applet ethport override __ethpm_link_flap
                       event policy-default count 2 time 1000
                       action 1 cli conf t
                       action 2 cli int et1/1
                       action 3 cli no shut

                    次に、ユーザがデバイスでコンフィギュレーション モードを開始すると、コマンドを実行できるが、SNMP 通知をトリガーする EEM ポリシーを作成する例を示します。

                    event manager applet TEST
                       event cli match "conf t"
                       action 1.0 snmp-trap strdata "Configuration change"
                       action 2.0 event-default

                    (注)  


                    EEM ポリシーに event-default アクション文を追加する必要があります。この文がないと、EEM ではコマンドを実行できません。


                    次に、EEM ポリシーの複数イベントを関連付け、イベント トリガーの組み合わせに基づいてポリシーを実行する例を示します。 この例では、EEM ポリシーは、指定された syslog パターンのいずれかが 120 秒以内に発生したときにトリガーされます。

                    event manager applet eem-correlate
                       event syslog tag one pattern "copy bootflash:.* running-config.*"
                       event syslog tag two pattern "copy run start"
                       event syslog tag three pattern "hello" 
                       tag one or two or three happens 1 in 120
                       action 1.0 reload module 1

                    その他の参考資料

                    関連資料

                    関連項目 マニュアル タイトル

                    EEM コマンド

                    『Cisco Nexus 3000 Series NX-OS System Management Command Reference』

                    標準

                    この機能では、新規の標準がサポートされることも、一部変更された標準がサポートされることもありません。また、既存の標準に対するサポートが変更されることもありません。

                    EEM 機能の履歴

                    表 2 EEM 機能の履歴
                    機能名 リリース 機能情報
                    Embedded Event Manager(EEM) 5.0(3)U3(1) 機能が追加されました。