1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PagerDutyのSolution Consultantとして活動している中で、ServiceNowとの連携について、よくご質問をいただきます。

基本的に、PagerDutyが公開している ServiceNowインテグレーションガイド|PagerDuty で設定はできるのですが、私が最初に設定した際、「もう少しこの辺り詳しくスクリーンショットがあるといいな」と思った箇所があったので、ここにまとめてみました。

作業を行う上での留意点

  • ServiceNowのバージョンによって画面が異なる場合があります
  • 私個人で検証する際の設定手順です。詳細な設定内容についてはKBをご参照ください
  • ServiceNowとPagerDutyの管理者権限を持つアカウントがそれぞれ必要です
  • PagerDutyアプリは有償版のみインストール可能です

事前準備

以下の準備をまとめておこないます。

PagerDuty

PagerDuty側の作業です。

APIアクセスキーの取得

KBに記載がある通り、APIアクセスキーを取得します。
アクセスキーは一度しか表示されないので、コピーして大切に保管してください。

Integrations > API Access Keys から新規作成できます。

Screenshot 2024-12-16 at 17.52.37.png

Read Only にはチェックを入れないように。
Screenshot 2024-12-16 at 18.07.00.png

ServiceNow連携用ユーザーの準備

People > Users でServiceNow連携用のユーザーを作成する、もしくは既存のユーザーを利用するのであれば、ユーザーIDをコピーしておきます。

IDはURLの以下の部分です。

Screenshot 2024-12-16 at 18.11.16.png

Priorityの設定

もし設定が必要であれば、Account SettingsPriorityの設定を行います。既定のままでよければ特に変更は不要です。
Screenshot 2024-12-19 at 10.48.05.png

ServiceNow

ServiceNow側から準備を進めていきます。

テーブルで構成アクセスを許可

ServiceNow管理者は以下のServiceNowテーブルで構成アクセスを許可する必要があります。

ServiceNowのメニューから、System Definition > Tables
テーブル一覧を表示、Label で検索して該当のテーブルをさがします。

Screenshot 2024-12-12 at 17.07.38.png

Application Accessのタブを開いて、KBに指定されているアクセス権にチェックを入れたらUPDATEする。
Screenshot 2024-12-12 at 17.20.32.png

このような流れで、他のテーブルも同じように設定していきます。
(詳しくはこちらを確認)

  • sys_user
  • sys_user_group
  • sys_user_grmember
  • Sysauto_script

PagerDutyのアプリをインストール

ServiceNowのアプリストアから、PagerDutyを探してインストールしてください。(写真は v8.0.1)
Screenshot 2024-12-12 at 17.25.44.png

PagerDutyフィールドの追加

インストールが完了するとPagerDuty関連の設定が検索できるようになります。
KBでは任意の設定になっていますが、プロビジョニングされているIDを確認できるので表示しておくことはおすすめです。

User、Group、Incident、Business Service、Technical ServiceあたりはPagerDutyとの連携で使用するので、PagerDutyに関係する列を表示するといいと思います。

歯車マークから
Screenshot 2024-12-12 at 17.34.47.png

PagerDutyの列をいくつか選択して右側に移動させて保存。
Screenshot 2024-12-12 at 17.33.20.png

ServiceNowユーザーを準備

KBの手順Webhook認証のためのServiceNowユーザーアカウントの作成 に記載されていますが、Webhook認証のためにServiceNowでユーザーが必要です。もし適切なユーザーがいない場合は、新規作成しましょう。

UsersからNewで新規ユーザーを作成します。
Screenshot 2024-12-16 at 18.41.00.png

  • User IDを設定(Nameの部分も任意で埋める)
  • メールアドレスのドメインが設定できない場合は、Restrict emails by domain for user creation の手順を見てドメインを追加
  • PagerDuty のユーザーIDを使用
  • Password needs reset のチェックは外す
  • Activeにチェックをいれる

Screenshot 2024-12-16 at 18.17.02 copy.png

Set Password ボタンをクリックして、パスワードを生成したら、保存しておきます。

Screenshot 2024-12-16 at 18.28.30.png

ここで設定する User ID と Password は、PagerDuty Settings で必要な情報です。連携後に誤って変更すると、PagerDuty と ServiceNow の連携に失敗する可能性があるので注意してください。

ユーザーのRoleも設定をお忘れなく。

Screenshot 2024-12-12 at 17.52.19.png

追加するロール

  • itil
  • x_pd_integration.admin

Screenshot 2024-12-12 at 17.51.59.png

これで事前準備は終了です。

PagerDutyとの連携を設定

それでは、ServiceNow側で、PagerDutyの連携を設定していきます。

PagerDuty Settings

PagerDuty Settingsを検索することで設定画面に移動できます。
どう設定するかは 3.2:ServiceNowでAPIとWebhook接続を構成するを参照してください。

こちらの図では基本的に全部にチェックをいれていますが、どう設定すべきかは、インテグレーション 設定の管理にも詳細が記載されているので、あわせて確認してください。

Screenshot 2024-12-16 at 18.45.02.png

以下、PagerDuty の情報を入力します。事前に用意していたAPIアクセスキーを利用します。なお、Default Service IDやUser IDは、一度設定を保存すると入力できるようになります。
Screenshot 2024-12-18 at 14.24.20.png

こちらはPagerDutyと連携用に用意したServiceNowのユーザーとパスワード情報を入力します。
Screenshot 2024-12-18 at 14.24.28.png

こちらの設定はここで保存します。

Integration Health Check

Integration Health Checkをメニューから検索してクリックをすると、Health Checkが走ります。ここで、すべてに [✔] が入っていれば問題ありません。

Screenshot 2024-12-19 at 9.38.51.png

正しく構成できていないと、以下のように [X] が表示されるので、その場合は PagerDuty Settings に戻り、設定を見直してください。(以下の例は、ServiceNow アカウントの設定が間違っているケース)

Screenshot 2024-12-19 at 9.45.33.png

Priorityの設定

ServiceNowでRefresh PagerDuty Prioritiesを検索して、Priorityをインポートします。
Screenshot 2024-12-19 at 10.50.25.png

そして、ServiceNow側の Impact と Urgencyを設定します。
Screenshot 2024-12-19 at 10.51.42.png

Assignment Group のプロビジョニング

ServiceNow で新規に Groups を作成して、PagerDutyのTeamとプロビジョニングします。

プロビジョニングする際に、NameとManagerの情報が必要なので、PagerDutyと連携しているユーザーをアサインしておきました。

Screenshot 2024-12-19 at 15.24.23.png

プロビジョニングする前に、Groupにメンバーが必要なので、ここでもPagerDuty連携用のユーザーを追加しています。

Screenshot 2024-12-19 at 15.23.32.png

Provision Group into PagerDuty をクリックして、プロビジョニングを行います。

Screenshot 2024-12-19 at 15.24.30.png

以下のように、PagerDuty のTeamとEscalation Policyが自動的に紐付けされました。

Screenshot 2024-12-19 at 15.26.17.png

Configuration Item のプロビジョニング

ServiceNow の Configuration Item (CI) と PagerDuty の Service を紐付けます。
今回、CIは Technical Service を使います。Technical Serviceを検索して、Newから新規にServiceを作成します。必要な情報を入力して、Submitします。

Screenshot 2024-12-19 at 10.57.07.png

そして、Serviceの画面下のProvision CI into PagerDutyをクリックします。

Screenshot 2024-12-19 at 10.57.32.png

これで、ServiceNowのCIが、PagerDutyのサービスとして作成され、Webhookによって連携されるようになりました。PagerDuty側のIDが追加されていることがわかると思います。
Screenshot 2024-12-19 at 10.57.52.png

このリンクボタンをクリックするとPagerDuty側の設定を見ることができます。

Webhookだとこんな感じです。

Screenshot 2024-12-19 at 10.58.38.png

連携テスト

最後に連携テストを行います。

ServiceNow のPagerDuty Incidentsから新規にインシデントを作成します。
Configuration Item, Assignment Group, Impact, Urgency を含めて、必要なフィールドを埋めて、Submit します。

Screenshot 2024-12-19 at 15.43.26.png

PagerDuty側でインシデントが作成されたことを確認します。

Screenshot 2024-12-19 at 15.45.15.png

必要に応じて、PagerDuty側からインシデントを作成してみる、作成後、インシデントの情報を更新してみるなどのテストを実施してください。

最後に

もう少しライトな内容にするつもりでしたが、記事作成に意外と時間がかかってしまいました。私が検証用でPagerDutyとServiceNowの連携を設定するときの手順としてまとめましたので、参考になれば嬉しいです。

もし次回があれば、CIの依存関係を構築して、その関係ごとプロビジョニングする手順もまとめたいと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?