lambdaをvpc内に配置して実行する方法

0

lambdaにalbのターゲットグループを切り替えるコードを記載したものがあります。 lambdaをvpcを設定せず実行すれば関数が実行されて、ターゲットグループが切り替わる処理が行われます。この処理をvpc中で設定する必要があるのですが、vpcを設定すると関数がタイムアウトとなり実行されません。vpc内に配置して関数を実行する方法を教えていただきたいです。

1回答
0

VPCからパブリックにAWS APIを実行するためのルートが無いとタイムアウトになります。
対応方法としては以下の2通りあります。

  1. Lambdaを紐づけたサブネットにNAT Gateway経由のルートを追加する
  2. VPCエンドポイントを設定する

以前私が共有したコードを使用している場合はVPCエンドポイントは以下のEC2とELB用のものを追加すれば問題無いと思います。
後はVPCエンドポイントのセキュリティグループでLambdaのセキュリティグループからHTTPSを許可するようにすることで解決できると思います。
https://docs.aws.amazon.com/ja_jp/elasticloadbalancing/latest/userguide/load-balancer-vpc-endpoints.html https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/interface-vpc-endpoints.html

profile picture
エキスパート
回答済み 3ヶ月前
  • NATについてはセキュリティの関係上、使用できず、エンドポイントを使用しており、上記の設定をしましたが、エラーとなりました。サブネットについてはプライベート環境です。

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ