📌

AWS BATCH使用時のネットワーク構成

2022/05/23に公開

はじめに

AWSでバッチ処理を行うとなるとLambdaで行うことが多いように感じますが、
Lambdaでのバッチ処理の制限として、実行時間が15分間という制限があります。
業務で、S3へのファイルアップロードをトリガーに実行するバッチ処理を実装する必要があり、そのバッチ処理の時間が15分を必ず超えてしまいました。そのため、Lambdaでバッチ処理を実行することができませんでした。
そこで今回はAWS BATCHを使用して、バッチ処理を実装することに決めました。

システム構成

AWS BATCHを使用してバッチ処理を行う場合、下記の2通りのネットワーク構成になると思います。

  • Public subnetにNAT Gatewayを配置した場合

  • VPC Endpointを使用した場合

基本的に外部のAPIを実行したり、外部のネットワークに接続する以外ではPublic Subnetを使用するのはよくないので今回はVPC Endpointを使用した構成にしようと思います。

ここで注意点なのですが、Batchエンドポイントを立てる際のセキュリティグループのインバウントルールとして443ポートを許可する必要があります。このセキュリティグループをつけないとBatch処理が実行されません。

Discussion