EventBridge ターゲットとしての AWS Batch ジョブ - AWS Batch

EventBridge ターゲットとしての AWS Batch ジョブ

Amazon EventBridge は、Amazon Web Services リソースの変更を示すシステムイベントのほぼリアルタイムのストリームを提供します。通常、Amazon Elastic Container Service、Amazon Elastic Kubernetes Service、および AWS Fargate ジョブにおける AWS Batch は EventBridge のターゲットとして利用できます。簡単なルールを使用して、ルールに一致したイベントに応じて AWS Batch ジョブを送信できます。詳細については、Amazon EventBridge ユーザーガイドのEventBridge とはを参照してください。

EventBridge を使用して、cron や rate 式により特定の時間に自己トリガーする自動アクションをスケジュールすることもできます。詳細については、Amazon EventBridge ユーザーガイドのスケジュールに従って実行する Amazon EventBridge ルールの作成を参照してください。

イベントがイベントパターンに一致したときに実行されるルールを作成する方法については、Amazon EventBridge ユーザーガイドのイベントに反応する Amazon EventBridge ルールの作成を参照してください。

EventBridge ターゲットとなる AWS Batch ジョブの一般的な使用例としては、以下のようなユースケースがあります。

  • スケジュールされたジョブは、一定の時間間隔で発生します。例えば、cron ジョブは、Amazon EC2 スポットインスタンスのコストが低い時間帯にのみ発生します。

  • AWS Batch ジョブは CloudTrail にログインした API オペレーションに応答して実行されます。例えば、指定したAmazon S3 バケットにオブジェクトがアップロードされるたびにジョブが送信されます。そのたびに、EventBridge インプットトランスフォーマーはバケットとオブジェクトのキー名を AWS Batch パラメータに渡します。

    注記

    このシナリオでは、関連する AWS リソースはすべて同じリージョン内に存在する必要があります。これには、Amazon S3 バケット、EventBridge ルール、CloudTrail ログなどのリソースが含まれます。

EventBridge ルールおよびターゲットを使用して AWS Batch ジョブを送信するには、AWS Batch ジョブを実行するアクセス権限が EventBridge サービスに必要です。EventBridge コンソールからAWS Batch ジョブをターゲットとして指定するルールを作成すると、このロールを作成することもできます。このロールに必要なサービスプリンシパルと IAM アクセス権限の詳細については、EventBridge IAM ロールを参照してください。