インシデント管理連携ツールにてインシデント連携機能を用いる
投稿日: / 更新日:
この記事は2年以上前に書かれたものです。情報が古い可能性があります。
こんにちは。
今回は、ServiceNowに対してインシデント管理連携ツールのインシデント連携機能を用いる方法についてご紹介いたします。
ServiceNowに対してインシデント連携機能を用いると
Hinemosが障害を検知した時にServiceNowのインシデントへ障害情報を登録する機能です。
■設定
① Pythonの設定
Python 2.7をご利用ください。
なお、「python」コマンドのバージョンによってPythonスクリプトの実行方法が異なります。
以下コマンドで「python」コマンドのバージョンを確認出来ます。
1 |
$ python -V |
本記事では、「『python』コマンドのバージョンがPython 2.7の場合」を前提に記載しています。
Pythonの設定に応じてPythonスクリプトの実行コマンドを読み替えてください。
・「python」コマンドのバージョンがPython 2.7の場合
1 |
$ python XXXXX.py ... |
・「python」コマンドのバージョンがPython 3.xの場合
1 |
$ python2 XXXXX.py ... |
② エンコーディング設定
本インシデント管理連携ツールを使用するために、
PythonのデフォルトエンコーディングをUTF-8にする必要があります。
変更するためには、Pythonのインストールディレクトリ内にあるsite-packagesフォルダ内に、
環境設定ファイルsitecustomize.pyを作成し、その上部に下記を追記してください。
1 2 |
import sys sys.setdefaultencoding('utf-8') |
なお、環境設定ファイルsitecustomize.pyの配置場所について、以下を参照してください。
/usr/lib64/python2.7/site-packages/sitecustomize.py
③ インシデント管理連携ツールの配置
HinemosマネージャにHinemosインシデント管理連携ツールを配置する必要があります。
1. Hinemosインシデント管理連携ツールの展開
Hinemosインシデント管理連携ツール(hinemos_itil_integration-6.x-yyyymmdd.zip)を
Hinemosマネージャサーバのインストール先のディレクトリに配置し、展開してください。
hinemos_itil_integration-6.x-yyyymmdd.zipの展開
2. Hinemosインシデント管理連携ツールの配置
展開後、[integration-servicenow]フォルダを任意のディレクトリに配置してください。
本記事では[integration-servicenow]フォルダを[integration]にリネームし、
以下のように配置していることを前提として説明します。
/opt/hinemos_itil/integration
④ 環境設定
以下のディレクトリにあるファイルを編集してください。
/opt/hinemos_itil/integration/conf/integration.cfg
今回は、Hinemos Ver.6.2、ServiceNowを用いているため、デフォルトで構いません。
⑤ コマンド通知設定
1. コマンド通知設定環境設定ファイル(init.ini)の編集
以下のディレクトリにあるファイルを編集してください。
/opt/hinemos_itil/integration/conf/init.ini
「 URL 」は、HinemosマネージャのIPアドレスを指定してください。
「 PATH 」コマンド通知設定で実行するissue.py/issue_incident.pyへのパスを設定します。
「 TITLE 」は、Hinemosコマンド通知設定の通知IDを設定できます。
設定内容を変更し、任意の通知IDを設定することも可能です。
「 USER 」は、コマンド通知設定の実行ユーザを設定します。
既に登録済みの通知IDを設定し、init.pyを実行するとエラーが表示され、登録されません。
2. コマンド通知設定ファイルの実行
以下のディレクトリにあるファイルを実行してください。
1 |
$ python /opt/hinemos_itil/integration/scripts/init.py |
Hinemosクライアントにログインし、監視設定パースペクティブの監視設定[通知]ビューに
以下のように、
コマンド通知「INCIDENT_NOTIFY_FOR_ITIL」が作成されていることを確認してください。
⑥ Hinemosクライアント上でコマンド通知設定を編集
1. コマンド通知「EVENT_NOTIFY_FOR_ITIL/INCIDENT_NOTIFY_FOR_ITIL」をダブルクリックし、
通知(コマンド)[作成・変更]ダイアログを表示してください。
2. 「コマンド通知」枠内、「コマンド」欄の「python」コマンドを、
Pythonの設定 に従い変更してください。
3. 「コマンド通知」枠内、「コマンド」欄のスクリプトパスを、
配置した場所に変更してください。
/opt/hinemos_itil/integration/scripts/issue_incident.py
⑦ インシデント連携設定(ServiceNow)
1. インシデント連携専用ユーザの作成
インシデント連携を行うためには以下の権限が付与されている必要があります。
• itil もしくは admin
インシデント連携専用ユーザを作成してください。
ナビゲーション → User Administration → Users → Newボタンをクリック
→ 情報を入力し、Submitボタンをクリック
作成したユーザを選択 → Roles → Editボタンをクリック
→ 上記権限を[>]で右側に移し、Saveボタンをクリック
⑧ インシデント連携設定(Hinemos)
1. 環境設定ファイル(env_incident.ini)を編集します
以下のディレクトリにあるファイルを編集してください。
/opt/hinemos_itil/integration/conf/env_incident.ini 「 SERVICENOW_URL 」はServiceNowインスタンスのURLを設定してください。
他設定はデフォルトで構いません。
2. 認証設定ファイル(auth.ini)を編集
以下のディレクトリにあるファイルを編集してください。
/opt/hinemos_itil/integration/conf/auth.ini
「 AUTH_ACCOUNT 」インシデント作成アカウントを設定してください。
「 AUTH_PASS 」パスワードを設定してください。
⑨ 監視設定の通知IDに作成したコマンド通知を設定
Hinemos監視設定パースペクティブの監視設定ビューでping監視を作成してください。
監視設定ビュー上で右クリック→作成
ping監視[数値]を選択し、通知IDに コマンド通知設定(Hinemos)で作成したコマンド通知を設定してください。
監視結果によりコマンド通知が実行され、ServiceNowにインシデントが作成されることを確認してください。
以上、簡単にではございますが、
インシデント管理連携ツールにてイベント連携機能を用いる方法についてのご紹介でした。