AWSのワークフローの活用を極めるクラウドサービス連携機能とは ~Systemwalker Operation Managerで実現するAWSジョブ管理のベストプラクティス~

AWS上にシステムを構築しようとしている方にとって、バッチ制御をどう実装するかは重要な課題です。
「AWSのジョブ管理とは?Step Functionsとジョブ管理ソフトウェアで効率的に管理」の記事ではジョブ管理ソフトウェアとAWS Step Functions(以降、Step Functionsと略す)を連携させることで実用的なジョブ管理が可能になることをご紹介しましたが、連携するための開発工数が必要になる問題がありました。
そこで今回は、Systemwalker Operations Managerの「クラウドサービス連携機能」を活用することで、少ない開発工数でバッチ制御を実装する方法について詳しく解説します。

本記事は「AWSのジョブ管理とは?Step Functionsとジョブ管理ソフトウェアで効率的に管理」の記事の「5. Step Functionsとジョブ管理ソフトウェアを連携させる場合」の内容をSystemwalker Operation Managerの「クラウドサービス連携機能」を使って実現する手順となります。
AWS上でジョブ管理を実現する際の考慮ポイントを知りたい方は次の記事をご覧ください。

1. ユースケース

ユースケースとしてレンタカー業界で考えてみましょう。車両管理システム(基幹業務)がオンプレミスに、モバイル端末向けの予約システム(クラウドサービス業務)がAWS上に構築されているとします。この場合、既存の基幹業務とクラウドサービス業務を組み合わせた一元的な運用を実現したいと思うでしょう。
しかし、こういったケースでは、基幹業務の営業日に合わせたタイミング制御が必要となるため、従来の基幹システム上で利用していたジョブ管理ソフトウェアを引き続き利用するケースが少なくありません。その一方で、ジョブ管理ソフトウェアではAWSサービスの連携に必要な制御の作りこみが必要となるというデメリットがあります。
ここで注目したいのが、クラウドサービス連携機能です。この機能を利用することで、AWSサービスと連携するのにかかるジョブアプリケーション開発の期間を短縮することが可能となります。クラウドサービス連携機能は、REST実行ジョブと認証情報設定コマンドの2つの機能から構成されています。

2. クラウドサービス連携を活用してStep Functionsと連携する

ここでは実際にクラウドサービス連携機能を使用して、Step Functionsと連携するための手順をご紹介します。

2.1. 構成

Loading component...

Loading component...

2.2. アクセス用のIAMユーザーとアクセスキーの作成

Loading component...

Loading component...

Loading component...

Loading component...

2.3. IAMロールの作成

Loading component...

Loading component...

2.4. Step Functionsのステートマシンの作成

Loading component...

Loading component...

Loading component...

Loading component...

2.5. API GatewayでAPIを作成

Loading component...

Loading component...

11. [リソース]画面のメソッドリクエストの設定で[編集]を選択
12. [メソッドリクエストを編集]画面の[メソッドリクエストの設定]で[認可]を"AWS IAM"を選択し、[保存]を選択

Loading component...

13. 手順8~12と同様の手順でステートマシンの監視用、強制終了用のリソースとメソッドを作成。ただし、リソース名と[メソッドを作成]画面で指定する[アクション名]は以下のように指定

Loading component...

Loading component...

Loading component...

2.6. 認証情報の登録

Loading component...

Loading component...

3. 以下のコマンドを実行し、認証情報を登録

Loading component...

4. 以下のコマンドを実行し、認証情報が登録されたかを確認

Loading component...

以下のように出力されればOK

Loading component...

【Systemwalker Operation ManagerがProxy環境下にある場合】
以下の認証情報も上記と同様の手順で登録します。

ファイル名:auth_proxy.json

Loading component...

2.7. 接続情報ファイルの作成

Loading component...

Loading component...

ファイル名:main_body.json

Loading component...

ファイル名:moni_body.json

Loading component...

ファイル名:term_body.json

Loading component...

2.8. REST実行ジョブの配置

Loading component...

Loading component...

4. [ファイル]メニューから[上書き保存]を選択し、ジョブネットを保存する

Loading component...

3. 動作を確認する

ここでは、REST実行ジョブでStep Functionsのステートマシンを制御できることを確認します。

3.1. Step Functionsのステートマシンを実行する

「2.8. REST実行ジョブの配置」で作成したジョブネットを起動します。ジョブネット監視画面のジョブの一覧からREST実行ジョブの状態が実行中の状態になることを確認します。

Loading component...

Loading component...

Loading component...

3.2. Step Functionsのステートマシンの終了を待ち合わせる

Loading component...

Loading component...

次に、ステートマシンのステータスが成功になった後、REST実行ジョブの状態を確認します。しばらく待っているとREST実行ジョブの状態が正常終了に変わります。

Loading component...

Loading component...

3.3. Step Functionsのステートマシンを強制終了する

Loading component...

Loading component...

Loading component...

Loading component...

Loading component...

4. まとめ

4.1. 導入効果

Loading component...

4.2. おわりに

Loading component...

5. 製品紹介

Systemwalker Operation Managerの製品情報についてもっと詳しくお知りになりたい方は、ぜひ下記のページをご覧ください。

Loading component...

関連情報

Loading component...

Loading component...