ServiceNowとNutanixの連携 その2 アラート連携【ServiceNow Orlandバージョン対応】


本記事はNutanix Advent Calendar 2019 #4 12/12 分の記事です。そして前回記事の続きです。

本シリーズ(全5回)では

ServiceNow社の提供する開発者インスタンスを用いてシンプルなServiceNow-Nutanixの統合環境を作ることを目指します。

本記事(その2)では

前回ご紹介した3つのユースケースのうち1つ目、「ServiceNowのイベント、インシデントとNutanixのアラートの統合」について実装方法をご紹介します。

Prism Proの機能である、X-Playを用いてNutanixのアラート発報を契機にアラート情報をServiceNowに送信します。

前提条件

Nutanix

  1. Prism Central v5.11.1 以降
  2. Prism Pro ライセンス(X-Play使用のため)
  3. AOS/Prism Element 5.9 以降

ServiceNow

  1. Incident Management(com.snc.incident.mim)プラグイン
  2. Event Management(com.glideapp.itom.snac)プラグイン

手順

1. Prism Central側の準備

アラートや管理者のクリックを契機に定義されたアクションを自動実行出来るX-Play(Prism Proライセンスが必要)という機能を使用します。X-Playについて詳しくはこちらをご参照下さい。

手動での設定方法、スクリプトによる一括設定の2パターンがあります。

1a. 手動での設定方法

1a-1. Playbook設定

Prism Centralのダッシュボードから”プレイブック”に移動します。

"プレイブックの作成"ボタンを指定し、トリガとして”Alert”を選択します。"アラートポリシー"欄にServiceNowに送信したいアラートを選択し、”アクションの追加”を指定します。

定義されたアクションリストから”Send to ServiceNow”を選択します。

以下を記入し、”保存して閉じる”を指定します。
ServiceNow Instance Name: ServiceNowインスタンス名(https://[こちらの文字列].service-now.com/)
Username: admin
Password: ServiceNowインスタンスのadminパスワード

1b. スクリプトでの一括設定方法

1b-1. スクリプトのダウンロード

以下リンクから一括設定用のスクリプトをダウンロードします。解凍後、実行のパーミッションを付与します。
Mac
Windows

1b-2. スクリプトの実行

以下を実行します。
"pc_ip": Prism CentralのIPアドレス
"servicenow_instance_name": ServiceNowのインスタンス名

Mac
./playbook_automation -pc "pc_ip" -2 -d -n "servicenow_instance_name"

Windows
playbook_automation.exe -pc "pc_ip" -2 -d -n "servicenow_instance_name"

実行後、以下のプロンプトが出ますので、Prism CentralとServiceNowそれぞれのadminユーザとパスワードを記入して下さい。

Enter username for ServiceNOW Instance dev65516: admin
Enter password for admin: 
Enter username for Prism Central 10.42.24.39: admin
Enter password for admin: 

2. ServiceNow側の準備

2-1. ServiceNowプラグイン有効化

開発者インスタンス管理から"Action"の中の”Activate Plugin”を選択します。”Event Management”を探し、"Activate Plugin Only"の選択肢で有効化します。

2-2. イベントルールのアップロード

こちらからイベントルール定義をダウンロードします。

ナビゲーションペインから"取得済み更新セット"を検索し、"XMLから更新セットをインポート"を選択します。

上でダウンロードしたXMLファイルを選択し、アップロードします。

アップロードされた更新セットを選択し、”更新セットのプレビュー”を選択します。

プレビュー完了後、”更新セットのコミット”を選択します。

ナビゲーションペインから”イベントルール”を検索し、名前: *Nutanixで検索、イベントルールが確認出来れば完了です。

2-3. インシデントルール

ナビゲーションペインから”アラート管理”を検索します。

”Create Incident”の値を"false"から"true"に変更します。Nutanixアラートを元にServiceNowのインシデントが作成されます。

3. アラート転送の確認

アラート転送の確認をします。事前準備としてあるVMにおいてCPU使用率が90%を超えた際にアラートを発生させるアラートを下図のように作成しておきます。

また、このアラートをServiceNowに転送するプレイブックを1a. 手動での設定方法を参考に作成します。

対象のVMにおいてstressコマンドを用いてCPU使用率を上げてみます。Prism Central上では以下のようなアラートが確認出来ました。

この時Prism CentralではこのVMのCPU使用率アラートをServiceNowに送るプレイブックが定義されています。

ServiceNowインスタンスのナビゲーションペインで”すべてのアラート”を検索し確認すると、ServiceNow上でNutanixのアラートを取得しています。

ナビゲーションペインで”インシデント”を検索し、”インシデント管理”配下の”オープン”を指定します。ServiceNow上で作成されたアラートに基づくインシデントが自動で作成されていることが確認できます。

4. まとめ

ServiceNowとNutanixの連携 その2として「ServiceNowとNutanixのアラート連携」のユースケースの実装方法をご紹介しました。ServiceNowによるアラート管理・インシデント管理の一元化に対する要望にNutanixはPrism ProによるX-Playで応えます。

次回はServiceNowとNutanix Calmの連携によるIT運用のセルフサービス化のユースケースの実装方法の前半部分をご紹介します。

5. 参考

英語版の解説動画もあります