本題
LambdaからS3のドキュメントを取ってくることは簡単だが、LambdaをVPCに所属させることで、S3への通信が不可能になってしまう。
それを回避するためには、以下の2通りの策がある。
- S3 の VPC エンドポイントを利用する
- NAT ゲートウェイを設定する
S3のVPCエンドポイントを作成するほうが簡単であると思ったため、ここではVPCエンドポイントを作成する方法を紹介する。
手順は以下のとおりである。
- VPCの管理コンソールに行く
- エンドポイントを選択し、エンドポイントの作成を行う
- 「サービスカテゴリ」は「AWSサービス」、「サービス名」は「com.amazonaws.ap-northeast-1.s3」、VPCは適用したいVPCを選択し、適当なルートテーブルを選択する、ポリシーはフルアクセスにする
この設定を行うことで、VPCに所属したLambdaからS3に対してアクセスすることができる。