Scrapy on Lambdaのネットワーク構成と設定
Scrapyプロジェクト on AWS Lambdaのネットワーク構成と必要な設定をメモ。
AWS ネットワーク構成図
Lambda関数をVPC内プライベートサブネットに作成しているため、クローラーのインターネット通信は同VPCのパブリックサブネットに作成したNATゲートウェイ経由でインターネットゲートウェイへ向かわせることで実現。
ルートテーブルの設定
パブリックサブネットのルートテーブル
プライベートサブネットのルートテーブル
Lambdaの実行ロール
Lambda関数の実行ロールには以下のポリシーをアタッチ。
AmazonEC2FullAccess
AWSLambdaVPCAccessExecutionRole
AWSLambdaENIManagementAccess
DBアクセス設定
Lambda関数から同プライベートサブネット内のEC2へ配置したMySQLデータベースへのアクセスは、接続先ホストとしてEC2インスタンスのプライベートIPアドレスを指定する。
(MySQL側で外部ホストからの接続ユーザを作成)