OpsRamp ServiceNowとの連携(インテグレーション)について 

本記事では、OpsRampとServiceNowの連携機能について説明します。

概要
---
OpsRampでは以下OpsRamp社公式ページに記載されているように様々なツールとの連携が可能です。
▼OpsRamp社公式ページ（日本語）
https://www.opsramp.com/the-opsramp-platform/integrations/?lang=ja

▼OpsRamp社公式ページ（英語）
https://www.opsramp.com/the-opsramp-platform/integrations/

本記事ではServiceNowとの連携、主にインシデント情報の連携方法と実際の連携内容について記載します。
※OpsRampに関する記事となりますのでServiceNow上の設定については記載しておりません
　ServiceNowの設定について確認されたい方は他の記事の閲覧を勧めます


ServiceNowとの連携
---
OpsRampとServiceNowとの連携までに以下の3ステップが必要になります。
1)OpsRamp上でのServiceNowのIntegration設定
2)Inbound(ServiceNow to OpsRamp)の設定
3)Outbound(OpsRamp to ServiceNow)の設定


1)OpsRamp上でのServiceNowのIntegration設定
①OpsRampにログインします
②メニューより[Setup]-[Integrations]-[Integrations]と移動します
③Integrationのカテゴリより[collaboration]を選択し[ServiceNow]をクリックします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/3319d10d-0305-ece4-43af-5b3753f973a5.png)

④SERVICENOW INTEGRATIONの画面にて[Install]をクリックします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/ccfd8057-e636-e9e0-439d-9f7a5d5b1f87.png)

⑤[Install]完了後、以下のように画面が遷移します
インストール自体はOpsRampにおけるパートナー、クライアント単位での実施になります
※パートナー、クライアントといったマルチテナント構成については以下の記事を参考にしてください(先日自身作成記事の中で少し記載しました)
https://qiita.com/TetsuyaTakada/items/8445a2b8c570a3bbaf63

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/710c1a58-229e-ffd7-e711-2a1564ed679c.png)


2)Inbound(ServiceNow to OpsRamp)の設定
①[SERVICENOW INTEGRATION]の画面にて[Inbound(ServiceNow to OpsRamp)]のタブを選択します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/37414288-4bfc-ca33-800b-924947d90b67.png)

②[1. Authentication]のタブを展開し、[Authentication Type]を選択のうえ[Save]をクリックします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/b0928066-b705-d1b0-b6a8-fab2f4c53bb0.png)

③認証に関するkey,Secret情報が表示されます
※Secret情報はSave直後の画面でしか確認することができません
　確認したい場合はkeyとSecretの再発行が必要です

④③で取得した情報を使用しServiceNow上でOpsRampに対して行いたいAPIを設定します
 サンプルとして画面下部にトークン取得、インシデント作成のコマンド例が記載されています
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/425d0cf8-a934-36d2-4f4f-6f310b85ce5d.png)

▼ServiceNow上の設定について
OpsRamp社の以下公式ドキュメントをご参考にしてください
https://docs.opsramp.com/integrations/a2r/ticketing-itsm/servicenow/servicenow-using-servicenow-store/#example-request

以上がInbound(ServiceNow to OpsRamp)の設定になります

3)Outbound(OpsRamp to ServiceNow)の設定
①[SERVICENOW INTEGRATION]の画面にて[Outbound(OpsRamp to ServiceNow)]のタブを選択します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/fea26e36-eb86-87bc-8975-cad38878503f.png)

②[1. Integration Basic Configuation]を展開しServiceNowとの連携に必要な諸情報を入力し[Save]をクリックします
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/2231ab19-2d05-701c-e986-4d7c95356946.png)

③[3. Integration Events]にて実際に動作させるイベントを定義します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/b208746d-d607-c923-2fd9-4c886f842ffb.png)

以上がOutbound(OpsRamp to Service Now)の設定になります

動作確認
---
設定したOutbound(OpsRamp to ServiceNow)の連携が正常に動作しているのかをOpsRamp上で確認する方法について以下に記載します。
※Inbound(ServiceNow to OpsRamp)についてはServiceNow上のログで確認する必要があります

これまでの設定で使用してきました[SERVICENOW INTEGRATION]の画面にて[Audit Logs]のタブを選択します
そうすると以下の画面のように前章3)で設定したイベントの動作記録が確認できます

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/dd501ab4-4c35-4341-ec1e-0cce0ad92eaa.png)

OpsRamp側の設定に問題がある場合はStatusが✖になりますので、これまでの設定、イベントの定義内容などをご確認ください
ここのStatusで✔になっている場合はServiceNow側の設定に不備がある可能性が高いです


OpsRamp-ServiceNow 連携で実現できていること
---
ServiceNowとの連携の章3)でのイベントの定義にあるトリガー内容が基本的に現在実現で来ている全ての内容になります
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/b8b4a97f-d75c-ba32-db80-06288c35a36c.png)

Service Desk：OpsRampにおけるチケット管理機能の名称
チケット：チケットはIncident,Service Request Problem, Change Request, Taskという種類があります
状態：Create(チケットが作成された時),Update(チケットの情報が更新された時),Delete(チケットが削除されたとき)

つまり以下が実現できています

OpsRampでチケットが作成された時　→　OpsRampのチケット内容に従いServiceNow上でインシデントを作成
OpsRampでチケットが更新された時　→　更新内容に従いServiceNow上の対象インシデントの内容を更新
※Deleteについては想定していないため確認していません

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/86c1d975-2102-98b7-dd3e-391627589312.png)

Resource：OpsRamp上にオンボードされているデバイスの名称
デバイスタイプ：デバイスはOSなどによりカテゴリに分類されます
状態：Create(チケットが作成された時),Update(チケットの情報が更新された時),Delete(チケットが削除されたとき)

つまり以下が実現できています
OpsRampでデバイスが作成された時　→　デバイス情報からServiceNow上でもデバイスを作成
OpsRampでデバイスが更新された時　→　更新内容に従いServiceNow上の対象デバイスの内容を更新
OpsRampでデバイスが削除された時　→　ServiceNow上の対象デバイスを削除

上記項目よりOpsRampとServiceNowにおける動きは以下の通りは実装できています
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2345557/6b5d5878-cfbc-d1aa-565b-7a6a0c9e3dc9.png)

以上
OpsRamp-ServiceNowに関するインテグレーションの記事でした！