5

django Lambda 関数内で Aurora Serverless mysql データベースに接続したいと考えています。現在、私は持っています:

  • デフォルト VPC 内の Lambda 関数
    • デフォルトのセキュリティ グループを使用します
    • 作成した 2 つのパブリック サブネットを使用
    • TCP ポート 1024 ~ 65535 からのインバウンド要求を許可します
    • Aurora セキュリティ グループで Aurora/Mysql へのアウトバウンド リクエストを許可します
  • デフォルト VPC 内の Aurora クラスター
    • Lambda と同じ (デフォルト) VPC を使用します
    • 作成した 2 つのプライベート サブネットを使用
    • ポート 3306 で Lambda セキュリティ グループからのインバウンド リクエストを許可する
  • デフォルト VPC のインターネット ゲートウェイ
  • 通信をインターネット ゲートウェイにパイプする NAT ゲートウェイ
  • インターネット ゲートウェイのターゲット ID を持つパブリック ルーティング テーブル
  • NAT ゲートウェイのターゲット ID を持つプライベート ルーティング テーブル

Lambda 関数を API ゲートウェイにデプロイしようとすると、リクエストがタイムアウトします。

START RequestId: [request id] Version: $LATEST
Instancing..
END RequestId: [request id]
REPORT RequestId: [request id]  Duration: 30030.15 ms   Billed Duration: 30000 ms   Memory Size: 512 MB Max Memory Used: 49 MB  
[time] [request id] Task timed out after 30.03 seconds

VPC から Lambda 関数を削除すると (Lambda 関数の設定で VPC を none に設定)、問題なく API ゲートウェイにデプロイされます。これにより、私の問題はデータベースではなく VPC にあると考えるようになりました。

この質問を使用して、VPC を再配置して機能させようとしましたが、機能しませんでした。

API を実行して Aurora サーバーレス クラスターに接続するためのヘルプ、または django と Lambda 関数でデータベースを使用する別の方法についてのヘルプは素晴らしいでしょう。ありがとう!

4

0 に答える 0