特定のイベントを監視するためのルールを設定できます。 ルールを使用すると、インフラストラクチャ全体で生成される多数のイベントを簡単に監視できます。
特定の条件でルールを構成し、そのルールにアクションを割り当てることで、一連のイベントをフィルタリングできます。 生成されたイベントがルール内のフィルター条件を満たすと、ルールに関連付けられたアクションが実行されます。 フィルターを作成できる条件は、重大度、Citrix Application Delivery Controller (NetScaler) インスタンス、カテゴリ、障害オブジェクト、構成コマンド、およびメッセージです。
イベントには次のアクションを割り当てることができます。
電子メールの送信アクション: フィルター条件に一致するイベントの電子メールを送信します。
トラップ送信アクション: SNMPトラップを外部のトラップ送信先に送信または転送する
コマンドアクションの実行: 受信イベントが構成されたルールを満たした場合にコマンドを実行します。
ジョブアクション実行: 指定したフィルター条件に一致するイベントに対してジョブを実行します。
抑制アクション: 特定の期間、イベントのドロップを抑制します。
Slack 通知を送信: フィルター条件に一致するイベントについて、構成された Slack チャネルに通知を送信します。
PagerDuty 通知を送信します: フィルター条件に一致するイベントの PagerDuty 設定に基づいてイベント通知を送信します。
ServiceNow 通知を送信します: フィルター条件に一致するイベントの ServiceNow インシデントを自動生成します。
詳細については、 イベント ルール アクションの追加を参照してください。
イベントがクリアされるまで、指定した間隔で通知を再送信することもできます。 また、特定の件名、ユーザー メッセージ、添付ファイルを使用して電子メールをカスタマイズすることもできます。
たとえば、管理者は、特定の NetScaler インスタンスの「CPU 使用率が高い」イベントが NetScaler インスタンスの停止につながる可能性がある場合、そのイベントを監視することができます。 あなたはできる:
インスタンスを監視するルールを作成し、「CPU 使用率が高い」カテゴリのイベントが発生したときに電子メール通知を送信するアクションを指定します。
イベントが生成されるたびに通知されないように、午前 11 時から午後 11 時までの間など、特定の時間にルールが実行されるようにスケジュールを設定します。
イベント ルールの構成には次のタスクが含まれます。
インフラストラクチャ >イベント > ルールに移動し、 追加をクリックします。 ルールを有効にする場合は、[ ルールを有効にする ] チェックボックスをオンにします。
イベント期間 オプションを設定して、NetScaler ADM がイベント ルールを更新するまでの時間間隔 (秒単位) を指定できます。
注記:
イベント経過時間の最小値は 60 秒です。 イベント期間 フィールドを空白のままにしておくと、イベントが発生した直後にイベント ルールが適用されます。
上記の例に基づくと、NetScaler インスタンスで「CPU 使用率が高い」イベントが 60 秒以上発生するたびに電子メールで通知を受け取ることができます。 イベントの有効期間を 60 秒に設定すると、NetScaler インスタンスで 60 秒以上「CPU 使用率が高い」イベントが発生するたびに、イベントの詳細を含む電子メール通知が届きます。
また、イベント ルールを インスタンス ファミリー でフィルターして、NetScaler ADM がイベントを受信する NetScaler インスタンスを追跡することもできます。
アスタリスク (*) パターン マッチング以外の正規表現を含める場合は、[ 正規表現マッチングによる高度なフィルターを有効にする] を選択します。
デフォルトの重大度設定を使用するイベント ルールを作成できます。 重大度は、イベント ルールを追加するイベントの現在の重大度を指定します。
重大度レベルとして、Critical、Major、Minor、Warning、Clear、Information を定義できます。
注記
一般的なイベントと高度な特定のイベントの両方に対して重大度を設定できます。 NetScaler ADM で管理される NetScaler インスタンスのイベント重大度を変更するには、[ インフラストラクチャ >イベント > イベント設定] に移動します。 イベントの重大度を構成する カテゴリ を選択し、 重大度の構成をクリックします。 新しい重大度レベルを割り当てて、[ OK] をクリックします。
NetScaler インスタンスによって生成されるイベントのカテゴリを指定できます。 すべてのカテゴリは NetScaler インスタンス上に作成されます。 これらのカテゴリは、イベント ルールを定義するために使用できる NetScaler ADM にマッピングされます。 検討するカテゴリを選択し、それを 使用可能 テーブルから 構成済み テーブルに移動します。
上記の例では、表示されたテーブルからイベント カテゴリとして「cpuUsageHigh」を選択する必要があります。
イベント ルールを定義する NetScaler インスタンスの IP アドレスを選択します。 インスタンス セクションで、 インスタンスの選択をクリックします。 インスタンスの選択 ページでインスタンスを選択し、 選択をクリックします。
提供されたリストから障害オブジェクトを選択するか、イベントが生成された障害オブジェクトを追加することができます。 正規表現を指定して失敗オブジェクトを追加することもできます。 指定された正規表現に応じて、失敗したオブジェクトが自動的にリストに追加されます。 失敗オブジェクトは、イベントが生成されたエンティティ インスタンスまたはカウンターです。
重要
正規表現を使用して失敗オブジェクトを一覧表示するには、 ステップ 1で 正規表現一致による高度なフィルターを有効にする を選択します。
失敗オブジェクトは、イベントが処理される方法に影響し、通知された問題が正確に反映されることを保証します。 このフィルターを使用すると、障害オブジェクトの問題を迅速に追跡し、問題の原因を特定できます。 たとえば、ユーザーにログインの問題がある場合、ここでの失敗オブジェクトはユーザー名またはパスワード ( nsroot
など) になります。
このリストには、すべてのしきい値関連イベントのカウンタ名、すべてのエンティティ関連イベントのエンティティ名、証明書関連イベントの証明書名などが含まれます。
イベント ルールをさらに次の基準でフィルターできます。
構成コマンド - 完全な構成コマンドを指定するか、正規表現を指定してイベントをフィルタリングできます。
イベント ルールは、コマンドの認証ステータスや実行ステータスによってさらにフィルターできます。 たとえば、 NetscalerConfigChange イベント
の場合、 [.]*bind system global policy_name[.]*
と入力します。
メッセージ - 完全なメッセージの説明を指定するか、正規表現を指定してイベントをフィルタリングできます。
たとえば、 NetscalerConfigChange
イベントの場合、 [.]*ns_client_ipaddress :10.122.132.142[.]* または ns_client_ipaddress :^([.]*10.122.132.142[.]*)
と入力します。
イベント ルール アクションを追加して、イベントに通知アクションを割り当てることができます。 これらの通知は、イベントが上記で設定した定義済みのフィルター基準を満たした場合に送信または実行されます。 次のイベント アクションを追加できます。
メールを送信するアクション
トラップアクションを送信
コマンドアクションの実行
ジョブアクションの実行
抑制アクション
Slack通知を送信する
PagerDuty通知を送信する
ServiceNow通知を送信する
「電子メールの送信アクション」イベント アクション タイプを選択すると、イベントが定義済みのフィルター条件を満たすときに電子メールがトリガーされます。 メール サーバーまたはメール プロファイルの詳細を指定して電子メール配布リストを作成するか、以前に作成した電子メール配布リストを選択する必要があります。
NetScaler ADM には多数の仮想サーバーが設定されているため、毎日多数の電子メールを受信する可能性があります。 電子メールには、イベントの重大度、イベントのカテゴリ、および障害オブジェクトに関する情報を提供するデフォルトの件名が含まれます。 しかし、件名には、これらのイベントの発生元である仮想サーバーの名前に関する情報は含まれません。 影響を受けるエンティティの名前、障害オブジェクトの名前などの追加情報を含めるオプションが追加されました。
カスタマイズされた件名とユーザー メッセージを追加したり、受信イベントが構成されたルールに一致したときに電子メールに添付ファイルをアップロードしたりすることもできます。
イベント通知の電子メールを送信するときに、構成された設定をテストするためにテスト電子メールを送信することが必要な場合があります。 「テスト」ボタンを使用すると、電子メール サーバー、関連する分散リスト、およびその他の設定を構成した後、テスト メールを送信できるようになりました。 この機能により、設定が正常に機能していることが保証されます。
また、 [イベントがクリアされるまで電子メール通知を繰り返す ] チェック ボックスをオンにして、選択した条件を満たすイベント ルールについて電子メール通知を繰り返し送信することにより、すべての重大なイベントが対処され、重要な電子メール通知が見逃されないようにすることもできます。 たとえば、ディスク障害に関連するインスタンスのイベント ルールを作成し、問題が解決されるまで通知を受け取りたい場合は、それらのイベントに関する電子メール通知を繰り返し受信することを選択できます。
トラップアクションの送信 イベントアクションタイプを選択すると、SNMP トラップが外部のトラップ宛先に送信または転送されます。 トラップ配布リスト (またはトラップの宛先とトラップ プロファイルの詳細) を定義すると、イベントが定義済みのフィルター基準を満たしたときに、トラップ メッセージが特定のトラップ リスナーに送信されます。
コマンド アクションの実行 イベント アクションを選択すると、特定のフィルター条件に一致するイベントに対して NetScaler ADM で実行できるコマンドまたはスクリプトを作成できます。
コマンド アクション実行 スクリプトに次のパラメータを設定することもできます。
パラメータ | 説明 |
$source | このパラメータは、受信したイベントの送信元 IP アドレスに対応します。 |
$category | このパラメータは、フィルタのカテゴリで定義されたトラップのタイプに対応します。 |
$entity | このパラメータは、イベントが生成されたエンティティ インスタンスまたはカウンターに対応します。 これには、すべてのしきい値関連イベントのカウンター名、すべてのエンティティ関連イベントのエンティティ名、およびすべての証明書関連イベントの証明書名を含めることができます。 |
$severity | このパラメータはイベントの重大度に対応します。 |
$failureobj | 失敗オブジェクトは、イベントが処理される方法に影響し、失敗オブジェクトが通知された問題を正確に反映することを保証します。 これを使用すると、生のイベントを単に報告するのではなく、問題を迅速に追跡し、障害の原因を特定することができます。 |
注記
コマンド実行中に、これらのパラメータは実際の値に置き換えられます。
たとえば、負荷分散仮想サーバーのステータスが ダウンの場合にコマンド実行アクションを設定するとします。 管理者としては、別の仮想サーバーを追加することで迅速な回避策を提供することを検討する必要があるかもしれません。 NetScaler ADM では、次のことが可能です。
スクリプト (.sh) ファイルを作成します。
以下はサンプル スクリプト (.sh) ファイルです。
#!/bin/sh
source=$1
failureobj=$2
payload='{"params":{"warning":"YES"},"lbvserver":{"name":"'$failureobj'","servicetype":"HTTP","ipv46":"xxxx","port":"80","td":"","m":"IP","state":"ENABLED","rhistate":"PASSIVE","appflowlog":"ENABLED","
bypassaaaa":"NO","retainconnectionsoncluster":"NO","comment":""}}'
url="http://$source/nitro/v1/config/lbvserver"
curl --insecure -basic -u nsroot:nsroot -H "コンテンツタイプ: application/json" -X POST -d $payload $url
<!--NeedCopy-->
.sh ファイルを NetScaler エージェントの任意の永続的な場所に保存します。 たとえば、 /var
です。
ルールの条件が満たされたときに実行される .sh ファイルの場所を NetScaler ADM で指定します。
新しい仮想サーバーを作成するための コマンド実行 アクションを設定するには:
ルールを定義する
イベントの重大度を選択してください
イベントカテゴリを選択してください entitydown
仮想サーバーが設定されているインスタンスを選択します
仮想サーバーの障害オブジェクトを選択または作成します
イベント ルール アクションの下で、 アクションの追加 をクリックし、 アクション タイプ リストから コマンド実行アクション を選択します。
コマンド実行リストの下で、 追加をクリックします。
コマンド配布リストの作成ページが表示されます。
プロファイル名に任意の名前を指定します
コマンド実行で、スクリプトを実行する必要がある NetScaler エージェントの場所を指定します。 たとえば、 /sh/var/demo.sh $source $failureobj
です。
出力を追加 と エラーを追加を選択します。
注記
コマンド スクリプトを実行したときに生成された出力とエラー (存在する場合) を NetScaler ADM サーバー ログ ファイルに保存する場合は、 出力の追加 および エラーの追加 オプションを有効にできます。 これらのオプションを有効にしないと、NetScaler ADM はコマンド スクリプトの実行中に生成されたすべての出力とエラーを破棄します。
作成をクリックします。
イベントアクションの追加 ページで、 OKをクリックします。
注記
コマンド スクリプトを実行したときに生成された出力とエラー (存在する場合) を NetScaler ADM サーバー ログ ファイルに保存する場合は、 出力の追加 および エラーの追加 オプションを有効にできます。 これらのオプションを有効にしないと、NetScaler ADM はコマンド スクリプトの実行中に生成されたすべての出力とエラーを破棄します。
実行
ジョブアクションを設定するには構成ジョブを含むプロファイルを作成すると、指定したフィルター条件に一致するイベントとアラームに対して、NetScaler および NetScaler SDX インスタンスの組み込みジョブまたはカスタム ジョブとしてジョブが実行されます。
イベント ルール アクションの下で、 アクションの追加 をクリックし、 アクション タイプ ドロップダウン リストから ジョブ アクションの実行 を選択します。
イベントが定義したフィルター基準を満たしたときに実行するジョブを含むプロファイルを作成します。
ジョブを作成するときに、プロファイル名、インスタンスタイプ、構成テンプレート、およびジョブのコマンドが失敗した場合に実行するアクションを指定します。
選択したインスタンス タイプと構成テンプレートに基づいて変数の値を指定し、[ 完了 ] をクリックしてジョブを作成します。
抑制アクション イベント アクションを選択した場合、イベントが抑制またはドロップされる期間を分単位で設定できます。 イベントは最低 1 分間抑制できます。
NetScaler ADM GUI でプロファイル名と Webhook URL を指定して、必要な Slack チャネルを構成します。 イベント通知はこのチャネルに送信されます。 これらの通知を受信するために複数のSlackチャンネルを設定できます
NetScaler ADM で、インフラストラクチャ > イベント > ルールに移動し、追加をクリックしてルールを作成します。
ルールの作成ページで、重大度やカテゴリなどのルール パラメータを設定します。 監視する必要があるインスタンスと障害オブジェクトを選択します。
イベント ルール アクションの下で、アクションの追加をクリックします。 次に、[アクション タイプ ] リストから [Slack 通知の送信] を選択し、[ Slack プロファイル リスト] を選択します。
また、[ Slack プロファイル リスト ] フィールドの横にある [ 追加 ] をクリックして、Slack プロファイル リストを追加することもできます。
プロファイル リストを作成するには、次のパラメータを入力します。
プロフィール名。 NetScaler ADMで設定するプロファイルリストの名前を入力します
チャンネル名。 イベント通知を送信する Slack チャネルの名前を入力します。
Webhook URL。 先ほど入力したチャネルのWebhook URLを入力します。 受信 Webhook は、外部ソースから Slack にメッセージを投稿する簡単な方法です。 URL はチャンネル名に内部的にリンクされており、すべてのイベント通知はこの URL に送信され、指定された Slack チャンネルに投稿されます。 Webhook の例は次のとおりです: https://hooks.slack.com/services/T0******E/B9X55DUMQ/c4tewWAiGVTT51Fl6oEOVirK
[作成] をクリックし、[ [イベント アクションの追加] ウィンドウで [OK] をクリックします。
注記:
システム > 通知 > Slack プロファイルに移動して Slack プロファイルを追加することもできます。 追加 をクリックし、前のセクションで説明したようにプロファイルを作成します。
作成した Slack プロファイルのステータスを表示できます。
適切なフィルターと適切に定義されたイベント ルール アクションを使用して、イベント ルールが作成されました。
NetScaler ADM のオプションとして PagerDuty プロファイルを追加して、PagerDuty 構成に基づいてインシデント通知を監視できます。 PagerDuty を使用すると、電子メール、SMS、プッシュ通知、登録された番号への電話による通知を設定できます。
NetScaler ADM で PagerDuty プロファイルを追加する前に、PagerDuty で必要な構成が完了していることを確認してください。 詳細については、 PagerDuty のドキュメントを参照してください。
次の機能に関する通知を受け取るには、オプションの 1 つとして PagerDuty プロファイルを選択できます。
イベント – NetScaler インスタンスに対して生成されるイベントのリスト。
ライセンス – 現在アクティブなライセンス、期限が切れそうなライセンスなどのリスト。
SSL 証明書 – NetScaler インスタンスに追加される SSL 証明書のリスト。
ADM に PagerDuty プロファイルを追加するには:
管理者の資格情報を使用して NetScaler ADM にログオンします。
[設定] > [通知] > [PagerDuty プロファイル]に移動します。
新しいプロファイルを作成するには、[ 追加 ] をクリックします。
PagerDuty プロファイルの作成ページで、次の操作を行います。
任意のプロフィール名を入力してください。
統合キーを入力します。
統合キーは PagerDuty ポータルから取得できます。
作成をクリックします。
ユースケース:
次のようなシナリオを考えてみましょう。
PagerDuty プロファイルに通知を送信します。
通知を受信するために、PagerDuty で電話のオプションを設定しました。
NetScaler イベントに関する電話アラートを受け取りたい。
設定するには:
イベント > ルールに移動します
ルールの作成 ページで、ルールを作成するための他のすべてのパラメータを設定します。
ルールアクションの作成の下で、 アクションの追加をクリックします。
イベントアクションの追加 ページが表示されます。
アクションタイプで、 PagerDuty 通知の送信を選択します。
PagerDuty プロファイルを選択し、[ OK] をクリックします。
設定が完了すると、NetScaler インスタンスに新しいイベントが生成されると、電話がかかってくるようになります。 電話で以下のことを決められます:
イベントを認識する
解決済みとしてマークする
他のチームメンバーにエスカレーションする
NetScaler ADM GUI で ServiceNow プロファイルを選択すると、NetScaler ADM イベントの ServiceNow インシデントを自動生成できます。 イベント ルールを構成するには、NetScaler ADM で ServiceNow プロファイルを選択する必要があります。
ServiceNow インシデントを自動生成するイベント ルールを構成する前に、NetScaler ADM を ServiceNow インスタンスと統合します。 詳細については、「 ServiceNow 用の ITSM アダプターを構成する」を参照してください。
イベント ルールを構成するには、[ イベント > ルール] に移動します。
ルールの作成 ページで、ルールを作成するための他のすべてのパラメータを設定します。
ルールアクションの作成の下で、 アクションの追加をクリックします。
イベントアクションの追加 ページが表示されます。
アクション タイプで、 ServiceNow 通知の送信を選択します。
ServiceNow プロファイルで、リストから Citrix_Workspace_SN プロファイルを選択します。
OKをクリックします。