3.3. Job Scheduler for Cloud(AWS)の使い方¶
3.3.1. Job Scheduler for Cloud(AWS/S3)の使い方¶
3.3.1.1. Job Scheduler for Cloud(AWS/S3)の機能¶
Job Scheduler for Cloud(AWS/S3)とは、Senju/DCのジョブスケジュール機能と連携し、AWS/S3上のファイルの取得、登録および削除を行なう機能です。
3.3.1.2. ポリシーの作成¶
AWS/S3連携機能を使用するため、 「AWS/S3連携機能に必要なアクセス権限」 に示すポリシーを作成して、ユーザーにアクセス権限を付与します。
ジョブ |
必要なアクセス権 |
---|---|
AWS/S3連携ジョブ |
s3:listBuckets |
3.3.1.3. sj_aws.iniの設定¶
sj_aws.iniファイルは、AWSに関する情報の設定ファイルで、 Job Scheduler for Cloud(AWS/S3)ジョブはこのファイルを参照します。
設定方法については、Cloud Monitoring の sj_setup_aws - AWS情報設定ファイル更新 - を参照して下さい。
sj_aws.iniに、TABLEに示す内容を設定して下さい。
項目 |
省略 |
デフォルト |
暗号化対象 |
説明 |
---|---|---|---|---|
accessKey |
可 |
― |
○ |
AWS接続用のアクセスキーID |
secretKey |
可 |
― |
○ |
AWS接続用のシークレットアクセスキー |
bucket |
可 |
― |
× |
AWS/S3のバケット |
checkInterval |
可 |
60 |
× |
チェックインターバル(秒)[10-600] |
省略可能な項目を省略した場合は、Job Scheduler for Cloud(AWS/S3)ジョブのオプションで指定する必要があります。デフォルトが存在するものに関しては、省略してもデフォルト値で動作します。
同じ項目を、sj_aws.iniとJob Scheduler for Cloud(AWS/S3)ジョブのオプションの両方で指定した場合は、Job Scheduler for Cloud(AWS/S3)ジョブのオプションで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい
指定可能なAWSリージョン および EC2インスタンスタイプは、「4.5.1 Job Scheduler for Cloudの制限事項」を参照して下さい。
警告
Senju/DCジョブの起動コマンドには、文字数に制限があります。なるべく各項目は省略せずに、sj_aws.iniファイルに設定して下さい。
3.3.1.4. AWS/S3ファイル取得ジョブの利用方法¶
AWS/S3ファイル取得ジョブは、AWS/Elastic MapReduceジョブフロー実行ジョブやAWS Management Consoleなどによって登録、作成したファイルをAWS/S3上から取得します。
AWS/S3ファイル取得ジョブが起動されると、引数に指定された内容でファイルを取得し、結果を標準出力に出力します。
AWS/S3ファイル取得ジョブを起動する際に指定する引数には、以下に示す内容を指定して下さい。
sjPEX_CloudFunctions -m S3
-get S3URI
[-ak アクセスキーID] [-sk シークレットアクセスキー] [ -bk S3バケット名]
[-i チェックインターバル]
オプション |
省略 |
デフォルト |
長さ |
説明 |
---|---|---|---|---|
get |
不可 |
― |
510 |
AWS/S3上のファイル名 (AWS/S3上のURIとローカルパスを’ ,’ で区切って指定。”AWS/S3上のURI,ローカルパス”。s3://バケット名/を外したファイル名までを指定。) |
ak |
可 |
― |
256 |
AWS接続用のアクセスキーID |
-sk |
可 |
― |
256 |
AWS接続用のシークレットアクセスキー |
bk |
可 |
― |
255 |
AWS/S3上のバケット |
-i |
可 |
60 |
4 |
チェックインターバル(秒) [10-600] |
Senju/DCジョブの起動コマンドの最大文字数は2048文字です。起動コマンドが最大文字数を超える場合は、sj_aws.iniに設定して下さい。
省略可能なオプションを省略した場合は、sj_aws.iniで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい。
3.3.1.4.1. AWS/S3ファイル取得ジョブテンプレートの使い方¶
ジョブテンプレートとは、ジョブの起動コマンドシーケンスのみを持ち、パラメータ値が未決定であるエンティティです。ジョブテンプレートを用いることにより、ジョブの登録のたびにコマンドシーケンスを入力しなくても、必要なパラメータ値を入力するだけでジョブの作成が行えます。 Job Scheduler for CloudをSenju/DCのジョブスケジュール機能と連携するために、Job Scheduler for Cloudジョブを、Senju/DCのジョブの起動コマンドとして設定します。
AWS/S3ファイル取得ジョブテンプレートを使用し、ジョブの起動コマンドとして利用するには、千手ブラウザのツリービューで、<ドメイン>→“ジョブスケジュール”→“ジョブ”を選択し、ジョブの新規作成を行います。
ジョブの新規作成プロパティウィンドで[ジョブテンプレートを使用]チェックボックスをチェックし、[ジョブテンプレート入力]ボタンを押して下さい。
ジョブテンプレート入力ウィンドでAWS/S3ファイル取得ジョブテンプレートを選択し、各パラメータ値を設定して下さい。
パラメータ |
説明 |
---|---|
S3URI |
AWS/S3上のファイル名 (AWS/S3上のURIとローカルパスを’ ,’ で区切って指定。”AWS/S3上のURI,ローカルパス”。s3://バケット名/を外したファイル名までを指定。) |
AWS_AccessKey |
AWS接続用のアクセスキーID |
AWS_SecretKey |
AWS接続用のシークレットアクセスキー |
S3_Bucket |
AWS/S3上のバケット |
Interval[sec] |
チェックインターバル(秒) [10-600] |
3.3.1.4.2. AWS/S3ファイル取得ジョブの処理の流れ(通常時)¶
AWS/S3ファイル取得ジョブがSenju/DCのジョブスケジュールで1つのジョブとして起動されると、 「図 3-4 AWS/S3ファイル取得ジョブの処理の流れ」 および 「TABLE 3-7 AWS/S3ファイル取得ジョブの処理の流れ」 に示す流れで動きます。
Senju/DC ジョブの状態 |
AWS/S3ファイル取得 ジョブの処理内容 |
メッセージモニタの出力 |
---|---|---|
起動待ち |
起動前の状態 |
|
稼働中 |
起動 |
|
稼働中 |
引数に従い、AWS/S3上のファイル取得 |
|
正常終了 |
AWS/S3上のファイル取得に成功 |
!PEXC03 AWS/S3からのデータ取得に成功しました。 |
異常終了 |
AWS/S3上のファイル取得に失敗 |
!PEXC04 AWS/S3からのデータ取得に失敗しました。 |
AWS/S3ファイル取得ジョブが起動されると、引数に指定された内容でファイルを取得処理を実行します。
AWS/S3上のファイルを取得します。
取得が正しく行なわれると、データ取得に成功した旨のメッセージを出力し、Senju/DCジョブは正常終了します。
取得が何らかの理由で正しく行なわれないと、データ取得に失敗した旨のメッセージを出力し、Senju/DCジョブは異常終了します。
警告
データが正しく取得されたかは、引数に指定したローカルパス配下を確認して下さい。
3.3.1.5. AWS/S3ファイル登録ジョブの利用方法¶
AWS/S3ファイル登録ジョブは、ジョブの実行環境である該当ノード上に登録、作成したファイルをAWS/S3上へ登録します。
AWS/S3ファイル登録ジョブが起動されると、引数に指定された内容でファイルを登録し、結果を標準出力に出力します。
AWS/S3ファイル登録ジョブを起動する際に指定する引数には、以下に示す内容を指定して下さい。
sjPEX_CloudFunctions -m S3
-put S3URI
[-ak アクセスキーID] [-sk シークレットアクセスキー] [ -bk S3バケット名]
[-i チェックインターバル]
オプション |
省略 |
デフォルト |
長さ |
説明 |
---|---|---|---|---|
-put |
不可 |
― |
510 |
AWS/S3上のファイル名 (AWS/S3上のURIとローカルパスを’ ,’ で区切って指定。”AWS/S3上のURI,ローカルパス”。s3://バケット名/を外したファイル名までを指定。) |
-ak |
可 |
― |
256 |
AWS接続用のアクセスキーID |
-sk |
可 |
― |
256 |
AWS接続用のシークレットアクセスキー |
-bk |
可 |
― |
255 |
AWS/S3上のバケット |
-i |
可 |
60 |
4 |
チェックインターバル(秒) [10-600] |
Senju/DCジョブの起動コマンドの最大文字数は2048文字です。起動コマンドが最大文字数を超える場合は、sj_aws.iniに設定して下さい。
省略可能なオプションを省略した場合は、sj_aws.iniで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい。
3.3.1.5.1. AWS/S3ファイル登録ジョブテンプレートの使い方¶
ジョブテンプレートとは、ジョブの起動コマンドシーケンスのみを持ち、パラメータ値が未決定であるエンティティです。ジョブテンプレートを用いることにより、ジョブの登録のたびにコマンドシーケンスを入力しなくても、必要なパラメータ値を入力するだけでジョブの作成が行えます。 Job Scheduler for CloudをSenju/DCのジョブスケジュール機能と連携するために、Job Scheduler for Cloudジョブを、Senju/DCのジョブの起動コマンドとして設定します。
AWS/S3ファイル登録ジョブテンプレートを使用し、ジョブの起動コマンドとして利用するには、千手ブラウザのツリービューで、<ドメイン>→“ジョブスケジュール”→“ジョブ”を選択し、ジョブの新規作成から行います。
ジョブの新規作成プロパティウィンドで[ジョブテンプレートを使用]チェックボックスをチェックし、[ジョブテンプレート入力]ボタンを押して下さい。
ジョブテンプレート入力ウィンドでAWS/S3ファイル登録ジョブテンプレートを選択し、各パラメータ値を設定して下さい。
パラメータ |
説明 |
---|---|
S3URI |
AWS/S3上のファイル名 (AWS/S3上のURIとローカルパスを’ ,’ で区切って指定。”AWS/S3上のURI,ローカルパス”。s3://バケット名/を外したファイル名までを指定。) |
AWS_AccessKey |
AWS接続用のアクセスキーID |
AWS_SecretKey |
AWS接続用のシークレットアクセスキー |
S3_Bucket |
AWS/S3上のバケット |
Interval[sec] |
チェックインターバル(秒) [10-600] |
3.3.1.5.2. AWS/S3ファイル登録ジョブの処理の流れ(通常時)¶
AWS/S3ファイル登録ジョブがSenju/DCのジョブスケジュールで1つのジョブとして起動されると、 「図 3-7 AWS/S3ファイル登録ジョブの処理の流れ」 および 「TABLE 3-9 AWS/S3ファイル登録ジョブの処理の流れ」 に示す流れで動きます。
Senju/DC ジョブの状態 |
AWS/S3ファイル登録 ジョブの処理内容 |
メッセージモニタの出力 |
---|---|---|
起動待ち |
起動前の状態 |
|
稼働中 |
起動 |
|
稼働中 |
引数に従い、AWS/S3上のファイル登録 |
|
稼働中 |
AWS/S3上のファイル登録状態を取得 |
|
正常終了 |
AWS/S3上のファイル登録に成功 |
!PEXC05 AWS/S3へのデータ登録に成功しました。 |
異常終了 |
AWS/S3上のファイル登録に失敗 |
!PEXC06 AWS/S3へのデータ登録に失敗しました。 |
AWS/S3ファイル登録ジョブが起動されると、引数に指定された内容でファイル登録処理を実行します。
AWS/S3上へファイルを登録します。
指定されたファイルがAWS/S3上へ登録されたか状態を取得します。
登録が正しく行なわれると、成功した旨のメッセージを出力し、Senju/DCジョブは正常終了します。
登録が何らかの理由で正しく行なわれないと、失敗した旨のメッセージを出力し、Senju/DCジョブは異常終了します。
3.3.1.6. AWS/S3ファイル削除ジョブの利用方法¶
AWS/S3ファイル削除ジョブは、AWS/Elastic MapReduceジョブフロー実行ジョブやAWS Management Consoleなどによって登録、作成したファイルをAWS/S3上から削除します。削除されたファイルの情報は一切残りませんので、本ジョブを実行する場合は細心の注意を払い行って下さい。
AWS/S3ファイル削除ジョブが起動されると、引数に指定された内容でファイルを削除し、結果を標準出力に出力します。
AWS/S3ファイル削除ジョブを起動する際に指定する引数には、以下に示す内容を指定して下さい。
sjPEX_CloudFunctions -m S3
-del S3URI
[-ak アクセスキーID] [-sk シークレットアクセスキー] [ -bk S3バケット名]
[-i チェックインターバル]
オプション |
省略 |
デフォルト |
長さ |
説明 |
---|---|---|---|---|
-del |
不可 |
― |
510 |
AWS/S3上のファイル名(AWS/S3上のURI) |
-ak |
可 |
― |
256 |
AWS接続用のアクセスキーID |
-sk |
可 |
― |
256 |
AWS接続用のシークレットアクセスキー |
-bk |
可 |
― |
255 |
AWS/S3上のバケット |
-i |
可 |
60 |
4 |
チェックインターバル(秒) [10-600] |
Senju/DCジョブの起動コマンドの最大文字数は2048文字です。起動コマンドが最大文字数を超える場合は、sj_aws.iniに設定して下さい。
省略可能なオプションを省略した場合は、sj_aws.iniで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい。
3.3.1.6.1. AWS/S3ファイル削除ジョブテンプレートの使い方¶
ジョブテンプレートとは、ジョブの起動コマンドシーケンスのみを持ち、パラメータ値が未決定であるエンティティです。ジョブテンプレートを用いることにより、ジョブの登録のたびにコマンドシーケンスを入力しなくても、必要なパラメータ値を入力するだけでジョブの作成が行えます。 Job Scheduler for CloudをSenju/DCのジョブスケジュール機能と連携するために、Job Scheduler for Cloudジョブを、Senju/DCのジョブの起動コマンドとして設定します。
AWS/S3ファイル削除ジョブテンプレートを使用し、ジョブの起動コマンドとして利用するには、千手ブラウザのツリービューで、<ドメイン>→“ジョブスケジュール”→“ジョブ”を選択し、ジョブの新規作成から行います。
ジョブの新規作成プロパティウィンドで[ジョブテンプレートを使用]チェックボックスをチェックし、[ジョブテンプレート入力]ボタンを押して下さい。
ジョブテンプレート入力ウィンドでAWS/S3ファイル削除ジョブテンプレートを選択し、各パラメータ値を設定して下さい。
パラメータ |
説明 |
---|---|
S3URI |
AWS/S3上のファイル名(AWS/S3上のURI) |
AWS_AccessKey |
AWS接続用のアクセスキーID |
AWS_SecretKey |
AWS接続用のシークレットアクセスキー |
S3_Bucket |
AWS/S3上のバケット |
Interval[sec] |
チェックインターバル(秒) [10-600] |
3.3.1.6.2. AWS/S3ファイル削除ジョブの処理の流れ(通常時)¶
AWS/S3ファイル削除ジョブがSenju/DCのジョブスケジュールで1つのジョブとして起動されると、 「図 3-10 AWS/S3ファイル削除ジョブの処理の流れ」 および 「TABLE 3-11 AWS/S3ファイル削除ジョブの処理の流れ」 に示す流れで動きます。
Senju/DC ジョブの状態 |
AWS/S3ファイル削除 ジョブの処理内容 |
メッセージモニタの出力 |
---|---|---|
起動待ち |
起動前の状態 |
|
稼働中 |
起動 |
|
稼働中 |
引数に従い、AWS/S3上のファイル削除 |
|
稼働中 |
AWS/S3上のファイル削除 状態を取得 |
|
正常終了 |
AWS/S3上のファイル削除に成功 |
!PEXC07 AWS/S3からのデータ削除に成功しました。 |
異常終了 |
AWS/S3上のファイル削除に失敗 |
!PEXC08 AWS/S3からのデータ削除に失敗しました。 |
AWS/S3ファイル削除ジョブが起動されると、引数に指定された内容でファイル削除処理を実行します。
AWS/S3上のファイルを削除します。
指定されたファイルがAWS/S3上から削除されたか状態を取得します。
削除が正しく行なわれると、成功した旨のメッセージを出力し、Senju/DCジョブは正常終了します。
削除が何らかの理由で正しく行なわれないと、失敗した旨のメッセージを出力し、Senju/DCジョブは異常終了します。
3.3.2. Job Scheduler for Cloud(AWS/Elastic MapReduce)の使い方¶
3.3.2.1. Job Scheduler for Cloud(AWS/Elastic MapReduce)の機能¶
Job Scheduler for Cloud(AWS/Elastic MapReduce)とは、Senju/DCのジョブスケジュール機能と連携し、AWS/Elastic MapReduceのジョブフローの実行と、開始から終了まで監視を行なう機能です。
3.3.2.2. AWS/Elastic MapReduceジョブフロー実行の流れ¶
Job Scheduler for CloudでAWS/Elastic MapReduceのジョブフローを実行する際の流れを次に示します。
AWSに関する情報の設定を行い、Job Scheduler for CloudジョブをSenju/DCのジョブに登録して、Elastic MapReduceジョブフローの入力ファイルの登録、ジョブフローの実行、出力ファイルの取得を行います。
3.3.2.2.1. 運用計画・準備段階¶
- AWS/S3バケットの作成 [必須作業]
Job Scheduler for Cloudジョブを実行するために、AWS/S3バケットを1つ以上作成します。 作成はAWS Management Consoleなどから行なって下さい。
- Elastic MapReduce用jarファイルの登録 [必須作業]
- Job Scheduler for Cloud(Elastic MapReduce)で作成したクラスター内で実行するカスタムjarファイルを登録します。
jarファイルは、AWS/S3ファイル登録ジョブやAWS Management ConsoleなどでAWS/S3上に登録して下さい。
参考
AWS/Elastic MapReduceで使用可能な jarファイルはAWS/Elastic MapReduceの仕様に依存します。詳細については、Amazon Web Servicesサイトよりご確認下さい。
- sj_aws.iniの設定 [必須作業]
- Job Scheduler for Cloudジョブを実行するために、AWSに関する情報を設定します。
(「 sj_aws.iniの設定 (AWS/S3)」 「 sj_aws.iniの設定 (AWS/Elastic MapReduce)」 参照)
- 動作環境の作成 [必須作業]
- Senju/DCのジョブスケジュールでJob Scheduler for Cloudジョブを実行するために、動作環境を作成します。
- 動作環境には、環境変数を設定することができます。
(「 動作環境の環境変数の利用法」参照)
- ジョブスケジュールの設定 [必須作業]
Senju/DCのジョブスケジュールでJob Scheduler for Cloudジョブを実行するために、以下の設定を行います。
ジョブおよびネットの作成
システムの作成とネットの登録
参考
ジョブスケジュール設定の詳細は 「ユーザーズガイド」 を参照して下さい。
3.3.2.2.2. 運用¶
- ジョブスケジュールのスケジューリング
Senju/DCのジョブスケジュールを実行するために、以下の設定を行います。
フレーム登録によるスケジューリング
フレームの投入および日付変更
参考
スケジューリング設定の詳細は 「ユーザーズガイド」 を参照して下さい。
- AWS/S3ファイル登録
AWS/S3ファイル登録ジョブを使用し、AWS/Elastic MapReduceで使用するファイルをコマンドの実行環境である該当ノード上からAWS/S3上へ登録します。
(「 AWS/S3ファイル登録ジョブの利用方法」参照)
- AWS/Elastic MapReduceジョブフロー
AWS/Elastic MapReduceジョブフロー実行ジョブは、AWS/Elastic MapReduceジョブフローの実行と、開始から終了までの監視を行ないます。
- AWS/S3ファイル取得
AWS/S3ファイル取得ジョブを使用し、AWS/Elastic MapReduceジョブフロー実行ジョブによって作成されたファイルをAWS/S3上から取得します。
(「 AWS/S3ファイル取得ジョブの利用方法」参照)
- AWS/S3ファイル削除
AWS/S3ファイル削除ジョブを使用し、AWS/Elastic MapReduceジョブフロー実行後の不要になったファイルをAWS/S3上から削除します。
(「 AWS/S3ファイル削除ジョブの利用方法」参照)
3.3.2.3. ポリシーの作成¶
AWS/Elastic MapReduce連携機能を使用するため、 「AWS/Elastic MapReduce連携機能に必要なアクセス権限」 に示すポリシーを作成して、ユーザーにアクセス権限を付与します。
ジョブ |
必要なアクセス権 |
---|---|
AWS/Elastic MapReduce連携ジョブ |
iam:PassRole |
3.3.2.4. sj_aws.iniの設定¶
sj_aws.iniファイルは、AWSに関する情報の設定ファイルで、Job Scheduler for Cloud(AWS/Elastic MapReduce)ジョブはこのファイルを参照します。
設定方法については、Cloud Monitoring の sj_setup_aws - AWS情報設定ファイル更新 - を参照して下さい。
sj_aws.iniに、 「TABLE 3-12 sj_aws.iniの記述内容」 に示す内容を設定して下さい。
項目 |
省略 |
デフォルト |
暗号化対象 |
説明 |
---|---|---|---|---|
accessKey |
可 |
― |
○ |
AWS接続用のアクセスキーID |
secretKey |
可 |
― |
○ |
AWS接続用のシークレットアクセスキー |
region |
可 |
― |
× |
AWSの接続先リージョン |
instanceCount |
可 |
5 |
× |
AWS/EC2インスタンス数 |
masterInstanceType |
可 |
m1.small |
× |
AWS/EC2インスタンスタイプ(マスター) |
slaveInstanceType |
可 |
m1.small |
× |
AWS/EC2インスタンスタイプ(スレーブ) |
mapreduceLogUri |
可 |
― |
× |
AWS/Elastic MapReduceジョブフローのログ出力先URI |
checkInterval |
可 |
60 |
× |
チェックインターバル(秒) [10-600] |
hadoopVersion |
可 |
1.0.3 |
× |
hadoopバージョン |
省略可能な項目を省略した場合は、Job Scheduler for Cloud(AWS/Elastic MapReduce)ジョブのオプションで指定する必要があります。デフォルトが存在するものに関しては、省略してもデフォルト値で動作します。
同じ項目を、sj_aws.iniとJob Scheduler for Cloud(AWS/Elastic MapReduce)ジョブのオプションの両方で指定した場合は、Job Scheduler for Cloud(AWS/Elastic MapReduce)ジョブのオプションで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい。
指定可能なAWSリージョン および EC2インスタンスタイプは、「4.5.1 Job Scheduler for Cloudの制限事項」を参照して下さい。
Amazon EMR の AMI バージョン 2.x および 3.x を対象にしているため、指定可能なhadoopバージョンは「2.4.0」、「2.2.0」、および「1.0.3」です。
警告
Senju/DCジョブの起動コマンドには、文字数に制限があります。なるべく各項目は省略せずに、sj_aws.iniファイルに設定して下さい。
3.3.2.5. AWS/Elastic MapReduce ジョブフロー実行ジョブの利用方法¶
AWS/Elastic MapReduceジョブフロー実行ジョブは、AWS/Elastic MapReduceのジョブフローを実行し、開始から終了までの監視を行います。
AWS/Elastic MapReduceジョブフロー実行ジョブが起動されると、引数に指定された内容でジョブフローを実行し、結果を標準出力に出力します。
AWS/Elastic MapReduceジョブフロー実行ジョブを起動する際に指定する引数には、以下に示す内容を指定して下さい。
sjPEX_CloudFunctions -m MR
-juri S3URI
[-ak アクセスキーID] [-sk シークレットアクセスキー] [ -reg AWSのリージョン]
[-inc EC2インスタンス数] [-mit EC2マスタインスタンスタイプ]
[-sit EC2スレーブインスタンスタイプ] [-luri S3URI]
[-iuri S3URI] [-ouri S3URI] [-mc /Elastic MapReduceメインクラス]
[-args /Elastic MapReduceパラメータ]
[-i チェックインターバル]
オプション |
省略 |
デフォルト |
長さ |
説明 |
---|---|---|---|---|
-juri |
不可 |
― |
1024 |
JarファイルのURI(AWS/S3上のURI) |
-ak |
可 |
― |
256 |
AWS接続用のアクセスキーID |
-sk |
可 |
― |
256 |
AWS接続用のシークレットアクセスキー |
-reg |
可 |
― |
32 |
AWSの接続先リージョン |
-inc |
可 |
5 |
3 |
AWS/EC2インスタンス数 |
-mit |
可 |
m1.small |
256 |
AWS/EC2インスタンスタイプ(マスター) |
-sit |
可 |
m1.small |
256 |
AWS/EC2インスタンスタイプ(スレーブ) |
-luri |
可 |
― |
1024 |
AWS/Elastic MapReduceジョブフローのログ出力先URI |
-iuri |
可 |
― |
1024 |
AWS/Elastic MapReduceのインプットURI(AWS/S3上のURI) |
-ouri |
可 |
― |
1024 |
AWS/Elastic MapReduceのアウトプットURI(AWS/S3上のURI) |
-mc |
可 |
― |
128 |
AWS/Elastic MapReduceのメインクラス |
-args |
可 |
― |
126 |
AWS/Elastic MapReduceのパラメータ |
-i |
可 |
60 |
4 |
チェックインターバル(秒) [10-600] |
Senju/DCジョブの起動コマンドの最大文字数は2048文字です。起動コマンドが最大文字数を超える場合は、sj_aws.iniまたは動作環境に設定して下さい。(動作環境については、「3.4.4.4 動作環境の環境変数の利用法」を参照して下さい。)
省略可能なオプションを省略した場合は、sj_aws.iniで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい。
指定可能なAWSリージョン および EC2インスタンスタイプは、「4.5.1 Job Scheduler for Cloudの制限事項」を参照して下さい。
注釈
AWS/Elastic MapReduceのインプットURI、アウトプットURI、メインクラス、パラメータは、指定するjarファイルの仕様に依存します。
3.3.2.5.1. ジョブテンプレートの追加手順¶
AWS/Elastic MapReduce連携機能を利用する場合、Senju/DCシステムが提供する運用コマンドsjPEX_editTmpl(ジョブテンプレートの変更/追加/削除)を実行し、最初にジョブテンプレートの追加を行って下さい。 なお、既に登録されている場合、新たに追加する必要はありません。
以下のコマンドを実行すると、ジョブテンプレートにAWS/Elastic MapReduceジョブフロー実行ジョブが追加されます。
コマンド実行は、千手稼働アカウントにてログインして行って下さい。
実行コマンド
% sjPEX_editTmpl -iAWS/EMR -nAWS/EMR_JobFlow -x"sjPEX_CloudFunctions -m MR" -p"-juri @EMRJarURI@ -ak @@AWS_AccessKey@@ -sk @@AWS_SecretKey@@ -reg @@AWS_Region@@ -inc @@EC2_Instance@@ -mit @@EC2_MasterInstance@@ -sit @@EC2_SlaveInstance@@ -luri @@EMR_LogURI@@ -iuri @@EMR_InputURI@@ -ouri @@EMR_OutputURI@@ -mc @@EMR_MainClass@@ -args @@EMR_Parameter@@ -i @@Interval[sec]@@" -c"AWS/EMR_JobFlow JOB"
オプション |
値 |
---|---|
テンプレートID |
AWS/EMR |
テンプレート名称 |
AWS/EMR_JobFlow |
コマンド |
sjPEX_CloudFunctions -m MR |
パラメータ |
-juri @EMRJarURI@ -ak @@AWS_AccessKey@@ -sk @@AWS_SecretKey@@ -reg @@AWS_Region@@ -inc @@EC2_Instance@@ -mit @@EC2_MasterInstance@@ -sit @@EC2_SlaveInstance@@ -luri @@EMR_LogURI@@ -iuri @@EMR_InputURI@@ -ouri @@EMR_OutputURI@@ -mc @@EMR_MainClass@@ -args @@EMR_Parameter@@ -i @@Interval[sec]@@ |
説明 |
AWS/EMR_JobFlow JOB |
警告
実行後は、千手ブラウザのツリービューで、<ドメイン>→“ジョブスケジュール”→“ジョブテンプレート”を選択し、AWS/Elastic MapReduce ジョブフロー実行ジョブテンプレートが追加されていることを確認して下さい。
参考
sjPEX_editTmplコマンドの詳細は 「開発者ガイド」 を参照して下さい。
3.3.2.5.2. AWS/Elastic MapReduceジョブフロー実行ジョブテンプレートの使い方¶
ジョブテンプレートとは、ジョブの起動コマンドシーケンスのみを持ち、パラメータ値が未決定であるエンティティです。ジョブテンプレートを用いることにより、ジョブの登録のたびにコマンドシーケンスを入力しなくても、必要なパラメータ値を入力するだけでジョブの作成が行えます。 Job Scheduler for CloudをSenju/DCのジョブスケジュール機能と連携するために、Job Scheduler for Cloudジョブを、Senju/DCのジョブの起動コマンドとして設定します。
AWS/Elastic MapReduceジョブフロー実行ジョブテンプレートを使用し、ジョブの起動コマンドとして利用するには、千手ブラウザのツリービューで、<ドメイン>→“ジョブスケジュール”→“ジョブ”を選択し、ジョブの新規作成を行います。
ジョブの新規作成プロパティウィンドで[ジョブテンプレートを使用]チェックボックスをチェックし、[ジョブテンプレート入力]ボタンを押して下さい。
ジョブテンプレート入力ウィンドでAWS/Elastic MapReduceジョブフロー実行ジョブテンプレートを選択し、各パラメータ値を設定して下さい。
パラメータ |
説明 |
---|---|
EMRJarURI |
JarファイルのURI(AWS/S3上のURI) |
AWS_AccessKey |
AWS接続用のアクセスキーID |
AWS_SecretKey |
AWS接続用のシークレットアクセスキー |
AWS_Region |
AWSの接続先リージョン |
EC2_Instance |
AWS/EC2インスタンス数 |
EC2_MasterInstance |
AWS/EC2インスタンスタイプ(マスター) |
EC2_SlaveInstance |
AWS/EC2インスタンスタイプ(スレーブ) |
EMR_LogURI |
AWS/Elastic MapReduceジョブフローのログ出力先URI |
EMR_InputURI |
AWS/Elastic MapReduceのインプットURI(AWS/S3上のURI) |
EMR_OutputURI |
AWS/Elastic MapReduceのアウトプットURI(AWS/S3上のURI) |
EMR_MainClass |
AWS/Elastic MapReduceのメインクラス |
EMR_Parameter |
AWS/Elastic MapReduceのパラメータ |
Interval[sec] |
チェックインターバル(秒) [10-600] |
3.3.2.5.3. AWS/Elastic MapReduce ジョブフロー実行ジョブの流れ(通常時)¶
AWS/Elastic MapReduce ジョブフロー実行ジョブがSenju/DCのジョブスケジュールで1つのジョブとして起動されると、 「図 3-13 AWS/Elastic MapReduce ジョブフロー実行ジョブの処理の流れ」 および 「TABLE 3-14 AWS/Elastic MapReduce ジョブフロー実行ジョブの処理の流れ」 に示す流れで動きます。
Senju/DC ジョブの状態 |
AWS/Elastic MapReduce ジョブフロー実行ジョブの処理内容 |
メッセージモニタの出力 |
---|---|---|
起動待ち |
起動前の状態 |
|
稼働中 |
起動 |
|
稼働中 |
引数に従い、AWS/Elastic MapReduceジョブフローを登録 |
|
稼働中 |
登録したAWS/Elastic MapReduceジョブフローの状態を取得 |
|
正常終了 |
登録したAWS/Elastic MapReduceジョブフローの実行に成功 |
!PEXC09 AWS/MRジョブフローの実行に成功しました。 |
異常終了 |
登録したAWS/Elastic MapReduceジョブフローの実行に失敗 |
!PEXC10 AWS/MRジョブフローの実行に失敗しました。 |
AWS/Elastic MapReduce ジョブフロー実行ジョブが起動されると、引数に指定された内容でAWS/Elastic MapReduce ジョブフローを登録します。
登録したAWS/Elastic MapReduceジョブフローを起動します。
起動したAWS/Elastic MapReduceジョブフローの状態を取得します。
AWS/Elastic MapReduceジョブフローが正常終了すると、実行に成功した旨のメッセージを出力し、Senju/DCジョブは正常終了します。
- AWS/Elastic MapReduceジョブフローが何らかの理由で異常終了すると、実行に失敗した旨のメッセージを出力し、Senju/DCジョブは異常終了します。
(異常終了時の復旧手順については「3.4.5 AWS/Elastic MapReduceジョブフロー異常終了時の復旧手順」を参照して下さい。)
3.3.2.5.4. AWS/Elastic MapReduce ジョブフロー実行ジョブの流れ(強制停止時)¶
AWS/Elastic MapReduce ジョブフロー実行ジョブは、他のSenju/DCのジョブと同じく強制停止させることができます。AWS/Elastic MapReduce ジョブフロー実行ジョブに対し、Senju/DCのジョブスケジュールより強制停止が行なわれると、 「図 3-14 AWS/Elastic MapReduce ジョブフロー実行ジョブの強制停止の流れ」 に示す流れで動きます。
Senju/DC より、AWS/Elastic MapReduce ジョブフロー実行ジョブに強制停止をすると、AWS/Elastic MapReduceに対し、ジョブフローを中止するように依頼します。
この段階では、AWS/Elastic MapReduce ジョブフローはまだ終了していませんが、Senju/DCのジョブスケジュールでは、ジョブの状態は異常終了となります。
3.3.2.5.5. 動作環境の環境変数の利用法¶
AWS/Elastic MapReduceジョブフロー実行ジョブを実行する際、該当ノードの動作環境には、以下に示す環境変数を使用できます。
環境変数に設定した値は、SJ_AWS_ARG01からSJ_AWS_ARG10までを順につなげた形で、AWS/Elastic MapRedue上で稼働するジョブフローの引数として渡されます。
環境変数 |
長さ |
説明 |
---|---|---|
SJ_AWS_ARG01 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG02 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG03 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG04 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG05 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG06 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG07 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG08 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG09 |
126 |
AWS/Elastic MapReduceのパラメータ |
SJ_AWS_ARG10 |
126 |
AWS/Elastic MapReduceのパラメータ |
1.上記の環境変数にはAWS/Elastic MapReduceのパラメータを一つずつ設定して下さい。
2.上記の環境変数の値には、以下の環境変数が使用できます。
・ SENJUHOME : 千手ホームディレクトリ
・ SJ_PEX_DATE : Senju/DCジョブの運用日付
・ SJ_PEX_FRAME : Senju/DCジョブの所属するフレーム名
・ SJ_PEX_NET : Senju/DCジョブの上位ネット名
・ SJ_PEX_JOB : Senju/DCジョブのジョブ名
注釈
環境変数に設定するパラメータは、それぞれ126文字以内で設定して下さい。
3.3.2.6. AWS/Elastic MapReduceジョブフロー異常終了時の復旧手順¶
AWS/Elastic MapReduceジョブが異常終了した場合(「PEXC10」メッセージが出力された場合)のSenju/DCのジョブスケジュールの復旧手順を説明します。
手順1:ジョブフローIDの確認
AWS/Elastic MapReduceジョブのジョブログファイルを参照し、ジョブフローIDを確認します。ジョブフローID は、ジョブログのレコードの5カラム目に出力されます。
手順2:AWS (Elastic MapReduce)のジョブフローを停止
WEBブラウザからAWS Management Consoleを開き「手順1」で取得したジョブフローIDに該当するジョブフローを停止します。
AWS/Elastic MapReduceジョブが異常終了となった状況によっては、ジョブフローIDが出力されない場合があります。
手順3:該当ジョブをスキップ指定
千手ブラウザのジョブモニタから該当ジョブに対しスキップ指定を行います。
手順4:再ラン
千手ブラウザのジョブモニタから該当ジョブに対し再ランを行います。上記手順を実行することにより、該当のジョブがスキップ終了となり後続のジョブが稼働します。
参考
! AWS/Elastic MapReduceジョブのジョブログの詳細は「4.3.2 Job Scheduler for Cloud(AWS/Elastic MapReduce)のジョブログファイル」を参照して下さい。
警告
AWS Management Consoleの使用方法は、Amazon Web Servicesサイトよりご確認下さい。
3.3.3. Job Scheduler for Cloud(AWS/Lambda Function)の使い方¶
3.3.3.1. Job Scheduler for Cloud(AWS/Lambda Function)の機能¶
Job Scheduler for Cloud(AWS/Lambda Function)とは、Senju/DCのジョブスケジュール機能と連携し、AWS/Lambda Functionを実行する機能です。
3.3.3.2. ポリシーの作成¶
AWS/Lambda Function連携機能を使用するため、 「AWS/Lambda Function連携機能に必要なアクセス権限」 に示すポリシーを作成して、ユーザーにアクセス権限を付与します。
ジョブ |
必要なアクセス権 |
---|---|
AWS/Lambda Function連携ジョブ |
lambda:InvokeAsync |
3.3.3.3. sj_aws.iniの設定¶
sj_aws.iniファイルは、AWSに関する情報の設定ファイルで、 Job Scheduler for Cloud(AWS/Lambda Function)ジョブはこのファイルを参照します。
設定方法については、Cloud Monitoring の sj_setup_aws - AWS情報設定ファイル更新 - を参照して下さい。
sj_aws.iniに、 「TABLE 3-15 sj_aws.iniの記述内容」 に示す内容を設定して下さい。
項目 |
省略 |
デフォルト |
暗号化対象 |
説明 |
---|---|---|---|---|
accessKey |
可 |
― |
○ |
AWS接続用のアクセスキーID |
secretKey |
可 |
― |
○ |
AWS接続用のシークレットアクセスキー |
省略可能な項目を省略した場合は、Job Scheduler for Cloud(AWS/Lambda Function)ジョブのオプションで指定する必要があります。デフォルトが存在するものに関しては、省略してもデフォルト値で動作します。
同じ項目を、sj_aws.iniとJob Scheduler for Cloud(AWS/Lambda Function)ジョブのオプションの両方で指定した場合は、Job Scheduler for Cloud(AWS/Lambda Function)ジョブのオプションで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい
警告
Senju/DCジョブの起動コマンドには、文字数に制限があります。なるべく各項目は省略せずに、sj_aws.iniファイルに設定して下さい。
3.3.3.4. AWS/Lambda Function連携ジョブの利用方法¶
AWS/Lambda Function連携ジョブは、AWS Management Consoleなどによって作成したAWS/Lambda Functionを実行します。
AWS/Lambda Function連携ジョブが起動されると、引数に指定された内容でAWS/Lambda Functionを実行し、実行結果を標準出力に出力します。
AWS/Lambda Function連携ジョブを起動する際に指定する引数には、以下に示す内容を指定して下さい。
sjPEX_CloudFunctions -m LS
-fnm Lambdaファンクション名
-lreg AWSリージョン
[-ak アクセスキーID] [-sk シークレットアクセスキー]
[-cctf ファンクションパラメータ(JSONファイル名)]
[-p プロファイル名] [-ar ロールARN] [-ei AWS外部ID]
オプション |
省略 |
デフォルト |
長さ |
説明 |
---|---|---|---|---|
-fnm |
不可 |
― |
255 |
Lambdaファンクション名 |
-lreg |
不可 |
― |
32 |
AWSリージョン |
-ak |
可 |
― |
256 |
AWS接続用のアクセスキーID |
-sk |
可 |
― |
256 |
AWS接続用のシークレットアクセスキー |
-cctf |
可 |
― |
255 |
ファンクションパラメータ(JSONファイル名) |
-p |
可 |
― |
255 |
プロファイル名 |
-ar |
可 |
― |
1024 |
ロールARN |
-ei |
可 |
― |
128 |
AWS外部ID |
Senju/DCジョブの起動コマンドの最大文字数は2048文字です。起動コマンドが最大文字数を超える場合は、sj_aws.iniに設定して下さい。
省略可能なオプションを省略した場合は、sj_aws.iniで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい。
3.3.3.4.1. AWS/Lambda Function連携ジョブテンプレートの使い方¶
ジョブテンプレートとは、ジョブの起動コマンドシーケンスのみを持ち、パラメータ値が未決定であるエンティティです。ジョブテンプレートを用いることにより、ジョブの登録のたびにコマンドシーケンスを入力しなくても、必要なパラメータ値を入力するだけでジョブの作成が行えます。 Job Scheduler for CloudをSenju/DCのジョブスケジュール機能と連携するために、Job Scheduler for Cloudジョブを、Senju/DCのジョブの起動コマンドとして設定します。
AWS/Lambda Function連携ジョブテンプレートを使用し、ジョブの起動コマンドとして利用するには、千手ブラウザのツリービューで、<ドメイン>→“ジョブスケジュール”→“ジョブ”を選択し、ジョブの新規作成を行います。
ジョブの新規作成プロパティウィンドで[ジョブテンプレートを使用]チェックボックスをチェックし、[ジョブテンプレート入力]ボタンを押して下さい。
ジョブテンプレート入力ウィンドでAWS/Lambda Function連携ジョブテンプレートを選択し、各パラメータ値を設定して下さい。
パラメータ |
説明 |
---|---|
Lambdaファンクション名 |
Lambda Function名を指定します。省略不可です。 |
AWSリージョン |
AWS/Lambda Function所属のリージョンを指定します。省略不可です。 |
アクセスキーID |
AWS接続用のアクセスキーIDを指定します。 sj_aws.iniで指定している場合は、省略可能です。 |
シークレットアクセスキー |
AWS接続用のシークレットアクセスキーを指定します。 sj_aws.iniで指定している場合は、省略可能です。 |
ファンクションパラメータ(JSONファイル名) |
Lambda Functionへ渡すイベントデータを記載したJSONファイル名を指定します。省略可能です。 |
プロファイル名 |
ロール認証に使用されるプロファイルを指定します。省略可能です。 |
ロールARN |
ロール認証に使用されるロールARNを指定します。省略可能です。 |
AWS外部ID |
ロール認証に使用される外部IDを指定します。省略可能です。 |
3.3.3.4.2. AWS/Lambda Function連携ジョブの処理の流れ(通常時)¶
AWS/Lambda Function連携ジョブがSenju/DCのジョブスケジュールで1つのジョブとして起動されると、 「図 3-17 AWS/Lambda Function連携ジョブの処理の流れ」 および 「TABLE 3-18 AWS/Lambda Function連携ジョブの処理の流れ」 に示す流れで動きます。
Senju/DC ジョブの状態 |
AWS/Lambda Function実行 ジョブの処理内容 |
メッセージモニタの出力 |
---|---|---|
起動待ち |
起動前の状態 |
|
稼働中 |
起動 |
|
稼働中 |
引数に従い、AWS/Lambda上の関数実行 |
|
正常終了 |
AWS/Lambda上の関数実行に成功 |
!PEXC13 AWS/Lambda上の関数実行に成功しました。 |
異常終了 |
AWS/Lambda上の関数実行に失敗 |
!PEXC14 AWS/Lambda上の関数実行に失敗しました。 |
AWS/Lambda Function連携ジョブが起動されると、引数に指定された内容でAWS/Lambda Functionを実行します。
AWS/Lambda上の関数を実行します。
AWS/Lambda Functionが正しく実行されると、関数実行に成功した旨のメッセージを出力し、Senju/DCジョブは正常終了します。
AWS/Lambda Functionが何らかの理由で正しく実行されないと、失敗した旨のメッセージを出力し、Senju/DCジョブは異常終了します。
3.3.3.4.3. AWS/Lambda Function連携ジョブの処理の流れ(強制停止時)¶
AWS/Lambda Function連携ジョブは、他のSenju/DCのジョブと同じく強制停止させることができます。
Senju/DCのジョブスケジュールより、AWS/Lambda Function連携ジョブを強制停止しても、関数実行中のAWS/Lambda Functionは実行されたままとなります。
Senju/DCのジョブスケジュールでは、強制停止されたジョブの状態は異常終了となります。
3.3.4. Job Scheduler for Cloud(AWS/Step Functions)の使い方¶
3.3.4.1. Job Scheduler for Cloud(AWS/Step Functions)の機能¶
Job Scheduler for Cloud(AWS/Step Functions)とは、Senju/DCのジョブスケジュール機能と連携し、AWS/Step Functionsを実行する機能です。
3.3.4.2. ポリシーの作成¶
AWS/Step Functions連携機能を使用するため、 「AWS/Step Functions連携機能に必要なアクセス権限」 に示すポリシーを作成して、ユーザーにアクセス権限を付与します。
ジョブ |
必要なアクセス権 |
---|---|
AWS/Step Functions連携ジョブ |
states:DescribeExecution |
3.3.4.3. sj_aws.iniの設定¶
sj_aws.iniファイルは、AWSに関する情報の設定ファイルで、 Job Scheduler for Cloud(AWS/Step Functions)ジョブはこのファイルを参照します。
設定方法については、Cloud Monitoring の sj_setup_aws - AWS情報設定ファイル更新 - を参照して下さい。
sj_aws.iniに、 「TABLE 3-19 sj_aws.iniの記述内容」 に示す内容を設定して下さい。
項目 |
省略 |
デフォルト |
暗号化対象 |
説明 |
---|---|---|---|---|
accessKey |
可 |
― |
○ |
AWS接続用のアクセスキーID |
secretKey |
可 |
― |
○ |
AWS接続用のシークレットアクセスキー |
region |
不可 |
― |
○ |
AWS接続用のリージョン |
省略可能な項目を省略した場合は、Job Scheduler for Cloud(AWS/Step Functions)ジョブのオプションで指定する必要があります。デフォルトが存在するものに関しては、省略してもデフォルト値で動作します。
同じ項目を、sj_aws.iniとJob Scheduler for Cloud(AWS/Step Functions)ジョブのオプションの両方で指定した場合は、Job Scheduler for Cloud(AWS/Step Functions)ジョブのオプションで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい
警告
Senju/DCジョブの起動コマンドには、文字数に制限があります。なるべく各項目は省略せずに、sj_aws.iniファイルに設定して下さい。
3.3.4.4. AWS/Step Functions連携ジョブの利用方法¶
AWS/Step Functions連携ジョブは、AWS Management Consoleなどによって作成したAWS/Step Functionsを実行します。
AWS/Step Functions連携ジョブが起動されると、引数に指定された内容でAWS/Step Functionsを実行し、実行結果を標準出力に出力します。
AWS/Step Functions連携ジョブを起動する際に指定する引数には、以下に示す内容を指定して下さい。
sjPEX_CloudFunctions -m SF
-smn ステートマシンARN
[-ak アクセスキーID] [-sk シークレットアクセスキー]
[-exn 実行名] [-sync]
[-cctf ファンクションパラメータ(JSONファイル名)]
[-i チェックインターバル]
オプション |
省略 |
デフォルト |
長さ |
説明 |
---|---|---|---|---|
-smn |
不可 |
― |
255 |
ステートマシンARN |
-ak |
可 |
― |
256 |
AWS接続用のアクセスキーID |
-sk |
可 |
― |
256 |
AWS接続用のシークレットアクセスキー |
-exn |
可 |
― |
255 |
実行名 |
-sync |
可 |
― |
― |
同期開始指定オプション |
-cctf |
可 |
― |
255 |
ファンクションパラメータ(JSONファイル名) |
-i |
可 |
60 |
4 |
チェックインターバル(秒) [10-600] |
Senju/DCジョブの起動コマンドの最大文字数は2048文字です。起動コマンドが最大文字数を超える場合は、sj_aws.iniに設定して下さい。
アクセスキーID、シークレットアクセスキーを省略した場合は、sj_aws.iniで指定した値が有効になります。
AWS接続用のアクセスキーIDおよびシークレットアクセスキーは、Amazon Web Servicesのサイトで確認して下さい。
3.3.4.4.1. AWS/Step Functions連携ジョブテンプレートの使い方¶
ジョブテンプレートとは、ジョブの起動コマンドシーケンスのみを持ち、パラメータ値が未決定であるエンティティです。ジョブテンプレートを用いることにより、ジョブの登録のたびにコマンドシーケンスを入力しなくても、必要なパラメータ値を入力するだけでジョブの作成が行えます。 Job Scheduler for CloudをSenju/DCのジョブスケジュール機能と連携するために、Job Scheduler for Cloudジョブを、Senju/DCのジョブの起動コマンドとして設定します。
AWS/Step Functions連携ジョブテンプレートを使用し、ジョブの起動コマンドとして利用するには、千手ブラウザのツリービューで、<ドメイン>→“ジョブスケジュール”→“ジョブ”を選択し、ジョブの新規作成を行います。
ジョブの新規作成プロパティウィンドで[ジョブテンプレートを使用]チェックボックスをチェックし、[ジョブテンプレート入力]ボタンを押して下さい。
ジョブテンプレート入力ウィンドでAWS/Step Functions連携ジョブテンプレートを選択し、各パラメータ値を設定して下さい。
パラメータ |
説明 |
---|---|
アクセスキーID |
AWS接続用のアクセスキーIDを指定します。 sj_aws.iniで指定している場合は、省略可能です。 |
シークレットアクセスキー |
AWS接続用のシークレットアクセスキーを指定します。 sj_aws.iniで指定している場合は、省略可能です。 |
ステートマシンARN |
ステートマシンのARNを指定します。省略不可です。 |
実行名 |
ステートマシンの実行名を指定します。省略可能です。 |
ファンクションパラメータ(JSONファイル名) |
ステートマシンへ渡すパラメータを記載したJSONファイル名を指定します。マルチバイトを含む場合、エンコードはUTF-8にして下さい。省略可能です。 |
同期開始指定(-sync) |
Expressワークフローの結果ステータスを取得したい場合に指定します。省略可能です。 |
interval[sec] |
ワークフローの実行状態取得のチェック間隔[sec]を指定します。省略可能です。 |
3.3.4.4.2. AWS/Step Functions連携ジョブの処理の流れ(通常時)¶
AWS/Step Functions連携ジョブがSenju/DCのジョブスケジュールで1つのジョブとして起動されると、 「図 3-20 AWS/Setp Functions連携ジョブの処理の流れ」 および 「TABLE 3-21 AWS/Step Functions連携ジョブの処理の流れ」 に示す流れで動きます。
Senju/DC ジョブの状態 |
AWS/Step Functions実行 ジョブの処理内容 |
メッセージモニタの出力 |
---|---|---|
起動待ち |
起動前の状態 |
|
稼働中 |
起動 |
|
稼働中 |
引数に従い、AWS/Step Functionsステートマシンを実行 |
|
正常終了 |
AWS/Step Functionsステートマシンの実行に成功 |
!PEXC23 AWS/Step Functionsの実行に成功しました。 |
異常終了 |
AWS/Step Functionsステートマシンの実行に失敗 |
!PEXC24 AWS/Step Functionsの実行に失敗しました。 |
AWS/Step Functions連携ジョブが起動されると、引数に指定された内容でAWS/Step Functionsを実行します。
AWS/Step Functionsステートマシンを実行します。
AWS/Step Functionsステートマシンが正常終了すると、実行に成功した旨のメッセージを出力し、Senju/DCジョブは正常終了します。
AWS/Step Functionsステートマシンが何らかの理由で異常終了すると、実行に失敗した旨のメッセージを出力し、Senju/DCジョブは異常終了します。
3.3.4.4.3. AWS/Step Functions連携ジョブの処理の流れ(強制停止時)¶
AWS/Step Functions連携ジョブは、他のSenju/DCのジョブと同じく強制停止させることができます。
Senju/DCのジョブスケジュールより、AWS/Step Functions連携ジョブを強制停止しても、実行中のAWS/Step Functionsステートマシンは実行されたままとなります。
Senju/DCのジョブスケジュールでは、強制停止されたジョブの状態は異常終了となります。